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:

      diff --git a/docs/lesson/regular-expressions-regex.html b/docs/lesson/regular-expressions-regex.html index 3d77ca3db..9721d9b1c 100644 --- a/docs/lesson/regular-expressions-regex.html +++ b/docs/lesson/regular-expressions-regex.html @@ -161,19 +161,16 @@

      Exercise

      Try to combine regular expressions with grep and search through some files.

       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

      1. First, systemd loads it's configuration files, usually located in /etc/systemd/system or /usr/lib/systemd/system
      2. Then it determines its boot goal, which is usually default.target
      3. -
      4. 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: