From e4918a80c305973205cf6eb832f8a3a5639dea4e Mon Sep 17 00:00:00 2001
From: wdecoster
Date: Mon, 10 Aug 2026 21:24:16 +0200
Subject: [PATCH 1/3] Fix broken markup and a missing quiz answer in six
lessons
All six are mechanical defects visible on the published site:
- rm: the lesson asks "How do you remove a file called myfile?" but the
Quiz Answer section was empty, so the answer panel rendered blank.
- regex: an unclosed in the Exercise swallowed both the Quiz
Question and the Quiz Answer into the code block. src/main.py then
found no Quiz Question
to split on, so the quiz panel
rendered as a stray ">" and the page HTML came out malformed
("
").
- umask: was opened twice and never closed, breaking the exercise list.
- boot-process-bootloader: missing on the initrd item.
- systemd-overview: "" typo instead of "".
- modifying-permissions: "chmod ug+w" had no filename, so the example
command as printed just errors.
Generated files were rebuilt with the repo's own pipeline rather than
hand-edited: src/convert.py's converter for the lesson HTML, and the
src/main.py split rules plus templates/lesson.html layout for the docs
pages. Both were verified to reproduce untouched sibling lessons
byte-for-byte first, so the diffs contain only these fixes.
Co-Authored-By: Claude Opus 5
Claude-Session: https://claude.ai/code/session_01UJFZrUGJ44ozsCe9qqw6bp
---
docs/lesson/boot-process-bootloader.html | 4 ++--
docs/lesson/modifying-permissions.html | 2 +-
docs/lesson/regular-expressions-regex.html | 15 ++++++---------
docs/lesson/remove-rm-command.html | 1 +
docs/lesson/systemd-overview.html | 4 ++--
docs/lesson/umask.html | 16 ++++++----------
.../02-command-line/13-remove-rm-command.html | 1 +
.../02-command-line/13-remove-rm-command.md | 4 +++-
.../01-regular-expressions-regex.html | 12 +++++-------
.../01-regular-expressions-regex.md | 1 +
.../06-access/02-modifying-permissions.html | 2 +-
.../06-access/02-modifying-permissions.md | 2 +-
.../locales/en_english/06-access/04-umask.html | 13 +++++--------
lessons/locales/en_english/06-access/04-umask.md | 2 +-
.../11-booting/03-boot-process-bootloader.html | 2 +-
.../11-booting/03-boot-process-bootloader.md | 2 +-
.../en_english/13-init/05-systemd-overview.html | 2 +-
.../en_english/13-init/05-systemd-overview.md | 2 +-
18 files changed, 40 insertions(+), 47 deletions(-)
diff --git a/docs/lesson/boot-process-bootloader.html b/docs/lesson/boot-process-bootloader.html
index 4f9b5b03b..035d9027c 100644
--- a/docs/lesson/boot-process-bootloader.html
+++ b/docs/lesson/boot-process-bootloader.html
@@ -76,13 +76,13 @@ Boot Process: Bootloader
The most common bootloader for Linux is GRUB, you are most likely using it on your system. There are many other bootloaders that you can use such as LILO, efilinux, coreboot, SYSLINUX and more. However, we will just be working with GRUB as our bootloader.
So we know that the bootloader's main goal is to load up the kernel, but where does it find the kernel? To find it, we will need to look at our kernel parameters. The parameters can be found by going into the GRUB menu on startup using the 'e' key. If you don't have GRUB no worries, we'll go through the boot parameters that you will see:
-- initrd - Specifies the location of initial RAM disk (we'll talk more about this in the next lesson).
+
- initrd - Specifies the location of initial RAM disk (we'll talk more about this in the next lesson).
- BOOT_IMAGE - This is where the kernel image is located
- root - The location of the root filesystem, the kernel searches inside this location to find init. It is often represented by it's UUID or the device name such as /dev/sda1.
- ro - This parameter is pretty standard, it mounts the fileystem as read-only mode.
- quiet - This is added so that you don't see display messages that are going on in the background during boot.
- splash - This lets the splash screen be shown.
-
+
diff --git a/docs/lesson/modifying-permissions.html b/docs/lesson/modifying-permissions.html
index a744667b1..1b605c473 100644
--- a/docs/lesson/modifying-permissions.html
+++ b/docs/lesson/modifying-permissions.html
@@ -90,7 +90,7 @@ Modifying Permissions
Removing permission bit on a file
$ chmod u-x myfile
Adding multiple permission bits on a file
-
$ chmod ug+w
+$ chmod ug+w myfile
There is another way to change permissions using numerical format. This method allows you to change permissions all at once. Instead of using r, w, or x to represent permissions, you'll use a numerical representation for a single permission set. So no need to specify the group with g or the user with u.
The numerical representations are seen below:
grep [regular expression here] [file]
+
-## Quiz Question
-
-What regular expression would you use to match a single character?
-
-## Quiz Answer
-
-.
-
- >
+
Quiz Question
+
What regular expression would you use to match a single character?
+
Quiz Answer
+
.
+
diff --git a/docs/lesson/remove-rm-command.html b/docs/lesson/remove-rm-command.html
index 950389f00..dcb6b9eb1 100644
--- a/docs/lesson/remove-rm-command.html
+++ b/docs/lesson/remove-rm-command.html
@@ -168,6 +168,7 @@ Exercise
Quiz Question
How do you remove a file called myfile?
Quiz Answer
+rm myfile
diff --git a/docs/lesson/systemd-overview.html b/docs/lesson/systemd-overview.html
index 0c570ed67..d1843735d 100644
--- a/docs/lesson/systemd-overview.html
+++ b/docs/lesson/systemd-overview.html
@@ -82,8 +82,8 @@ Systemd Overview
- First, systemd loads it's configuration files, usually located in /etc/systemd/system or /usr/lib/systemd/system
- Then it determines its boot goal, which is usually default.target
-- Systemd figures out the dependencies of the boot target and activates them
-
+Systemd figures out the dependencies of the boot target and activates them
+
Similar to Sys V runlevels, systemd boots into different targets:
- poweroff.target - shutdown system
diff --git a/docs/lesson/umask.html b/docs/lesson/umask.html
index 088dfe532..78a2fb8d1 100644
--- a/docs/lesson/umask.html
+++ b/docs/lesson/umask.html
@@ -98,20 +98,16 @@ Exercise
- Create a new file, then note it's permissions.
- Modify the umask and then create another new file.
- Check the permissions once more on the new file, what do you expect to see?
-
-
-## Quiz Question
-
-What command is used to change default file permissions?
-
-## Quiz Answer
+
-umask
-
- >
+
Quiz Question
+
What command is used to change default file permissions?
+
Quiz Answer
+
umask
+
diff --git a/lessons/locales/en_english/02-command-line/13-remove-rm-command.html b/lessons/locales/en_english/02-command-line/13-remove-rm-command.html
index 552bca5e3..75decc3c0 100644
--- a/lessons/locales/en_english/02-command-line/13-remove-rm-command.html
+++ b/lessons/locales/en_english/02-command-line/13-remove-rm-command.html
@@ -900,6 +900,7 @@ Exercise
Quiz Question
How do you remove a file called myfile?
Quiz Answer
+rm myfile