Index: INSTALL
===================================================================
--- INSTALL	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ INSTALL	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -1,10 +1,10 @@
 LFS Book Conversion Tools Installation Instructions
 
-After downloading the SVN source, there are some things that need to be set up 
-on your computer if you want to convert the XML source into something easier to 
-read (e.g. HTML, TXT, or PDF).  If you are interested in this, then keep 
-reading.  If you are only interested in editing the XML source for re- 
-submission to the lfs-book or lfs-dev mailing lists, then you do not need this 
-document.  Instead, you need to read the LFS Editor's Manual.  See the LFS 
+After downloading the SVN source, there are some things that need to be set up
+on your computer if you want to convert the XML source into something easier to
+read (e.g. HTML, TXT, or PDF).  If you are interested in this, then keep
+reading.  If you are only interested in editing the XML source for re-
+submission to the lfs-book or lfs-dev mailing lists, then you do not need this
+document.  Instead, you need to read the LFS Editor's Manual.  See the LFS
 website at https://www.linuxfromscratch.org for more information.
 
@@ -19,8 +19,8 @@
   - https://www.linuxfromscratch.org/blfs/view/svn/general/libxslt.html
 
-* DocBook DTD 
+* DocBook DTD
   - https://www.linuxfromscratch.org/blfs/view/svn/pst/xml.html
 
-* DocBook XSL Stylesheets 
+* DocBook XSL Stylesheets
   - https://www.linuxfromscratch.org/blfs/view/svn/pst/docbook-xsl.html
 
@@ -28,5 +28,5 @@
   - https://www.linuxfromscratch.org/blfs/view/svn/general/tidy-html5.html
 
-------------------------------------------------------------------------------- 
+-------------------------------------------------------------------------------
 
 If you want to convert the XML to TXT, install the above items, and then install
@@ -36,5 +36,5 @@
   - https://www.linuxfromscratch.org/blfs/view/svn/basicnet/lynx.html
 
-------------------------------------------------------------------------------- 
+-------------------------------------------------------------------------------
 
 If you want to convert the XML to PDF, install the items listed above (except
Index: Makefile
===================================================================
--- Makefile	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ Makefile	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -158,5 +158,5 @@
 	@echo "Validation complete."
 
-profile-html: 
+profile-html:
 	@echo "Generating profiled XML for XHTML..."
 	$(Q)xsltproc --nonet                              \
Index: README
===================================================================
--- README	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ README	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -1,6 +1,6 @@
 LFS Book README
 
-This document is meant to instruct the user on how to convert the book's XML 
-source to other formats (e.g. HTML, PDF, PS and TXT).  First, if you have not 
+This document is meant to instruct the user on how to convert the book's XML
+source to other formats (e.g. HTML, PDF, PS and TXT).  First, if you have not
 already done so, please read the INSTALL file for instructions on how to install
 the required software.  If you have already completed the steps outlined in the
@@ -8,5 +8,5 @@
 various other formats.
 
-In all examples, setting the parameter REV=systemd is needed to build the 
+In all examples, setting the parameter REV=systemd is needed to build the
 systemd version of the book.
 
Index: appendices/acknowledgments.xml
===================================================================
--- appendices/acknowledgments.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ appendices/acknowledgments.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -76,5 +76,5 @@
 
     <listitem>
-      <para><ulink url="mailto:jmengual@linuxfromscratch.org">Jean-Philippe 
+      <para><ulink url="mailto:jmengual@linuxfromscratch.org">Jean-Philippe
       Mengual </ulink> &lt;jmengual@linuxfromscratch.org&gt; &ndash; French LFS
       translation project 2008-2016</para>
@@ -82,5 +82,5 @@
 
     <listitem>
-      <para><ulink url="mailto:jlepiller@linuxfromscratch.org">Julien 
+      <para><ulink url="mailto:jlepiller@linuxfromscratch.org">Julien
       Lepiller </ulink> &lt;jlepiller@linuxfromscratch.org&gt; &ndash; French LFS
       translation project 2017-present</para>
@@ -100,5 +100,5 @@
 
     <listitem>
-      <para><ulink url="mailto:info@linuxfromscratch.org.ru">Anton Maisak</ulink> 
+      <para><ulink url="mailto:info@linuxfromscratch.org.ru">Anton Maisak</ulink>
       &lt;info@linuxfromscratch.org.ru&gt; &ndash; Russian LFS
       translation project</para>
@@ -106,5 +106,5 @@
 
     <listitem>
-      <para><ulink url="mailto:helen@linuxfromscratch.org.ru">Elena Shevcova</ulink> 
+      <para><ulink url="mailto:helen@linuxfromscratch.org.ru">Elena Shevcova</ulink>
       &lt;helen@linuxfromscratch.org.ru&gt; &ndash; Russian LFS
       translation project</para>
Index: appendices/dependencies.xml
===================================================================
--- appendices/dependencies.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ appendices/dependencies.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -473,5 +473,5 @@
           <seg>
             <ulink url="https://metacpan.org/pod/Expect">Expect.pm</ulink>
-            and 
+            and
             <ulink url="https://metacpan.org/pod/IO::Tty">IO::Tty</ulink>
           </seg>
@@ -748,5 +748,5 @@
           <seg>
             <ulink url="&blfs-book;general/tk.html">Tk</ulink>
-          </seg>  
+          </seg>
         </seglistitem>
       </segmentedlist>
@@ -951,5 +951,5 @@
              <ulink url="http://gcc.gnu.org/wiki/GNAT">GNAT</ulink>
              and
-             <ulink url="https://repo.or.cz/isl.git">ISL</ulink> 
+             <ulink url="https://repo.or.cz/isl.git">ISL</ulink>
           </seg>
         </seglistitem>
@@ -2557,5 +2557,4 @@
         </seglistitem>
       </segmentedlist>
-        
 
       <segmentedlist id="python-testdeps">
Index: bootscripts/ChangeLog
===================================================================
--- bootscripts/ChangeLog	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/ChangeLog	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -7,5 +7,5 @@
 
 2021-04-28 Bruce Dubbs <bdubbs@linuxfromscratch.org>
-   * Make check_signal more robust. 
+   * Make check_signal more robust.
    * Use a better methog for killproc to remove a dead pid file.
    * Clarify what signals killproc accepts.
@@ -85,5 +85,5 @@
    * Remove local attribue of some variables for Bourne
      shell compatability
-   * Specify /bin/echo in commands with -e switch for 
+   * Specify /bin/echo in commands with -e switch for
      Bourne shell compatability
 
@@ -122,5 +122,5 @@
    ** Updated ifup.8 to reflect current usage
    ** ifup
-   *** Move interface up logic to after service scripts.  Eliminates the 
+   *** Move interface up logic to after service scripts.  Eliminates the
        need for the LINK_CHECK variable.
    *** Sets the GATEWAY if the variable is set
@@ -168,8 +168,8 @@
    * Create convenience symlink /etc/init.d->/etc/rc.d/init.d.
    * Add help and man pages to upup/ifdown.
-   * Append /run/var/bootlog to /var/log/boot.log at the end of 
+   * Append /run/var/bootlog to /var/log/boot.log at the end of
      the boot sequence.
    * Add capabiltiy to step through the boot scripts at boot time
-   * Optionally allow environment variables in sysconfig directory's 
+   * Optionally allow environment variables in sysconfig directory's
      console, network, and clock files to be placed in rc.site.
    * Add an optional FASTBOOT parameter to set /fastboot when rebooting.
@@ -184,9 +184,9 @@
    ** Add /etc/sysconfig/init_params for adding environmental parameters
       to all functions used in bootscripts
-   ** Move network configuration to /etc/sysconfig/ifconfig.*.  The 
-      ifconfig files can have any extension.  Use IFACE parameter to 
+   ** Move network configuration to /etc/sysconfig/ifconfig.*.  The
+      ifconfig files can have any extension.  Use IFACE parameter to
       specify the target network interface within the configuration file.
-   ** Adds an optional parameter, SKIPTMPCLEAN, to skip the removal of 
-      files in /tmp at bootup.  Specify the variable in 
+   ** Adds an optional parameter, SKIPTMPCLEAN, to skip the removal of
+      files in /tmp at bootup.  Specify the variable in
       /etc/sysconfig/init_params.
 
@@ -224,6 +224,6 @@
 2009-01-02  Bruce Dubbs <bdubbs@linuxfromscratch.org>
    * lfs/init.d/functions:
-   * lfs/sysconfig/network-devices/ifup: 
-     Updated line widths to accommodate pdf generation in both the above 
+   * lfs/sysconfig/network-devices/ifup:
+     Updated line widths to accommodate pdf generation in both the above
      files.
 
@@ -342,5 +342,5 @@
 n/a - June 2, 2006
    * Removed console config file and makefile targets.
-   * Removed references to /dev/bug and bugreport in udevand 
+   * Removed references to /dev/bug and bugreport in udev and
      udev_retry bootscripts. (DJ Lucas)
 
@@ -351,11 +351,11 @@
 
 n/a - April 15, 2006
-   * Cleaned up contrib directory.  Removed: contrib/init.d, 
-     contrib/enhanced, contrib/livecd, contrib/hotplug, and raq2 
+   * Cleaned up contrib directory.  Removed: contrib/init.d,
+     contrib/enhanced, contrib/livecd, contrib/hotplug, and raq2
      patch. (DJ Lucas)
 
 n/a - April 14, 2006
    * Merged changes from udev_update branch (DJ Lucas)
-   * Replaced a return with an exit and reversed comment changes in 
+   * Replaced a return with an exit and reversed comment changes in
      udev bootscript. (Dan Nicholson)
    * Replaced walk_sysfs function in udev bootscript with new udevtrigger
@@ -370,5 +370,5 @@
 
 n/a - March 10, 2006
-   * Moved src argument to ipv4-static-route service script and 
+   * Moved src argument to ipv4-static-route service script and
      removed from ipv4-static service script. (DJ Lucas)
 
@@ -389,11 +389,11 @@
    * Made above killproc/print_status changes in enhanced
      bootscripts.
-   * Made logger service configurable in enhanced 
+   * Made logger service configurable in enhanced
      bootscripts. (DJ Lucas)
 
 n/a - August 14, 2005
-   * Added -s flag to pidofproc() for backwards 
+   * Added -s flag to pidofproc() for backwards
      compatibility (DJ Lucas)
-   * Fixed erronous values returned by pidofproc() which 
+   * Fixed erronous values returned by pidofproc() which
      broke the functionality of statusproc (DJ Lucas)
 
@@ -403,6 +403,6 @@
 
 n/a - June 26, 2005
-   * Removed consolelog script from contrib 
-   * Updated interactive rc script in contrib and added 
+   * Removed consolelog script from contrib
+   * Updated interactive rc script in contrib and added
      README.rc-Interactive, added install target to the
      Makefile. (DJ Lucas)
@@ -600,5 +600,5 @@
 n/a - September 21, 2004
    * boot_mesg has been enhanced.  Subsequent calls will overwrite
-     previous text, and it will wrap text basedupon the variable ${WCOL}. 
+     previous text, and it will wrap text basedupon the variable ${WCOL}.
      (James Robertson)
    * Fixed mtu optional service typo (Kevin P Fleming)
@@ -609,5 +609,5 @@
 
 n/a - September 15, 2004
-   * Added blue bracket, from dj's 3.0-pre1 bootscript package 
+   * Added blue bracket, from dj's 3.0-pre1 bootscript package
      [echo_failure, echo_warning, and echo_ok]
    * Added a new function called boot_mesg, meant to replace the echo
@@ -633,9 +633,8 @@
 
 n/a - August 4, 2004
-   * Added MODE, DIRMODE, and CONFMODE variables to the makefile 
+   * Added MODE, DIRMODE, and CONFMODE variables to the makefile
      to allow permissions to be set at install. (DJ)
 
 n/a - July 31, 2004
-   
    * Moved PIDFILE check to getpids and removed arguments from
      killproc and reloadproc.  Signals are now set at beginning of
@@ -646,5 +645,5 @@
 n/a - July 21, 2004
 
-   * Committed DJ Lucas's patch for the killproc function.  It no 
+   * Committed DJ Lucas's patch for the killproc function.  It no
      longer requires arguments if PIDFILE is set
    * added --backup to all sysconfig configuration files, so they are not
@@ -979,5 +978,5 @@
    * Changed service script install targets to use
      create-service-dir
-   * Added check for dhcpcd service script for stale pid file 
+   * Added check for dhcpcd service script for stale pid file
      Suggested by Jeremy
    * Added ifconfig to ipx service script for hosting device not up
Index: bootscripts/Makefile
===================================================================
--- bootscripts/Makefile	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/Makefile	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -30,5 +30,5 @@
 	ln -sfn       rc.d/init.d ${ETCDIR}/init.d
 
-files: create-dirs 
+files: create-dirs
 	install -m ${MODE} lfs/init.d/checkfs       ${ETCDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/cleanfs       ${ETCDIR}/rc.d/init.d/
@@ -127,5 +127,5 @@
 	rm -rf ${DESTDIR}/lib/services ${DESTDIR}/lib/lsb ${ETCDIR}/rc.d ${ETCDIR}/init.d \
           ${SBIN}/ifup ${SBIN}/ifdown ${MAN8}/ifup.8 ${MAN8}/ifdown.8 \
-          ${ETCDIR}/sysconfig/rc 
+          ${ETCDIR}/sysconfig/rc
 
 .PHONY: all create-dirs install files links rcS rc0 rc1 rc2 rc3 rc4 rc5 rc6 uninstall
Index: bootscripts/README
===================================================================
--- bootscripts/README	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/README	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -49,5 +49,5 @@
       - SKIPTMPCLEAN: skips cleaning of /tmp directory
 
-      /etc/sysconfig/createfiles 
+      /etc/sysconfig/createfiles
          Each line is parsed, using space as a deliminator.
          [NAME] [TYPE] [PERMISSIONS] [USER] [GROUP]
Index: bootscripts/lfs/init.d/checkfs
===================================================================
--- bootscripts/lfs/init.d/checkfs	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/checkfs	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -62,5 +62,5 @@
          log_failure_msg "${msg}"
 
-         log_info_msg "Press Enter to continue..." 
+         log_info_msg "Press Enter to continue..."
          wait_for_user
          /etc/rc.d/init.d/halt stop
@@ -70,5 +70,5 @@
 
       if [ -f /forcefsck ]; then
-         msg="/forcefsck found, forcing file" 
+         msg="/forcefsck found, forcing file"
          msg="${msg} system checks as requested."
          log_success_msg "$msg"
@@ -109,5 +109,5 @@
          log_failure_msg "$msg"
 
-         log_info_msg "Press Enter to continue..." 
+         log_info_msg "Press Enter to continue..."
          wait_for_user
          reboot -f
@@ -126,5 +126,5 @@
          log_failure_msg "$msg"
 
-         log_info_msg "Press Enter to continue..." 
+         log_info_msg "Press Enter to continue..."
          wait_for_user
          /etc/rc.d/init.d/halt stop
Index: bootscripts/lfs/init.d/cleanfs
===================================================================
--- bootscripts/lfs/init.d/cleanfs	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/cleanfs	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -23,5 +23,5 @@
 # Short-Description:   Cleans temporary directories early in the boot process.
 # Description:         Cleans temporary directories /run, /var/lock, and
-#                      optionally, /tmp.  cleanfs also creates /run/utmp 
+#                      optionally, /tmp.  cleanfs also creates /run/utmp
 #                      and any files defined in /etc/sysconfig/createfiles.
 # X-LFS-Provided-By:   LFS
@@ -31,5 +31,5 @@
 
 # Function to create files/directory on boot.
-create_files() 
+create_files()
 {
    # Input to file descriptor 9 and output to stdin (redirection)
@@ -64,11 +64,11 @@
                      mknod "${name}" p
                      ;;
-                  *) 
-                     log_warning_msg "\nUnknown device type: ${dtype}" 
+                  *)
+                     log_warning_msg "\nUnknown device type: ${dtype}"
                      ;;
                esac
                ;;
             *)
-               log_warning_msg "\nUnknown type: ${type}" 
+               log_warning_msg "\nUnknown type: ${type}"
                continue
                ;;
@@ -88,8 +88,8 @@
 case "${1}" in
    start)
-      log_info_msg "Cleaning file systems:" 
+      log_info_msg "Cleaning file systems:"
 
       if [ "${SKIPTMPCLEAN}" = "" ]; then
-         log_info_msg2 " /tmp" 
+         log_info_msg2 " /tmp"
          cd /tmp &&
          find . -xdev -mindepth 1 ! -name lost+found -delete || failed=1
Index: bootscripts/lfs/init.d/console
===================================================================
--- bootscripts/lfs/init.d/console	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/console	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -33,5 +33,5 @@
 [ -r /etc/sysconfig/console ] && . /etc/sysconfig/console
 
-is_true() 
+is_true()
 {
    [ "$1" = "1" ] || [ "$1" = "yes" ] || [ "$1" = "true" ]
@@ -44,6 +44,6 @@
       # See if we need to do anything
       if [ -z "${KEYMAP}"         ] && [ -z "${KEYMAP_CORRECTIONS}" ] &&
-         [ -z "${FONT}"           ] && [ -z "${LEGACY_CHARSET}"     ] &&     
-         ! is_true "${UNICODE}"; then 
+         [ -z "${FONT}"           ] && [ -z "${LEGACY_CHARSET}"     ] &&
+         ! is_true "${UNICODE}"; then
          exit 0
       fi
@@ -86,5 +86,5 @@
          loadkeys ${KEYMAP} >/dev/null 2>&1 ||
          failed=1
-      
+
       [ -z "${KEYMAP_CORRECTIONS}" ] ||
          loadkeys ${KEYMAP_CORRECTIONS} >/dev/null 2>&1 ||
@@ -98,14 +98,14 @@
       # If any of the commands above failed, the trap at the
       # top would set $failed to 1
-      ( exit $failed ) 
+      ( exit $failed )
       evaluate_retval
 
       exit $failed
-      ;;              
+      ;;
 
-   *)                 
+   *)
       echo "Usage:  ${0} {start}"
-      exit 1          
-      ;;              
+      exit 1
+      ;;
 esac
 
Index: bootscripts/lfs/init.d/modules
===================================================================
--- bootscripts/lfs/init.d/modules	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/modules	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -38,5 +38,5 @@
       egrep -qv '^($|#)' /etc/sysconfig/modules || exit 0
 
-      log_info_msg "Loading modules:" 
+      log_info_msg "Loading modules:"
 
       # Only try to load modules if the user has actually given us
@@ -55,5 +55,5 @@
          # Print the module name if successful, otherwise take note.
          if [ $? -eq 0 ]; then
-            log_info_msg2 " ${module}" 
+            log_info_msg2 " ${module}"
          else
             failedmod="${failedmod} ${module}"
@@ -64,8 +64,8 @@
       log_success_msg2
 
-      # Print a failure message with a list of any modules that 
+      # Print a failure message with a list of any modules that
       # may have failed to load.
       if [ -n "${failedmod}" ]; then
-         log_failure_msg "Failed to load modules:${failedmod}" 
+         log_failure_msg "Failed to load modules:${failedmod}"
          exit 1
       fi
Index: bootscripts/lfs/init.d/mountvirtfs
===================================================================
--- bootscripts/lfs/init.d/mountvirtfs	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/mountvirtfs	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -40,5 +40,5 @@
       chmod 1777 /run/shm /run/lock
 
-      log_info_msg "Mounting virtual file systems: ${INFO}/run" 
+      log_info_msg "Mounting virtual file systems: ${INFO}/run"
 
       if ! mountpoint /proc >/dev/null; then
@@ -48,15 +48,15 @@
 
       if ! mountpoint /sys >/dev/null; then
-         log_info_msg2 " ${INFO}/sys" 
+         log_info_msg2 " ${INFO}/sys"
          mount -o nosuid,noexec,nodev /sys || failed=1
       fi
 
       if ! mountpoint /dev >/dev/null; then
-         log_info_msg2 " ${INFO}/dev" 
+         log_info_msg2 " ${INFO}/dev"
          mount -o mode=0755,nosuid /dev  || failed=1
       fi
 
       ln -sfn /run/shm /dev/shm
-      
+
       (exit ${failed})
       evaluate_retval
Index: bootscripts/lfs/init.d/network
===================================================================
--- bootscripts/lfs/init.d/network	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/network	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -44,5 +44,5 @@
    stop)
       # Unmount any network mounted file systems
-       umount --all --force --types nfs,cifs,nfs4 
+       umount --all --force --types nfs,cifs,nfs4
 
       # Reverse list
Index: bootscripts/lfs/init.d/rc
===================================================================
--- bootscripts/lfs/init.d/rc	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/rc	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -19,9 +19,9 @@
    log_failure_msg
    # $i is set when called
-   MSG="FAILURE:\n\nYou should not be reading this error message.\n\n" 
+   MSG="FAILURE:\n\nYou should not be reading this error message.\n\n"
    MSG="${MSG}It means that an unforeseen error took place in\n"
    MSG="${MSG}${i},\n"
    MSG="${MSG}which exited with a return value of ${error_value}.\n"
-  
+
    MSG="${MSG}If you're able to track this error down to a bug in one of\n"
    MSG="${MSG}the files provided by the ${DISTRO_MINI} book,\n"
@@ -37,5 +37,5 @@
    # $i is set when called
    if [ ! -f ${i} ]; then
-      log_warning_msg "${i} is not a valid symlink." 
+      log_warning_msg "${i} is not a valid symlink."
       SCRIPT_STAT="1"
    fi
@@ -103,5 +103,5 @@
 
 if [ ! -d /etc/rc.d/rc${runlevel}.d ]; then
-   log_info_msg "/etc/rc.d/rc${runlevel}.d does not exist.\n" 
+   log_info_msg "/etc/rc.d/rc${runlevel}.d does not exist.\n"
    exit 1
 fi
@@ -110,7 +110,7 @@
 
 # Note: In ${LOGLEVEL:-7}, it is ':' 'dash' '7', not minus 7
-if [ "$runlevel" == "S" ]; then 
-   [ -r /etc/sysconfig/console ] && source /etc/sysconfig/console 
-   dmesg -n "${LOGLEVEL:-7}" 
+if [ "$runlevel" == "S" ]; then
+   [ -r /etc/sysconfig/console ] && source /etc/sysconfig/console
+   dmesg -n "${LOGLEVEL:-7}"
 fi
 
@@ -226,8 +226,8 @@
 if [ "${previous}" == "N" -a  "${runlevel}" != "S" ]; then
    cat $BOOTLOG >> /var/log/boot.log
-      
+
    # Mark the end of boot
    echo "--------" >> /var/log/boot.log
-   
+
    # Remove the temporary file
    rm -f $BOOTLOG 2> /dev/null
Index: bootscripts/lfs/init.d/setclock
===================================================================
--- bootscripts/lfs/init.d/setclock	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/setclock	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -14,5 +14,5 @@
 
 ### BEGIN INIT INFO
-# Provides:            
+# Provides:
 # Required-Start:
 # Should-Start:        modules
Index: bootscripts/lfs/init.d/swap
===================================================================
--- bootscripts/lfs/init.d/swap	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/swap	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -49,5 +49,5 @@
 
    status)
-      log_success_msg "Retrieving swap status." 
+      log_success_msg "Retrieving swap status."
       swapon -s
       ;;
Index: bootscripts/lfs/init.d/udev
===================================================================
--- bootscripts/lfs/init.d/udev	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/udev	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -61,7 +61,7 @@
       # If any LVM based partitions are on the system, ensure they
       # are activated so they can be used.
-      if [ -x /sbin/vgchange ]; then /sbin/vgchange -a y >/dev/null; fi 
+      if [ -x /sbin/vgchange ]; then /sbin/vgchange -a y >/dev/null; fi
 
-      log_success_msg2 
+      log_success_msg2
       ;;
 
Index: bootscripts/lfs/init.d/udev_retry
===================================================================
--- bootscripts/lfs/init.d/udev_retry	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/init.d/udev_retry	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -8,5 +8,5 @@
 #               DJ Lucas - dj@linuxfromscratch.org
 # Update      : Bruce Dubbs - bdubbs@linuxfromscratch.org
-#               Bryan Kadzban - 
+#               Bryan Kadzban -
 #
 # Version     : LFS 7.0
@@ -40,5 +40,5 @@
       # From Debian: "copy the rules generated before / was mounted
       # read-write":
-    
+
       for file in ${rundir}/tmp-rules--*; do
          dest=${file##*tmp-rules--}
@@ -48,5 +48,5 @@
       done
 
-      # Re-trigger the uevents that may have failed, 
+      # Re-trigger the uevents that may have failed,
       # in hope they will succeed now
       /bin/sed -e 's/#.*$//' /etc/sysconfig/udev_retry | /bin/grep -v '^$' | \
Index: bootscripts/lfs/lib/services/init-functions
===================================================================
--- bootscripts/lfs/lib/services/init-functions	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/lib/services/init-functions	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -1,5 +1,5 @@
 #!/bin/sh
 ########################################################################
-# 
+#
 # Begin /lib/lsb/init-funtions
 #
@@ -155,5 +155,5 @@
         fi
 
-        # Return a value ONLY 
+        # Return a value ONLY
         # It is the init script's (or distribution's functions) responsibilty
         # to log messages!
@@ -161,5 +161,5 @@
 
             0)
-                # Program is already running correctly, this is a 
+                # Program is already running correctly, this is a
                 # successful start.
                 return 0
@@ -231,5 +231,5 @@
                 shift 2
                 ;;
- 
+
              *)
                  program="${1}"
@@ -244,7 +244,7 @@
                  if [ -n "${3}" ]; then
                      return 2
-                 else 
+                 else
                      break
-                 fi                 
+                 fi
                  ;;
         esac
@@ -322,5 +322,5 @@
     if [ "${?}" -eq "0" ]; then # Signal is used to terminate the program
 
-        # Account for empty pidlist (pid file still exists and no 
+        # Account for empty pidlist (pid file still exists and no
         # signal was given)
         if [ "${pidlist}" != "" ]; then
@@ -337,5 +337,5 @@
                     kill "${signal}" "${pid}" 2> /dev/null
 
-                    # Wait up to ${delay}/10 seconds to for "${pid}" to 
+                    # Wait up to ${delay}/10 seconds to for "${pid}" to
                     # terminate in 10ths of a second
 
@@ -434,5 +434,5 @@
         prefix=`echo "${program}" | sed 's/[^/]*$//'`
 
-        if [ -z "${prefix}" ]; then 
+        if [ -z "${prefix}" ]; then
            progname="${program}"
         else
@@ -584,5 +584,5 @@
     timespec
     /bin/echo -e "${STAMP} ${logmessage} OK" >> ${BOOTLOG}
-    
+
     return 0
 }
@@ -594,5 +594,5 @@
 
     echo " OK" >> ${BOOTLOG}
-    
+
     return 0
 }
@@ -619,5 +619,5 @@
     logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
     /bin/echo -e "${STAMP} ${logmessage} FAIL" >> ${BOOTLOG}
-    
+
     return 0
 }
@@ -629,5 +629,5 @@
 
     echo "FAIL" >> ${BOOTLOG}
-    
+
     return 0
 }
@@ -651,5 +651,5 @@
     timespec
     /bin/echo -e "${STAMP} ${logmessage} WARN" >> ${BOOTLOG}
-    
+
     return 0
 }
@@ -663,5 +663,5 @@
     logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
     /bin/echo "SKIP" >> ${BOOTLOG}
-    
+
     return 0
 }
@@ -684,5 +684,5 @@
     timespec
     /bin/echo -n -e "${STAMP} ${logmessage}" >> ${BOOTLOG}
-    
+
     return 0
 }
@@ -695,5 +695,5 @@
     logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
     /bin/echo -n -e "${logmessage}" >> ${BOOTLOG}
-    
+
     return 0
 }
Index: bootscripts/lfs/lib/services/ipv4-static-route
===================================================================
--- bootscripts/lfs/lib/services/ipv4-static-route	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/lib/services/ipv4-static-route	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -57,8 +57,8 @@
 
    if [ -z "${PREFIX}" ]; then
-      log_failure_msg "PREFIX variable missing from ${IFCONFIG}, cannot continue." 
+      log_failure_msg "PREFIX variable missing from ${IFCONFIG}, cannot continue."
       exit 1
    fi
-   
+
    args="${args} ${IP}/${PREFIX}"
    desc="${desc}${IP}/${PREFIX}"
@@ -83,5 +83,5 @@
       evaluate_retval
    ;;
-   
+
    down)
       log_info_msg "Removing '${desc}' route from the ${1} interface..."
@@ -89,5 +89,5 @@
       evaluate_retval
    ;;
-   
+
    *)
       echo "Usage: ${0} [interface] {up|down}"
Index: bootscripts/lfs/sbin/ifdown
===================================================================
--- bootscripts/lfs/sbin/ifdown	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/sbin/ifdown	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -1,3 +1,3 @@
-#!/bin/bash 
+#!/bin/bash
 ########################################################################
 # Begin /sbin/ifdown
@@ -31,5 +31,5 @@
                        echo "${USAGE}" >& 2
                        exit 2 ;;
-                    
+
       *)               break ;;
    esac
@@ -54,5 +54,5 @@
 [ "${file}" = "${file%""~""}" ] || exit 0
 
-. /lib/lsb/init-functions 
+. /lib/lsb/init-functions
 
 if [ ! -r "${file}" ]; then
Index: bootscripts/lfs/sbin/ifup
===================================================================
--- bootscripts/lfs/sbin/ifup	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/sbin/ifup	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -49,9 +49,9 @@
 
       --version | -V)  echo "${VERSTR}"; exit 0 ;;
-   
+
       -*)              echo "ifup: ${1}: invalid option" >&2
                        echo "${USAGE}" >& 2
                        exit 2 ;;
-                       
+
       *)               break ;;
    esac
@@ -103,5 +103,5 @@
 for S in ${SERVICE}; do
   if [ ! -x "/lib/services/${S}" ]; then
-    MSG="\nUnable to process ${file}.  Either " 
+    MSG="\nUnable to process ${file}.  Either "
     MSG="${MSG}the SERVICE '${S} was not present "
     MSG="${MSG}or cannot be executed."
@@ -114,5 +114,5 @@
 
 # Create/configure the interface
-for S in ${SERVICE}; do 
+for S in ${SERVICE}; do
   IFCONFIG=${file} /lib/services/${S} ${IFACE} up
 done
@@ -129,11 +129,11 @@
 if test -n "${MTU}"; then
    if [[ ${MTU} =~ ^[0-9]+$ ]] && [[ $MTU -ge 68 ]] ; then
-      for I in $IFACE $INTERFACE_COMPONENTS; do 
-         ip link set dev $I mtu $MTU; 
+      for I in $IFACE $INTERFACE_COMPONENTS; do
+         ip link set dev $I mtu $MTU;
       done
    else
       log_info_msg2 "Invalid MTU $MTU"
    fi
-fi 
+fi
 
 # Set the route default gateway if requested
Index: bootscripts/lfs/sbin/ifup.8
===================================================================
--- bootscripts/lfs/sbin/ifup.8	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/sbin/ifup.8	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -15,7 +15,7 @@
 
 DESCRIPTION
-       The  ifup  and  ifdown  commands  may be used to configure 
-       (or, respectively, deconfigure) a network interface based 
-       on interface  definitions in the file 
+       The  ifup  and  ifdown  commands  may be used to configure
+       (or, respectively, deconfigure) a network interface based
+       on interface  definitions in the file
        /etc/sysconfig/ifconfig.IFACE.
 
@@ -31,5 +31,5 @@
 EXAMPLES
        ifup eth0
-              Bring up the interface defined in the file 
+              Bring up the interface defined in the file
               /etc/sysconfig/ifconfig.eth0
 
@@ -50,19 +50,19 @@
                 LABEL=eth0:2
                 SERVICE=dhcpcd
-         
+
                 DHCP_START="--waitip"
                 DHCP_STOP="-k"
-         
+
                 # Set PRINTIP="yes" to have the script print the DHCP IP address
                 PRINTIP="yes"
-         
+
                 # Set PRINTALL="yes" to print the DHCP assigned values for
-                # IP, SM, DG, and 1st NS. 
+                # IP, SM, DG, and 1st NS.
                 PRINTALL="no"
 
        ifup br0
-              Bring up the interface defined in the file 
+              Bring up the interface defined in the file
               /etc/sysconfig/ifconfig.br0
-                    
+
                 ONBOOT=yes
                 IFACE=br0
@@ -78,5 +78,5 @@
 NOTES
        The program does not configure network interfaces direct-
-       ly.  It runs scripts defined by the SERVICE variable in 
+       ly.  It runs scripts defined by the SERVICE variable in
        the network configuration file.
 
@@ -84,9 +84,9 @@
        ment variables set:
 
-       IFACE   - The interface to configure, e.g. eth0.  It must 
+       IFACE   - The interface to configure, e.g. eth0.  It must
                  be available in /sys/class/net.
 
        SERVICE - The service script to run to bring up the inter-
-                 face.  Standard services are ipv4-static and 
+                 face.  Standard services are ipv4-static and
                  ipv4-static-route.  Other services such as dhcp
                  or bridge may be installed.  This value may
@@ -94,11 +94,11 @@
                  compound device such as a bridge.
 
-       ONBOOT  - If set to 'yes', the specified interface is 
+       ONBOOT  - If set to 'yes', the specified interface is
                  configured by the netowrk boot script.
 
        GATEWAY - The default IP address to use for routing if
-                 the destination IP address is not in a static 
-                 route or on a local network, e.g., 192.168.1.1.  
-                 For secondary IP addresses on an interface, this 
+                 the destination IP address is not in a static
+                 route or on a local network, e.g., 192.168.1.1.
+                 For secondary IP addresses on an interface, this
                  parameter should not be specified.  If the service
                  is ipv4-static-route, this parameter must NOT
@@ -106,9 +106,9 @@
 
        STATIC_GATEWAY - The default IP address to use for routing
-                 when setting a static routing address.  
+                 when setting a static routing address.
 
        INTERFACE_COMPONENTS - A list of component interfaces
-                 only needed for a compound device such as a bridge.  
-                 This list is normally a single value, e.g. eth0, 
+                 only needed for a compound device such as a bridge.
+                 This list is normally a single value, e.g. eth0,
                  for use with a virtual host such as kvm.
 
@@ -117,5 +117,5 @@
        ipv4-static
 
-         IP        - The IP address of the interface, 
+         IP        - The IP address of the interface,
                      e.g. 192.168.1.2.
 
@@ -123,12 +123,12 @@
                      number of the interface.  The default, if not
                      specified, is 24.
-       
-         LABEL     - The label to be assigned to the interface.  
+
+         LABEL     - The label to be assigned to the interface.
                      This is normally specified for assigning
                      additional IP addresses to a network
                      device.  Example: eth0:2 (optional)
-       
-         BROADCAST - The brodcast address for this interface, 
-                     e.g 192.168.1.255.  If not specified, 
+
+         BROADCAST - The brodcast address for this interface,
+                     e.g 192.168.1.255.  If not specified,
                      the broadcast address will be calculated
                      from the IP and PREFIX.
@@ -136,5 +136,5 @@
        ipv4-static-route
 
-         TYPE    -  The type of route, typically 'default', 
+         TYPE    -  The type of route, typically 'default',
                     'network', 'or host'.
 
@@ -146,5 +146,5 @@
          STATIC_GATEWAY - The IP address for a network route.
 
-         SOURCE  -  The source IP address to prefer when sending 
+         SOURCE  -  The source IP address to prefer when sending
                     to the destinations covered by the specified
                     route. (optional)
@@ -155,5 +155,5 @@
                       at startup.
 
-         DHCP_STOP  - Optional paremeters to pass to the dhcp client 
+         DHCP_STOP  - Optional paremeters to pass to the dhcp client
                       at shutdown.
 
@@ -165,6 +165,6 @@
 
          IP_FORWARD - An optional flag to enable the system to forward
-                      inbound IP packets received by one interface to 
-                      another outbound interface.  
+                      inbound IP packets received by one interface to
+                      another outbound interface.
 
          STP        - Set bridge spanning tree protocol.  Default is no.
@@ -172,9 +172,9 @@
 FILES
        /etc/sysconfig/ifconfig.*
-              definitions of network interfaces 
+              definitions of network interfaces
 
 AUTHORS
        The ifup/ifdown suite was written by Nathan Coulson
-       <nathan@linuxfromscratch.org> and Kevin P. Fleming 
+       <nathan@linuxfromscratch.org> and Kevin P. Fleming
        <kpfleming@linuxfromscratch.org>
        and updated by Bruce Dubbs <bdubbs@linuxfromscratch>.
Index: bootscripts/lfs/sysconfig/createfiles
===================================================================
--- bootscripts/lfs/sysconfig/createfiles	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ bootscripts/lfs/sysconfig/createfiles	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -12,5 +12,5 @@
 #  		<filename> <type> <permissions> <user> <group>
 # 		if type is equal to "dev"
-#  		<filename> <type> <permissions> <user> <group> <devtype> 
+#  		<filename> <type> <permissions> <user> <group> <devtype>
 #             <major> <minor>
 #
@@ -23,7 +23,7 @@
 #   			block creates a block device
 #   			char creates a character deivce
-#   			pipe creates a pipe, this will ignore the <major> and 
+#   			pipe creates a pipe, this will ignore the <major> and
 #           <minor> fields
-# 		<major> and <minor> are the major and minor numbers used for 
+# 		<major> and <minor> are the major and minor numbers used for
 #     the device.
 ########################################################################
Index: chapter01/askforhelp.xml
===================================================================
--- chapter01/askforhelp.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter01/askforhelp.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -39,11 +39,11 @@
     <itemizedlist>
       <listitem>
-        <para>
-          The version of the book being used (in this case 
-          <phrase arch="default" revision="sysv">&version;</phrase>
-          <phrase arch="ml_32,ml_x32,ml_all" revision="sysv">&version;-multilib</phrase>
-          <phrase arch="default" revision="systemd">&versiond;</phrase>
-          <phrase arch="ml_32,ml_x32,ml_all" revision="systemd">&versiond;-multilib</phrase>)
-        </para>
+        <para>The version of the book being used (in this case
+              <phrase revision="sysv">&version;</phrase>
+              <phrase revision="systemd">&versiond;</phrase>)
+              <phrase arch="default" revision="sysv">&version;</phrase>
+              <phrase arch="ml_32,ml_x32,ml_all" revision="sysv">&version;-multilib</phrase>
+              <phrase arch="default" revision="systemd">&versiond;</phrase>
+              <phrase arch="ml_32,ml_x32,ml_all" revision="systemd">&versiond;-multilib</phrase>)</para>
       </listitem>
       <listitem>
Index: chapter01/changelog.xml
===================================================================
--- chapter01/changelog.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter01/changelog.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -12,8 +12,8 @@
 
   <para>This is version 
-    <phrase arch="default" revision="sysv">&version;</phrase>
-    <phrase arch="ml_32,ml_x32,ml_all" revision="sysv">&version;-multilib</phrase>
-    <phrase arch="default" revision="systemd">&versiond;</phrase>
-    <phrase arch="ml_32,ml_x32,ml_all" revision="systemd">&versiond;-multilib</phrase>
+        <phrase arch="default" revision="sysv">&version;</phrase>
+        <phrase arch="ml_32,ml_x32,ml_all" revision="sysv">&version;-multilib</phrase>
+        <phrase arch="default" revision="systemd">&versiond;</phrase>
+        <phrase arch="ml_32,ml_x32,ml_all" revision="systemd">&versiond;-multilib</phrase>
   of the Linux From Scratch book, dated
   &releasedate;. If this book is more than six months old, a newer and better
@@ -45,4 +45,69 @@
     appropriate for the entry or if needed the entire day's listitem.
     -->
+    <listitem>
+      <para>2021-09-15</para>
+      <itemizedlist>
+        <listitem>
+          <para>[bdubbs] - Ensure tcl documentation instructions are present. Fixes
+          <ulink url="&lfs-ticket-root;4923">#4923</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to Python3-3.9.7. Fixes
+          <ulink url="&lfs-ticket-root;4916">#4916</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to linux-5.14.3. Fixes
+          <ulink url="&lfs-ticket-root;4913">#4913</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to libcap-2.57. Fixes
+          <ulink url="&lfs-ticket-root;4912">#4912</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to iproute2-5.14.0. Fixes
+          <ulink url="&lfs-ticket-root;4917">#4917</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to inetutils-2.2. Fixes
+          <ulink url="&lfs-ticket-root;4918">#4918</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to gzip-1.11. Fixes
+          <ulink url="&lfs-ticket-root;4920">#4920</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to gdbm-1.21. Fixes
+          <ulink url="&lfs-ticket-root;4919">#4919</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to bison-3.8.1. Fixes
+          <ulink url="&lfs-ticket-root;4921">#4921</ulink>.</para>
+        </listitem>
+        <listitem>
+          <para>[bdubbs] - Update to bc-5.0.2. Fixes
+          <ulink url="&lfs-ticket-root;4908">#4905</ulink>.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
+    <listitem>
+      <para>2021-09-08</para>
+      <itemizedlist>
+        <listitem>
+          <para>[renodr] - Fix regressions in File that result in improper
+          detection of text and XZ files.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
+    <listitem>
+      <para>2021-09-06</para>
+      <itemizedlist>
+        <listitem>
+          <para>[bdubbs] - Text clarifications in the backup/restore section
+          of Chapter 7. Thanks to Kevin Buckley for the patch.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
 
     <listitem>
Index: chapter01/whatsnew.xml
===================================================================
--- chapter01/whatsnew.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter01/whatsnew.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -46,13 +46,13 @@
       <para>Bash &bash-version;</para>
     </listitem>-->
-   <!--<listitem>
+   <listitem>
       <para>Bc &bc-version;</para>
-    </listitem>-->
+    </listitem>
    <!--<listitem>
       <para>Binutils-&binutils-version;</para>
     </listitem>-->
-   <!--<listitem>
+   <listitem>
       <para>Bison-&bison-version;</para>
-    </listitem>-->
+    </listitem>
     <!--<listitem>
       <para>Bzip2-&bzip2-version;</para>
@@ -100,7 +100,7 @@
        <para>GCC-&gcc-version;</para>
     </listitem>-->
-   <!--<listitem>
+   <listitem>
        <para>GDBM-&gdbm-version;</para>
-    </listitem>-->
+    </listitem>
     <!--<listitem>
       <para>Gettext-&gettext-version;</para>
@@ -124,19 +124,19 @@
       <para>GRUB-&grub-version;</para>
     </listitem>-->
-    <!--<listitem>
+    <listitem>
       <para>Gzip-&gzip-version;</para>
-    </listitem>-->
+    </listitem>
    <!--<listitem>
       <para>IANA-Etc-&iana-etc-version;</para>
     </listitem>-->
-    <!--<listitem>
+    <listitem>
       <para>Inetutils-&inetutils-version;</para>
-    </listitem>-->
+    </listitem>
     <!--<listitem>
       <para>Intltool-&intltool-version;</para>
     </listitem>-->
-   <!--<listitem>
+   <listitem>
       <para>IPRoute2-&iproute2-version;</para>
-    </listitem>-->
+    </listitem>
     <!--<listitem revision="systemd">
       <para>Jinja2-&jinja2-version;</para>
@@ -154,7 +154,7 @@
       <para>LFS-Bootscripts-&lfs-bootscripts-version;</para>
     </listitem>-->
-   <!--<listitem>
+   <listitem>
       <para>Libcap-&libcap-version;</para>
-    </listitem>-->
+    </listitem>
    <!--<listitem>
       <para>Libelf-&elfutils-version; (from elfutils)</para>
@@ -169,7 +169,7 @@
       <para>Libtool-&libtool-version;</para>
     </listitem>-->
-   <!--<listitem>
+   <listitem>
       <para>Linux-&linux-version;</para>
-    </listitem>-->
+    </listitem>
    <!--<listitem>
       <para>M4-&m4-version;</para>
@@ -220,7 +220,7 @@
       <para>Psmisc-&psmisc-version;</para>
     </listitem>-->
-   <!--<listitem>
+    <listitem>
       <para>Python-&python-version;</para>
-    </listitem>-->
+    </listitem>
     <!--<listitem>
       <para>Readline-&readline-version;</para>
@@ -285,4 +285,7 @@
     <title>Added:</title>
     <listitem><para></para></listitem>  <!-- satisfy build -->
+    <listitem>
+      <para>file-5.40-upstream_fixes-1.patch</para>
+    </listitem>
     <!--
     <listitem>
Index: chapter02/aboutlfs.xml
===================================================================
--- chapter02/aboutlfs.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter02/aboutlfs.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -53,5 +53,5 @@
   <filename>/root/.bash_profile</filename> file is incorporated as a part of
   the login process.</para>
-  
+
   <para>Another consideration is the method that is used to log into the
   host system.  If logging in through a graphical display manager, the
@@ -59,9 +59,9 @@
   a virtual terminal is started.  In this case, add the export command to
   the <filename>.bashrc</filename> file for the user and
-  <systemitem class="username">root</systemitem>.  In addition, 
-  some distributions have instructions to not run the <filename>.bashrc</filename> 
+  <systemitem class="username">root</systemitem>.  In addition,
+  some distributions have instructions to not run the <filename>.bashrc</filename>
   instructions in a non-interactive bash invocation.  Be sure to add the
   export command before the test for non-interactive use.</para>
-  
+
   </note>
 
Index: chapter02/creatingfilesystem.xml
===================================================================
--- chapter02/creatingfilesystem.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter02/creatingfilesystem.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -12,7 +12,7 @@
 
   <para>Now that a blank partition has been set up, the file system can be
-  created.  LFS can use any file system recognized by the Linux kernel, but the 
-  most common types are ext3 and ext4.  The choice of file system can be 
-  complex and depends on the characteristics of the files and the size of 
+  created.  LFS can use any file system recognized by the Linux kernel, but the
+  most common types are ext3 and ext4.  The choice of file system can be
+  complex and depends on the characteristics of the files and the size of
   the partition.  For example:</para>
 
@@ -27,5 +27,5 @@
       <term>ext3</term>
       <listitem><para>is an upgrade to ext2 that includes a journal
-      to help recover the partition's status in the case of an unclean 
+      to help recover the partition's status in the case of an unclean
       shutdown.  It is commonly used as a general purpose file system.
       </para>
Index: chapter02/creatingpartition.xml
===================================================================
--- chapter02/creatingpartition.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter02/creatingpartition.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -38,5 +38,5 @@
   or <command>fdisk</command> with a command line option naming the hard
   disk on which the new partition will be created&mdash;for example
-  <filename class="devicefile">/dev/sda</filename> for the primary 
+  <filename class="devicefile">/dev/sda</filename> for the primary
   disk drive. Create a Linux native partition and a
   <systemitem class="filesystem">swap</systemitem> partition, if needed. Please
@@ -89,5 +89,5 @@
 
     <para>If you want to use the hibernation feature (suspend-to-disk) of Linux,
-    it writes out the contents of RAM to the swap partition before turning off 
+    it writes out the contents of RAM to the swap partition before turning off
     the machine. In this case the size of the swap partition should be at
     least as large as the system's installed RAM.</para>
@@ -115,6 +115,6 @@
     using <command>gdisk</command>.</para>
 
-    <note><para>The Grub Bios partition must be on the drive that the BIOS 
-    uses to boot the system.  This is not necessarily the same drive where the 
+    <note><para>The Grub Bios partition must be on the drive that the BIOS
+    uses to boot the system.  This is not necessarily the same drive where the
     LFS root partition is located. Disks on a system may use different
     partition table types.  The requirement for this partition depends
Index: chapter02/hostreqs.xml
===================================================================
--- chapter02/hostreqs.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter02/hostreqs.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -151,6 +151,6 @@
 
   <!-- Use an empty sect2 element to prevent a pdf warning.  -->
-  <bridgehead renderas="sect2" 
-              id="version-check" 
+  <bridgehead renderas="sect2"
+              id="version-check"
               xreflabel="Host System Requirements">
   </bridgehead>
@@ -178,5 +178,5 @@
   echo yacc is `/usr/bin/yacc --version | head -n1`
 else
-  echo "yacc not found" 
+  echo "yacc not found"
 fi
 
@@ -191,6 +191,6 @@
 elif [ -x /usr/bin/awk ]; then
   echo awk is `/usr/bin/awk --version | head -n1`
-else 
-  echo "awk not found" 
+else
+  echo "awk not found"
 fi
 
Index: chapter02/introduction.xml
===================================================================
--- chapter02/introduction.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter02/introduction.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -12,6 +12,6 @@
 
   <para>In this chapter, the host tools needed for building LFS
-  are checked and, if necessary, installed.  Then a partition which will 
-  host the LFS system is prepared. We will create the partition 
+  are checked and, if necessary, installed.  Then a partition which will
+  host the LFS system is prepared. We will create the partition
   itself, create a file system on it, and mount it.</para>
 
Index: chapter02/mounting.xml
===================================================================
--- chapter02/mounting.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter02/mounting.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -48,6 +48,6 @@
   <warning><para>The above instructions assume that you will not be restarting
   your computer throughout the LFS process.  If you shut down your system,
-  you will either need to remount the LFS partition each time you restart 
-  the build process or modify your host system's /etc/fstab file to automatically 
+  you will either need to remount the LFS partition each time you restart
+  the build process or modify your host system's /etc/fstab file to automatically
   remount it upon boot.  For example:
 
Index: chapter02/stages.xml
===================================================================
--- chapter02/stages.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter02/stages.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -23,5 +23,5 @@
     <para>These chapters are accomplished on the host system.  When
     restarting, be careful of the following:</para>
-  
+
     <itemizedlist>
       <listitem>
@@ -33,5 +33,5 @@
     </itemizedlist>
   </sect2>
-  
+
   <sect2>
   <title>Chapter&nbsp;5&ndash;6</title>
@@ -86,6 +86,6 @@
          before or after entering chroot by changing to a host virtual terminal
          and, as <systemitem class="username">root</systemitem>, running the
-         commands in 
-         <xref linkend='ch-tools-bindmount'/> and 
+         commands in
+         <xref linkend='ch-tools-bindmount'/> and
          <xref linkend='ch-tools-kernfsmount'/>.</para>
       </listitem>
Index: chapter03/introduction.xml
===================================================================
--- chapter03/introduction.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter03/introduction.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -55,9 +55,9 @@
   <itemizedlist>
     <listitem>
-      <para>The files can be downloaded individually as described in the 
+      <para>The files can be downloaded individually as described in the
       next two sections.</para>
     </listitem>
     <listitem>
-      <para>For stable versions of the book, a tarball of all the needed files 
+      <para>For stable versions of the book, a tarball of all the needed files
       can be downloaded from one of the LFS files mirrors listed at
       <ulink url="https://www.linuxfromscratch.org/mirrors.html#files"/>.</para>
@@ -75,4 +75,12 @@
 <screen role="nodump"><userinput>wget --input-file=wget-list --continue --directory-prefix=$LFS/sources</userinput></screen>
 
+  <note><para>
+    The <filename>wget-list</filename> file mentioned above retrieves all
+    packages for both the sysV and systemd versions of LFS.  There are a total
+    of five additional small packages not needed for the currrent book.  The
+    <filename>md5sums</filename> file mentioned below is specific to the
+    current book.
+  </para></note>
+
   <para>Additionally, starting with LFS-7.0, there is a separate file,
   <ulink url="../md5sums">md5sums</ulink>, which can be used to verify that all
@@ -84,5 +92,5 @@
 popd</userinput></screen>
 
-  <para>This check can be used after retrieving the needed files with any of the 
+  <para>This check can be used after retrieving the needed files with any of the
   methods listed above.</para>
 
Index: chapter03/packages.xml
===================================================================
--- chapter03/packages.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter03/packages.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -450,5 +450,5 @@
           <para>The Linux kernel is updated relatively often, many times due to
           discoveries of security vulnerabilities.  The latest available
-          <!--&linux-major-version;.&linux-minor-version;.x--> stable kernel 
+          <!--&linux-major-version;.&linux-minor-version;.x--> stable kernel
           version <!--should--> may be
           used, unless the errata page says otherwise.</para>
Index: chapter03/patches.xml
===================================================================
--- chapter03/patches.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter03/patches.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -58,4 +58,12 @@
         <para>Download: <ulink url="&patches-root;&coreutils-i18n-patch;"/></para>
         <para>MD5 sum: <literal>&coreutils-i18n-patch-md5;</literal></para>
+      </listitem>
+    </varlistentry>
+
+    <varlistentry>
+      <term>File Upstream Fixes Patch - <token>&file-upstream-fixes-patch-size;</token>:</term>
+      <listitem>
+        <para>Download: <ulink url="&patches-root;&file-upstream-fixes-patch;"/></para>
+        <para>MD5 sum: <literal>&file-upstream-fixes-md5;</literal></para>
       </listitem>
     </varlistentry>
Index: chapter04/addinguser.xml
===================================================================
--- chapter04/addinguser.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter04/addinguser.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -12,5 +12,5 @@
 
   <para>When logged in as user <systemitem class="username">root</systemitem>,
-  making a single mistake can damage or destroy a system. Therefore, 
+  making a single mistake can damage or destroy a system. Therefore,
   the packages in the next two chapters are built as an unprivileged user.
   You could use your own user name, but to make it easier to set up a clean
Index: chapter04/settingenviron.xml
===================================================================
--- chapter04/settingenviron.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter04/settingenviron.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -194,5 +194,5 @@
      user, run:</para>
 
-     <screen role="nodump"><userinput>[ ! -e /etc/bash.bashrc ] || mv -v /etc/bash.bashrc /etc/bash.bashrc.NOUSE</userinput></screen> 
+     <screen role="nodump"><userinput>[ ! -e /etc/bash.bashrc ] || mv -v /etc/bash.bashrc /etc/bash.bashrc.NOUSE</userinput></screen>
 
      <para>After use of the <systemitem class="username">lfs</systemitem>
Index: chapter05/binutils-pass1.xml
===================================================================
--- chapter05/binutils-pass1.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter05/binutils-pass1.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -54,5 +54,5 @@
     enable.</para>
 
-    <para>The Binutils documentation recommends building Binutils 
+    <para>The Binutils documentation recommends building Binutils
     in a dedicated build directory:</para>
 
Index: chapter05/gcc-pass1.xml
===================================================================
--- chapter05/gcc-pass1.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter05/gcc-pass1.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -83,5 +83,5 @@
 </userinput></screen>
 
-    <para>The GCC documentation recommends building GCC 
+    <para>The GCC documentation recommends building GCC
     in a dedicated build directory:</para>
 
@@ -91,23 +91,23 @@
     <para>Prepare GCC for compilation:</para>
 
-<screen arch="default"><userinput remap="configure">../configure                                       \
-    --target=$LFS_TGT                              \
-    --prefix=$LFS/tools                            \
-    --with-glibc-version=2.11                      \
-    --with-sysroot=$LFS                            \
-    --with-newlib                                  \
-    --without-headers                              \
-    --enable-initfini-array                        \
-    --disable-nls                                  \
-    --disable-shared                               \
-    --disable-multilib                             \
-    --disable-decimal-float                        \
-    --disable-threads                              \
-    --disable-libatomic                            \
-    --disable-libgomp                              \
-    --disable-libquadmath                          \
-    --disable-libssp                               \
-    --disable-libvtv                               \
-    --disable-libstdcxx                            \
+<screen arch="default"><userinput remap="configure">../configure                  \
+    --target=$LFS_TGT         \
+    --prefix=$LFS/tools       \
+    --with-glibc-version=2.11 \
+    --with-sysroot=$LFS       \
+    --with-newlib             \
+    --without-headers         \
+    --enable-initfini-array   \
+    --disable-nls             \
+    --disable-shared          \
+    --disable-multilib        \
+    --disable-decimal-float   \
+    --disable-threads         \
+    --disable-libatomic       \
+    --disable-libgomp         \
+    --disable-libquadmath     \
+    --disable-libssp          \
+    --disable-libvtv          \
+    --disable-libstdcxx       \
     --enable-languages=c,c++</userinput></screen>
 <screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure" 
@@ -115,5 +115,5 @@
     arch="ml_x32">mlist=m64,mx32</userinput><userinput remap="configure"
     arch="ml_all">mlist=m64,m32,mx32</userinput>
-<userinput remap="configure">../configure                                       \
+<userinput remap="configure">../configure                  \
     --target=$LFS_TGT                              \
     --prefix=$LFS/tools                            \
@@ -143,5 +143,5 @@
         <listitem>
           <para>This option ensures the package will be compatible with the host's
-          version of glibc.  It is set to the minimum glibc requirement 
+          version of glibc.  It is set to the minimum glibc requirement
           specified in the <xref linkend="ch-partitioning-hostreqs"/>.</para>
         </listitem>
@@ -202,5 +202,5 @@
       <varlistentry>
         <term><parameter>--disable-decimal-float, --disable-threads,
-              --disable-libatomic, --disable-libgomp, 
+              --disable-libatomic, --disable-libgomp,
         --disable-libquadmath, --disable-libssp, --disable-libvtv,
         --disable-libstdcxx</parameter></term>
Index: chapter05/glibc.xml
===================================================================
--- chapter05/glibc.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter05/glibc.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -66,5 +66,5 @@
 <screen><userinput remap="pre">patch -Np1 -i ../glibc-&glibc-version;-fhs-1.patch</userinput></screen>
 
-    <para>The Glibc documentation recommends building Glibc 
+    <para>The Glibc documentation recommends building Glibc
     in a dedicated build directory:</para>
 
@@ -151,5 +151,5 @@
     Gettext package which the host distribution should provide.</para>
 
-    <note><para>There have been reports that this package may fail when 
+    <note><para>There have been reports that this package may fail when
     building as a "parallel make".  If this occurs, rerun the make command
     with a "-j1" option.</para></note>
Index: chapter05/libstdc++.xml
===================================================================
--- chapter05/libstdc++.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter05/libstdc++.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -25,5 +25,5 @@
     <title/>
 
-    <para>Libstdc++ is the standard C++ library. It is needed 
+    <para>Libstdc++ is the standard C++ library. It is needed
     to compile C++ code
     (part of GCC is written in C++), but we had to defer its installation
Index: chapter05/linux-headers.xml
===================================================================
--- chapter05/linux-headers.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter05/linux-headers.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -76,10 +76,10 @@
         <seg>/usr/include/asm/*.h, /usr/include/asm-generic/*.h,
         /usr/include/drm/*.h, /usr/include/linux/*.h, /usr/include/misc/*.h,
-        /usr/include/mtd/*.h, /usr/include/rdma/*.h, /usr/include/scsi/*.h, 
-        /usr/include/sound/*.h, /usr/include/video/*.h, 
+        /usr/include/mtd/*.h, /usr/include/rdma/*.h, /usr/include/scsi/*.h,
+        /usr/include/sound/*.h, /usr/include/video/*.h,
         and /usr/include/xen/*.h</seg>
         <seg>/usr/include/asm, /usr/include/asm-generic, /usr/include/drm,
-        /usr/include/linux, /usr/include/misc, /usr/include/mtd, 
-        /usr/include/rdma, /usr/include/scsi, /usr/include/sound, 
+        /usr/include/linux, /usr/include/misc, /usr/include/mtd,
+        /usr/include/rdma, /usr/include/scsi, /usr/include/sound,
         /usr/include/video, and /usr/include/xen</seg>
       </seglistitem>
Index: chapter06/coreutils.xml
===================================================================
--- chapter06/coreutils.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter06/coreutils.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -84,8 +84,8 @@
     programs harcode executable locations:</para>
 
-<screen><userinput remap="install">mv -v $LFS/usr/bin/chroot                                     $LFS/usr/sbin
+<screen><userinput remap="install">mv -v $LFS/usr/bin/chroot              $LFS/usr/sbin
 mkdir -pv $LFS/usr/share/man/man8
-mv -v $LFS/usr/share/man/man1/chroot.1                        $LFS/usr/share/man/man8/chroot.8
-sed -i 's/"1"/"8"/'                                           $LFS/usr/share/man/man8/chroot.8</userinput></screen>
+mv -v $LFS/usr/share/man/man1/chroot.1 $LFS/usr/share/man/man8/chroot.8
+sed -i 's/"1"/"8"/'                    $LFS/usr/share/man/man8/chroot.8</userinput></screen>
 
   </sect2>
Index: chapter06/file.xml
===================================================================
--- chapter06/file.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter06/file.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -45,6 +45,6 @@
 
     <para>
-       The <command>file</command> command on the build host needs 
-       to be same version as the one we are building in order to 
+       The <command>file</command> command on the build host needs
+       to be same version as the one we are building in order to
        create the signature file. Run the following commands to build it:
     </para>
Index: chapter06/introduction.xml
===================================================================
--- chapter06/introduction.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter06/introduction.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -19,5 +19,5 @@
   <para>Using the utilities will be possible in next chapter after entering
   the <quote>chroot</quote> environment. But all the packages built in the
-  present chapter need to be built before we do that. Therefore we cannot be 
+  present chapter need to be built before we do that. Therefore we cannot be
   independent of the host system yet.</para>
 
Index: chapter07/chapter07.xml
===================================================================
--- chapter07/chapter07.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter07/chapter07.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -25,5 +25,5 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="texinfo.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="util-linux.xml"/>
-  
+
 <!--
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="tcl.xml"/>
Index: chapter07/cleanup.xml
===================================================================
--- chapter07/cleanup.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter07/cleanup.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -10,5 +10,5 @@
 
   <title>Cleaning up and Saving the Temporary System</title>
-  
+
   <sect2>
     <title>Cleaning</title>
@@ -21,5 +21,5 @@
     <para>Second, the libtool .la files are only useful when linking with static
     libraries. They are unneeded and potentially harmful when using dynamic
-    shared libraries, specially when using non-autotools build systems.
+    shared libraries, especially when using non-autotools build systems.
     While still in chroot, remove those files now:</para>
 
@@ -30,5 +30,5 @@
 
     <para>
-      The current system size is now about 3 GB, however 
+      The current system size is now about 3 GB, however
       the /tools directory is no longer needed. It uses about
       1 GB of disk space.  Delete it now:
@@ -41,4 +41,15 @@
     <title>Backup</title>
 
+    <para>
+      At this point the essential programs and libraries have been created
+      and your current LFS system is in a good state. Your system can now be
+      backed up for later reuse. In case of fatal failures in the subsequent
+      chapters, it often turns out that removing everything and starting over
+      (more carefully) is the best option to recover. Unfortunately, all the
+      temporary files will be removed, too. To avoid spending extra time to
+      redo something which has been built successfully, creating a backup of
+      the current LFS system may prove useful.
+    </para>
+
     <note><para>
       All the remaining steps in this section are optional. Nevertheless,
@@ -46,7 +57,7 @@
       linkend="chapter-building-system"/>, the temporary files will be
       overwritten. So it may be a good idea to do a backup of the current
-      system as described below. 
+      system as described below.
     </para></note>
-  
+
     <para>
       The following steps are performed from outside the chroot
@@ -60,45 +71,52 @@
     </para>
 
+    <para>
+       If you have decided to make a backup, leave the chroot environment:
+    </para>
+
+<screen role="nodump"><userinput>exit</userinput></screen>
+
     <important>
-      <para>All of the following instructions are executed by
-        <systemitem class="username">root</systemitem>. Take extra
-        care about the commands you're going to run as mistakes
+      <para>
+        All of the following instructions are executed by
+        <systemitem class="username">root</systemitem> on your host system.
+        Take extra care about the commands you're going to run as mistakes
         here can modify your host system. Be aware that the
-        environment variable <envar>LFS</envar> 
-        is set for user <systemitem class="username">lfs</systemitem> by default 
-        but may <emphasis>not</emphasis> be set for 
-        <systemitem class="username">root</systemitem>. Whenever 
-        commands are to be executed by <systemitem class="username">root</systemitem>, 
+        environment variable <envar>LFS</envar>
+        is set for user <systemitem class="username">lfs</systemitem> by default
+        but may <emphasis>not</emphasis> be set for
+        <systemitem class="username">root</systemitem>.
+     </para>
+     <para>
+        Whenever commands are to be executed by <systemitem class="username">root</systemitem>,
         make sure you have set <envar>LFS</envar>.
+     </para>
+     <para>
         This has been discussed in <xref linkend='ch-partitioning-aboutlfs'/>.
       </para>
     </important>
 
-    <para>
-       Now, if you are making a backup, leave the chroot environment:
-    </para>
+    <para>Before making a backup, unmount the virtual file systems:</para>
 
-<screen role="nodump"><userinput>exit</userinput></screen>
+<screen role="nodump"><userinput>umount $LFS/dev/pts
+umount $LFS/{sys,proc,run,dev}</userinput></screen>
 
     <para>
-      At this point the essential programs and libraries have been created
-      and your current system is in a good state. Your system can now be
-      backed up for later reuse. In case of fatal failures in the subsequent
-      chapters, it often turns out that removing everything and starting over
-      (more carefully) is the best option to recover. Unfortunately, all the
-      temporary files will be removed, too. To avoid spending extra time to
-      redo something which has been built successfully, prepare a backup.
+      Make sure you have at least 1 GB free disk space (the source tarballs
+      will be included in the backup archive) on the filesystem containing
+      directory where you create the backup archive.
     </para>
 
     <para>
-      Make sure you have at least 1 GB free disk space (the source tarballs
-      will be included in the backup archive) in the home directory of user 
-      <systemitem class="username">root</systemitem>.
+      Note that the instructions below specify the home directory of the host
+      system's <systemitem class="username">root</systemitem> user, which is
+      typically found on the root filesystem.
     </para>
 
-    <para>Before we make a backup, unmount the virtual file systems:</para>
-
-<screen role="nodump"><userinput>umount $LFS/dev{/pts,}
-umount $LFS/{sys,proc,run}</userinput></screen>
+    <para>
+      Replace <envar>$HOME</envar> by a directory of your choice if you
+      do not want to have the backup stored in <systemitem
+      class="username">root</systemitem>'s home directory.
+    </para>
 
     <para>
@@ -111,22 +129,12 @@
           long time (over 10 minutes) even on a resonably fast system.
        </para>
-       
-       <para>
-          Also, ensure the <envar>LFS</envar> environment variable is set 
-          for the root user.
-       </para>
     </note>
 
-<screen role="nodump" revision="sysv"><userinput>cd $LFS 
+<screen role="nodump" revision="sysv"><userinput>cd $LFS
 tar -cJpf $HOME/lfs-temp-tools-&version;.tar.xz .</userinput></screen>
 
-<screen role="nodump" revision="systemd"><userinput>cd $LFS 
+<screen role="nodump" revision="systemd"><userinput>cd $LFS
 tar -cJpf $HOME/lfs-temp-tools-&versiond;.tar.xz .</userinput></screen>
 
-    <para>
-      Replace <envar>$HOME</envar> by a directory of your choice if you
-      do not want to have the backup stored in <systemitem 
-      class="username">root</systemitem>'s home directory.
-    </para>
   </sect2>
 
@@ -137,5 +145,5 @@
       In case some mistakes have been made and you need to start over, you can
       use this backup to restore the system and save some recovery time.
-      Since the sources are located under 
+      Since the sources are located under
       <filename class="directory">$LFS</filename>, they are included in the
       backup archive as well, so they do not need to be downloaded again. After
@@ -148,15 +156,15 @@
 
     <warning><para>The following commands are extremly dangerous.  If
-    you run <command>rm -rf ./*</command> as the root user and you 
-    do not change to the $LFS directory or the <envar>LFS</envar> 
-    environment variable is not set for the root user, it will destroy 
+    you run <command>rm -rf ./*</command> as the root user and you
+    do not change to the $LFS directory or the <envar>LFS</envar>
+    environment variable is not set for the root user, it will destroy
     your entire host system.  YOU ARE WARNED.</para></warning>
 
-<screen role="nodump" revision="sysv"><computeroutput>cd $LFS 
-rm -rf ./* 
+<screen role="nodump" revision="sysv"><computeroutput>cd $LFS
+rm -rf ./*
 tar -xpf $HOME/lfs-temp-tools-&version;.tar.xz</computeroutput></screen>
 
-<screen role="nodump" revision="systemd"><computeroutput>cd $LFS 
-rm -rf ./* 
+<screen role="nodump" revision="systemd"><computeroutput>cd $LFS
+rm -rf ./*
 tar -xpf $HOME/lfs-temp-tools-&versiond;.tar.xz</computeroutput></screen>
 
@@ -176,5 +184,5 @@
        </para>
     </important>
-    
+
   </sect2>
 
Index: chapter07/introduction.xml
===================================================================
--- chapter07/introduction.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter07/introduction.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -12,9 +12,8 @@
 
   <para>This chapter shows how to build the last missing bits of the temporary
-  system: the tools needed by the build machinery of various packages.
-  Now that all circular dependencies
-  have been resolved, we can use a <quote>chroot</quote> environment,
-  completely isolated the host operating system used for the build, except
-  for the running kernel.</para>
+  system: the tools needed by the build machinery of various packages.  Now
+  that all circular dependencies have been resolved, a <quote>chroot</quote>
+  environment, completely isolated from the host operating system (except for
+  the running kernel), can be used for the build.</para>
 
   <para>For proper operation of the isolated environment, some communication
Index: chapter07/kernfs.xml
===================================================================
--- chapter07/kernfs.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter07/kernfs.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -105,5 +105,5 @@
       <para>In some host systems, <filename>/dev/shm</filename> is a
       symbolic link to <filename class="directory">/run/shm</filename>.
-      The /run tmpfs was mounted above so in this case only a 
+      The /run tmpfs was mounted above so in this case only a
       directory needs to be created.</para>
 
Index: chapter07/perl.xml
===================================================================
--- chapter07/perl.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter07/perl.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -61,5 +61,5 @@
         <term><parameter>-des</parameter></term>
         <listitem>
-          <para>This is a combination of three options: -d uses defaults for 
+          <para>This is a combination of three options: -d uses defaults for
           all items; -e ensures completion of all tasks; -s silences
           non-essential output.</para>
Index: chapter08/attr.xml
===================================================================
--- chapter08/attr.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/attr.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -54,5 +54,5 @@
 
     <para>The tests need to be run on a filesystem that supports extended
-    attributes such as the ext2, ext3, or ext4 filesystems. 
+    attributes such as the ext2, ext3, or ext4 filesystems.
     To test the results, issue:</para>
 
Index: chapter08/automake.xml
===================================================================
--- chapter08/automake.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/automake.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -60,5 +60,5 @@
 <screen><userinput remap="test">make -j4 check</userinput></screen>
 <!--
-    <para>The tests t/subobj.sh, t/deprecated-acinit.sh, and t/init.sh are known to 
+    <para>The tests t/subobj.sh, t/deprecated-acinit.sh, and t/init.sh are known to
     fail in the LFS environment.</para>
 -->
Index: chapter08/bc.xml
===================================================================
--- chapter08/bc.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/bc.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -24,5 +24,5 @@
     <title/>
 
-    <para>The Bc package contains an arbitrary precision numeric processing 
+    <para>The Bc package contains an arbitrary precision numeric processing
     language.</para>
 
Index: chapter08/binutils.xml
===================================================================
--- chapter08/binutils.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/binutils.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -75,5 +75,5 @@
 <screen><userinput remap="pre">sed -i '/@\tincremental_copy/d' gold/testsuite/Makefile.in</userinput></screen>
 -->
-    <para>The Binutils documentation recommends building Binutils 
+    <para>The Binutils documentation recommends building Binutils
     in a dedicated build directory:</para>
 
@@ -315,5 +315,5 @@
         <term><command>ld.gold</command></term>
         <listitem>
-          <para>A cut down version of ld that only supports the 
+          <para>A cut down version of ld that only supports the
           elf object file format</para>
           <indexterm zone="ch-system-binutils ld.gold">
Index: chapter08/chapter08.xml
===================================================================
--- chapter08/chapter08.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/chapter08.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -68,5 +68,5 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="meson.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="coreutils.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="check.xml"/> 
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="check.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="diffutils.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gawk.xml"/>
Index: chapter08/coreutils.xml
===================================================================
--- chapter08/coreutils.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/coreutils.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -89,5 +89,5 @@
         <term><envar>FORCE_UNSAFE_CONFIGURE=1</envar></term>
         <listitem>
-          <para>This environment variable allows the package to be 
+          <para>This environment variable allows the package to be
           built as the <systemitem class="username">root</systemitem> user.
           </para>
Index: chapter08/dbus.xml
===================================================================
--- chapter08/dbus.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/dbus.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -115,5 +115,5 @@
       <seglistitem>
         <seg>dbus-cleanup-sockets, dbus-daemon, dbus-launch, dbus-monitor,
-        dbus-run-session, dbus-send, dbus-test-tool, 
+        dbus-run-session, dbus-send, dbus-test-tool,
         dbus-update-activation-environment, and dbus-uuidgen</seg>
         <seg>libdbus-1.{a,so}</seg>
Index: chapter08/eudev.xml
===================================================================
--- chapter08/eudev.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/eudev.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -25,5 +25,5 @@
 
     <para>The Eudev package contains programs for dynamic creation of device
-    nodes.</para> 
+    nodes.</para>
 
     <segmentedlist>
@@ -77,5 +77,5 @@
 <screen><userinput remap="install">make install</userinput></screen>
 
-    <para>Install some custom rules and support files useful in an LFS 
+    <para>Install some custom rules and support files useful in an LFS
     environment:</para>
 
Index: chapter08/expect.xml
===================================================================
--- chapter08/expect.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/expect.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -63,5 +63,5 @@
         <term><parameter>--with-tcl=/usr/lib</parameter></term>
         <listitem>
-          <para>This parameter is needed to tell 
+          <para>This parameter is needed to tell
           <command>configure</command> where the
           <command>tclConfig.sh</command> script is located.</para>
Index: chapter08/file.xml
===================================================================
--- chapter08/file.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/file.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -41,4 +41,8 @@
   <sect2 role="installation">
     <title>Installation of File</title>
+
+    <para>First, fix a few regressions in File:</para>
+
+<screen><userinput remap="pre">patch -Np1 -i ../file-&file-version;-upstream_fixes-1.patch</userinput></screen>
 
     <para>Prepare File for compilation:</para>
Index: chapter08/gcc.xml
===================================================================
--- chapter08/gcc.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/gcc.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -134,5 +134,5 @@
     <para>Test the results as a non-privileged user, but do not stop at errors:</para>
 
-<screen><userinput remap="test">chown -Rv tester . 
+<screen><userinput remap="test">chown -Rv tester .
 su tester -c "PATH=$PATH make -k check"</userinput></screen>
 
@@ -204,5 +204,5 @@
   -->
     <para>Add a compatibility symlink to enable building programs with
-    Link Time Optimization (LTO):</para> 
+    Link Time Optimization (LTO):</para>
 
 <screen><userinput remap="install">ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/&gcc-version;/liblto_plugin.so \
@@ -371,5 +371,5 @@
         and libubsan.{a,so}</seg>
 
-        <seg>/usr/include/c++, /usr/lib/gcc, /usr/libexec/gcc, and 
+        <seg>/usr/include/c++, /usr/lib/gcc, /usr/libexec/gcc, and
         /usr/share/gcc-&gcc-version;</seg>
       </seglistitem>
Index: chapter08/glibc.xml
===================================================================
--- chapter08/glibc.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/glibc.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -47,5 +47,5 @@
 
     <screen><userinput remap="pre">sed -e '/NOTIFY_REMOVED)/s/)/ \&amp;\&amp; data.attr != NULL)/' \
-    -i sysdeps/unix/sysv/linux/mq_notify.c</userinput></screen> 
+    -i sysdeps/unix/sysv/linux/mq_notify.c</userinput></screen>
 
     <para>Some of the Glibc programs use the non-FHS compliant
@@ -56,5 +56,5 @@
 <screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen>
 
-    <para>The Glibc documentation recommends building Glibc 
+    <para>The Glibc documentation recommends building Glibc
     in a dedicated build directory:</para>
 
@@ -90,5 +90,5 @@
         <term><parameter>--disable-werror</parameter></term>
         <listitem>
-          <para>This option disables the -Werror option passed to 
+          <para>This option disables the -Werror option passed to
           GCC.  This is necessary for running the test suite.</para>
         </listitem>
@@ -108,5 +108,5 @@
         <term><parameter>--enable-stack-protector=strong</parameter></term>
         <listitem>
-          <para>This option increases system security by adding 
+          <para>This option increases system security by adding
           extra code to check for buffer overflows, such as stack
           smashing attacks.</para>
@@ -158,5 +158,5 @@
     <para>You may see some test failures. The Glibc test suite is
     somewhat dependent on the host system. A few failures out of
-    over 4200 tests can generally be ignored. This is a list of the 
+    over 4200 tests can generally be ignored. This is a list of the
     most common issues seen for recent versions of LFS:</para>
 
@@ -164,10 +164,10 @@
 
       <listitem>
-        <para><emphasis>io/tst-lchmod</emphasis> 
+        <para><emphasis>io/tst-lchmod</emphasis>
         is known to fail in the LFS chroot environment.</para>
       </listitem>
 
       <listitem>
-        <para><emphasis>misc/tst-ttyname</emphasis> 
+        <para><emphasis>misc/tst-ttyname</emphasis>
         is known to fail in the LFS chroot environment.</para>
       </listitem>
@@ -181,5 +181,5 @@
         <para>The <emphasis>rt/tst-cputimer{1,2,3}</emphasis> tests depend on
         the host system kernel. Kernels 4.14.91&ndash;4.14.96,
-        4.19.13&ndash;4.19.18, and 4.20.0&ndash;4.20.5 are known to 
+        4.19.13&ndash;4.19.18, and 4.20.0&ndash;4.20.5 are known to
         cause these tests to fail.
         </para>
@@ -221,5 +221,5 @@
 mkdir -pv /var/cache/nscd</userinput></screen>
 
-    <para revision="systemd">Install the systemd support files for 
+    <para revision="systemd">Install the systemd support files for
     <command>nscd</command>:</para>
 
@@ -295,11 +295,11 @@
     when you need them. For instance, the following two locales are
     needed for some tests later in this chapter:</para>
- 
+
 <screen role="nodump"><userinput remap="locale-full">localedef -i POSIX -f UTF-8 C.UTF-8 2> /dev/null || true
 localedef -i ja_JP -f SHIFT_JIS ja_JP.SIJS 2> /dev/null || true</userinput></screen>
 
-    <note><para>Glibc now uses libidn2 when resolving internationalized 
+    <note><para>Glibc now uses libidn2 when resolving internationalized
     domain names.  This is a run time dependency.  If this capability
-    is needed, the instructions for installing libidn2 are in the 
+    is needed, the instructions for installing libidn2 are in the
     <ulink url="&blfs-book;general/libidn2.html">BLFS libidn2 page</ulink>.
     </para></note>
@@ -637,5 +637,5 @@
       <seglistitem>
         <seg>catchsegv, gencat, getconf, getent, iconv, iconvconfig, ldconfig,
-        ldd, lddlibc4, locale, localedef, makedb, mtrace, nscd, 
+        ldd, lddlibc4, locale, localedef, makedb, mtrace, nscd,
         pcprofiledump, pldd, sln, sotruss, sprof, tzselect, xtrace,
         zdump, and zic</seg>
@@ -1107,5 +1107,4 @@
           many different Unix utilities. These functions are now in
           <filename class="libraryfile">libc</filename></para>
-          
           <indexterm zone="ch-system-glibc libutil">
             <primary sortas="c-libutil">libutil</primary>
Index: chapter08/gmp.xml
===================================================================
--- chapter08/gmp.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/gmp.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -54,5 +54,5 @@
       <para>The default settings of GMP produce libraries optimized for
       the host processor.  If libraries suitable for processors less
-      capable than the host's CPU are desired, generic libraries can be 
+      capable than the host's CPU are desired, generic libraries can be
       created by running the following:
 
@@ -101,5 +101,5 @@
 
 <screen><userinput remap="test">make check 2>&amp;1 | tee gmp-check-log</userinput></screen>
- 
+
     <caution><para>The code in gmp is highly optimized for the processor where
     it is built. Occasionally, the code that detects the processor misidentifies
Index: chapter08/grub.xml
===================================================================
--- chapter08/grub.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/grub.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -107,9 +107,9 @@
 
        <seg>grub-bios-setup,      grub-editenv,    grub-file,        grub-fstest,
-            grub-glue-efi,        grub-install,    grub-kbdcomp,     grub-macbless,   
+            grub-glue-efi,        grub-install,    grub-kbdcomp,     grub-macbless,
             grub-menulst2cfg,     grub-mkconfig,
                                   grub-mkimage,    grub-mklayout,    grub-mknetdir,
             grub-mkpasswd-pbkdf2, grub-mkrelpath,  grub-mkrescue,    grub-mkstandalone,
-            grub-ofpathname,      grub-probe,      grub-reboot,      grub-render-label, 
+            grub-ofpathname,      grub-probe,      grub-reboot,      grub-render-label,
             grub-script-check,
             grub-set-default,     grub-sparc64-setup, and grub-syslinux2cfg</seg>
Index: chapter08/gzip.xml
===================================================================
--- chapter08/gzip.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/gzip.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -67,5 +67,5 @@
 
       <seglistitem>
-        <seg>gunzip, gzexe, gzip, uncompress (hard link with gunzip), zcat, zcmp, 
+        <seg>gunzip, gzexe, gzip, uncompress (hard link with gunzip), zcat, zcmp,
         zdiff, zegrep, zfgrep, zforce, zgrep, zless, zmore, and znew</seg>
       </seglistitem>
Index: chapter08/inetutils.xml
===================================================================
--- chapter08/inetutils.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/inetutils.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -129,5 +129,5 @@
 
       <seglistitem>
-        <seg>dnsdomainname, ftp, ifconfig, hostname, ping, ping6, 
+        <seg>dnsdomainname, ftp, ifconfig, hostname, ping, ping6,
         talk, telnet, tftp, and traceroute</seg>
       </seglistitem>
Index: chapter08/iproute2.xml
===================================================================
--- chapter08/iproute2.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/iproute2.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -44,6 +44,6 @@
     <para>The <command>arpd</command> program included in this package will not
     be built since it is dependent on Berkeley DB, which is not installed in
-    LFS. However, a directory for <command>arpd</command> and a man page will still 
-    be installed. Prevent this by running the commands below. 
+    LFS. However, a directory for <command>arpd</command> and a man page will still
+    be installed. Prevent this by running the commands below.
     If the <command>arpd</command> binary is needed,
     instructions for compiling Berkeley DB can be found in the BLFS Book at
@@ -54,5 +54,5 @@
 rm -fv man/man8/arpd.8</userinput></screen>
 
-    <para>It is also necessary to disable building two modules that 
+    <para>It is also necessary to disable building two modules that
     require <ulink url="&blfs-book;postlfs/iptables.html"/>.</para>
 
Index: chapter08/kbd.xml
===================================================================
--- chapter08/kbd.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/kbd.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -117,5 +117,5 @@
         setfont, setkeycodes, setleds, setmetamode, setvtrgb,
         showconsolefont, showkey, unicode_start, and unicode_stop</seg>
-        <seg>/usr/share/consolefonts, /usr/share/consoletrans, /usr/share/keymaps, 
+        <seg>/usr/share/consolefonts, /usr/share/consoletrans, /usr/share/keymaps,
         /usr/share/doc/kbd-&kbd-version;,  and /usr/share/unimaps</seg>
       </seglistitem>
Index: chapter08/kmod.xml
===================================================================
--- chapter08/kmod.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/kmod.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -164,5 +164,5 @@
 
       <seglistitem>
-        <seg>depmod (link to kmod), insmod (link to kmod), kmod, 
+        <seg>depmod (link to kmod), insmod (link to kmod), kmod,
         lsmod (link to kmod), modinfo (link to kmod), modprobe (link to kmod),
         and rmmod (link to kmod)</seg>
Index: chapter08/libelf.xml
===================================================================
--- chapter08/libelf.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/libelf.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -56,5 +56,5 @@
 
     <para>To test the results, issue:</para>
-    
+
 <screen><userinput remap="test">make check</userinput></screen>
 
Index: chapter08/libffi.xml
===================================================================
--- chapter08/libffi.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/libffi.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -67,7 +67,7 @@
           is not specified, the system is guessed and the code generated
           may not be correct for some systems.  If the generated code
-          will be copied from the native system to a less capable 
-          system, use the less capable system as a parameter. For details 
-          about alternative system types, see <ulink 
+          will be copied from the native system to a less capable
+          system, use the less capable system as a parameter. For details
+          about alternative system types, see <ulink
           url='https://gcc.gnu.org/onlinedocs/gcc-&gcc-version;/gcc/x86-Options.html'>
           the x86 options in the GCC manual</ulink>.</para>
Index: chapter08/libtool.xml
===================================================================
--- chapter08/libtool.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/libtool.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -62,5 +62,5 @@
 
     <para>Five tests are known to fail in the LFS build environment due
-    to a circular dependency, but all tests pass if rechecked after 
+    to a circular dependency, but all tests pass if rechecked after
     automake is installed.</para>
 
Index: chapter08/man-db.xml
===================================================================
--- chapter08/man-db.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/man-db.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -101,5 +101,5 @@
         <term><parameter>--with-systemd...</parameter></term>
         <listitem>
-          <para>These parameters prevent installing unneeded systemd 
+          <para>These parameters prevent installing unneeded systemd
           directories and files.</para>
         </listitem>
Index: chapter08/meson.xml
===================================================================
--- chapter08/meson.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/meson.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -70,5 +70,5 @@
     <variablelist>
       <title>The meaning of the install parameters:</title>
-      
+
       <varlistentry>
         <term><parameter>--root=dest</parameter></term>
Index: chapter08/ncurses.xml
===================================================================
--- chapter08/ncurses.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/ncurses.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -133,5 +133,5 @@
       libraries since no package installed by compiling from sources would link
       against them at runtime. However, the only known binary-only
-      applications that link against non-wide-character Ncurses libraries 
+      applications that link against non-wide-character Ncurses libraries
       require version 5.  If you must have such libraries because of some binary-only
       application or to be compliant with LSB, build the package again with the
@@ -144,5 +144,5 @@
             --without-debug  \
             --without-cxx-binding \
-            --with-abi-version=5 
+            --with-abi-version=5
 make sources libs
 cp -av lib/lib*.so.5* /usr/lib</userinput></screen>
@@ -251,25 +251,25 @@
       <seglistitem>
         <seg>
-           captoinfo (link to tic), 
-           clear, 
-           infocmp, 
+           captoinfo (link to tic),
+           clear,
+           infocmp,
            infotocap (link to tic),
-           ncursesw6-config, 
-           reset (link to tset), 
-           tabs, 
-           tic, 
-           toe, 
-           tput, and 
+           ncursesw6-config,
+           reset (link to tset),
+           tabs,
+           tic,
+           toe,
+           tput, and
            tset
         </seg>
         <seg>
            libcursesw.so (symlink and linker script to libncursesw.so),
-           libformw.so, 
-           libmenuw.so, 
+           libformw.so,
+           libmenuw.so,
            libncursesw.so,
            libpanelw.so, and their non-wide-character counterparts without "w"
               in the library names.</seg>
         <seg>
-           /usr/share/tabset, 
+           /usr/share/tabset,
            /usr/share/terminfo, and
            /usr/share/doc/ncurses-&ncurses-version;
Index: chapter08/ninja.xml
===================================================================
--- chapter08/ninja.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/ninja.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -51,5 +51,5 @@
 
     <para>When run, ninja normally runs a maximum number of processes
-    in parallel.  By default this is the number of cores on the system 
+    in parallel.  By default this is the number of cores on the system
     plus two.  In some cases this can overheat a CPU or run a system out
     of memory.  If run from the command line, passing a -jN parameter
@@ -58,5 +58,5 @@
 
     <para>Using the <emphasis>optional</emphasis> procedure below allows a user to
-    limit the number of parallel processes via an environment variable, 
+    limit the number of parallel processes via an environment variable,
     NINJAJOBS.  <emphasis role="bold">For example</emphasis>, setting:
 
@@ -65,5 +65,5 @@
     will limit ninja to four parallel processes.</para>
 
-    <para>If desired, add the capability to use the environment variable 
+    <para>If desired, add the capability to use the environment variable
     NINJAJOBS by running:</para>
 
Index: chapter08/perl.xml
===================================================================
--- chapter08/perl.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/perl.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -47,5 +47,5 @@
 <screen><userinput remap="pre">patch -Np1 -i ../&perl-fix-patch;</userinput></screen>
 
-    <para>This version of Perl now builds the Compress::Raw::Zlib and 
+    <para>This version of Perl now builds the Compress::Raw::Zlib and
     Compress::Raw::BZip2 modules. By
     default Perl will use an internal copy of the sources for the build.
@@ -90,5 +90,5 @@
         <term><parameter>-Dpager="/usr/bin/less -isR"</parameter></term>
         <listitem>
-          <para>This ensures that <userinput>less</userinput> is used instead 
+          <para>This ensures that <userinput>less</userinput> is used instead
           of <userinput>more</userinput>.</para>
         </listitem>
Index: chapter08/pkgmgt.xml
===================================================================
--- chapter08/pkgmgt.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/pkgmgt.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -112,5 +112,5 @@
       library):</para>
 
-<screen><userinput role="nodump">grep -l  -e '<replaceable>libfoo</replaceable>.*deleted' /proc/*/maps |
+<screen role="nodump"><userinput>grep -l  -e '<replaceable>libfoo</replaceable>.*deleted' /proc/*/maps |
    tr -cd 0-9\\n | xargs -r ps u</userinput></screen>
 
Index: chapter08/procps.xml
===================================================================
--- chapter08/procps.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/procps.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -29,5 +29,5 @@
     <note>
       <para>This package extracts to the directory
-      <filename class="directory">procps-3.3.17</filename>, 
+      <filename class="directory">procps-3.3.17</filename>,
       not the expected
       <filename class="directory">procps-ng-3.3.17</filename>.</para>
@@ -94,5 +94,5 @@
     <para>Five tests related to pkill are known to fail due to a problem
     with tests that were not updated.</para>
- 
+
     <para>Install the package:</para>
 
Index: chapter08/python.xml
===================================================================
--- chapter08/python.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/python.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -104,5 +104,5 @@
     <para>If desired, install the preformatted documentation:</para>
 
-<screen><userinput remap="install">install -v -dm755 /usr/share/doc/python-&python-version;/html 
+<screen><userinput remap="install">install -v -dm755 /usr/share/doc/python-&python-version;/html
 
 tar --strip-components=1  \
@@ -118,7 +118,7 @@
       <term><option>--no-same-owner</option> and <option>--no-same-permissions</option></term>
       <listitem>
-        <para>Ensure the installed files have the correct ownership and 
+        <para>Ensure the installed files have the correct ownership and
         permissions.  Without these options, using <application>tar</application>
-        will install the package files with the upstream creator's values. 
+        will install the package files with the upstream creator's values.
         </para>
       </listitem>
@@ -145,5 +145,5 @@
         </seg>
         <seg>
-          /usr/include/python&python-minor;, 
+          /usr/include/python&python-minor;,
           /usr/lib/python3, and
           /usr/share/doc/python-&python-version;
@@ -163,5 +163,5 @@
             is a <application>Python</application> program that reads
             <application>Python 2.x</application> source code and applies a
-            series of fixes to transform it into 
+            series of fixes to transform it into
             valid <application>Python 3.x</application> code
           </para>
Index: chapter08/revisedchroot.xml
===================================================================
--- chapter08/revisedchroot.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/revisedchroot.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -16,5 +16,5 @@
 
   <para>Now log out and reenter the chroot environment with an updated
-  chroot command.  From now on, use this updated chroot command any time 
+  chroot command.  From now on, use this updated chroot command any time
   you need to reenter the chroot environment after exiting:</para>
 
@@ -58,5 +58,5 @@
 <screen><userinput>find /usr -depth -name $(uname -m)-lfs-linux-gnu\* | xargs rm -rf</userinput></screen>
 
-   <para>Finally, remove the temporary 'tester' user account created at the 
+   <para>Finally, remove the temporary 'tester' user account created at the
    beginning of the previous chapter.</para>
 
Index: chapter08/stripping.xml
===================================================================
--- chapter08/stripping.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/stripping.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -11,5 +11,5 @@
   <title>Stripping</title>
 
-  <para>This section is optional.  If the intended user is not a 
+  <para>This section is optional.  If the intended user is not a
   programmer and does not plan to do
   any debugging on the system software, the system size can be decreased
@@ -25,7 +25,7 @@
 
   <para>The debugging symbols for selected libraries are placed
-  in separate files.  This debugging information is needed if running 
-  regression tests that use <ulink 
-  url='&blfs-book;/general/valgrind.html'>valgrind</ulink> or <ulink 
+  in separate files.  This debugging information is needed if running
+  regression tests that use <ulink
+  url='&blfs-book;/general/valgrind.html'>valgrind</ulink> or <ulink
   url='&blfs-book;/general/gdb.html'>gdb</ulink> later in BLFS.
   </para>
@@ -42,5 +42,5 @@
 
   <note><para>The ELF loader's name is ld-linux-x86-64.so.2 on 64-bit systems
-  and ld-linux.so.2 on 32-bit systems.  The contruct below selects the 
+  and ld-linux.so.2 on 32-bit systems.  The contruct below selects the
   correct name for the current architecture.</para></note>
 
@@ -51,8 +51,8 @@
              libc.so.6
              libthread_db.so.1
-             libquadmath.so.&libquadmath-version; 
+             libquadmath.so.&libquadmath-version;
              libstdc++.so.&libstdcpp-version;
-             libitm.so.&libitm-version; 
-             libatomic.so.&libatomic-version;" 
+             libitm.so.&libitm-version;
+             libatomic.so.&libatomic-version;"
 
 cd /usr/lib
@@ -125,7 +125,7 @@
          $(find /usr/{bin,sbin,libexec} -type f); do
     case "$online_usrbin $online_usrlib $save_usrlib" in
-        *$(basename $i)* ) 
+        *$(basename $i)* )
             ;;
-        * ) strip --strip-unneeded $i 
+        * ) strip --strip-unneeded $i
             ;;
     esac
Index: chapter08/systemd.xml
===================================================================
--- chapter08/systemd.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/systemd.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -206,5 +206,5 @@
     systemd-networkd:</para>
     <!-- Observed halting startup with dhcpcd handling the primary NIC -->
- 
+
 <screen><userinput remap="adjust">systemctl disable systemd-time-wait-sync.service</userinput></screen>
 
@@ -214,5 +214,5 @@
     <para>Prevent systemd from resetting the maximum PID value which causes
     some problems with packages and units in BLFS:</para>
-    
+
 <screen><userinput remap="adjust">rm -f /usr/lib/sysctl.d/50-pid-max.conf</userinput></screen>
 -->
@@ -379,6 +379,6 @@
         /etc/sysctl.d, /etc/systemd, /etc/tmpfiles.d, /etc/udev,
         /etc/xdg/systemd, /usr/lib/systemd, /usr/lib/udev, /usr/include/systemd,
-        /usr/lib/binfmt.d, /usr/lib/environment.d, /usr/lib/kernel, 
-        /usr/lib/modules-load.d, /usr/lib/sysctl.d, /usr/lib/systemd, 
+        /usr/lib/binfmt.d, /usr/lib/environment.d, /usr/lib/kernel,
+        /usr/lib/modules-load.d, /usr/lib/sysctl.d, /usr/lib/systemd,
         /usr/lib/tmpfiles.d,
         /usr/share/doc/systemd-&systemd-version;, /usr/share/factory,
@@ -451,5 +451,5 @@
         <listitem>
           <para>Is the first process to be started when the kernel has initialized
-          the hardware which takes over the boot process and starts all 
+          the hardware which takes over the boot process and starts all
           processes according to its configuration files. In this case, it starts
           systemd</para>
@@ -517,5 +517,5 @@
         <term><command>networkctl</command></term>
         <listitem>
-          <para>Is used to introspect and configure the state of the network 
+          <para>Is used to introspect and configure the state of the network
           links configured by systemd-networkd</para>
           <indexterm zone="ch-system-systemd networkctl">
@@ -605,5 +605,5 @@
         <term><command>shutdown</command></term>
         <listitem>
-          <para>Brings the system down in a safe and secure manner, signaling 
+          <para>Brings the system down in a safe and secure manner, signaling
           all processes and notifying all logged-in users</para>
           <indexterm zone="ch-system-systemd shutdown">
@@ -902,5 +902,5 @@
         <term><command>systemd-tty-ask-password-agent</command></term>
         <listitem>
-          <para>Is used to list and/or process pending systemd password 
+          <para>Is used to list and/or process pending systemd password
           requests</para>
           <indexterm zone="ch-system-systemd systemd-tty-ask-password-agent">
@@ -935,7 +935,7 @@
         <term><command>udevadm</command></term>
         <listitem>
-          <para>Is a generic udev administration tool which controls the udevd 
-          daemon, provides info from the Udev hardware database, monitors 
-          uevents, waits for uevents to finish, tests udev configuration, and 
+          <para>Is a generic udev administration tool which controls the udevd
+          daemon, provides info from the Udev hardware database, monitors
+          uevents, waits for uevents to finish, tests udev configuration, and
           triggers uevents for a given device</para>
           <indexterm zone="ch-system-systemd udevadm">
Index: chapter08/sysvinit.xml
===================================================================
--- chapter08/sysvinit.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/sysvinit.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -92,5 +92,5 @@
 
       <seglistitem>
-        <seg>bootlogd, fstab-decode, halt, init, killall5, 
+        <seg>bootlogd, fstab-decode, halt, init, killall5,
         poweroff (link to halt), reboot (link to halt), runlevel,
         shutdown, and telinit (link to init)</seg>
Index: chapter08/tcl.xml
===================================================================
--- chapter08/tcl.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/tcl.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -52,5 +52,5 @@
 
 <!--    <para>Note that the Tcl package used here is a minimal version needed
-    to run the LFS tests.  For the full package, see the  
+    to run the LFS tests.  For the full package, see the
     <ulink url='&blfs-book;general/tcl.html'>BLFS Tcl procedures</ulink>.</para>-->
 
@@ -141,7 +141,13 @@
 <screen><userinput remap="install">ln -sfv tclsh&tcl-major-version; /usr/bin/tclsh</userinput></screen>
 
-    <para>Finally, rename a man page that conflicts with a Perl man page:</para>
+    <para>Rename a man page that conflicts with a Perl man page:</para>
 
     <screen><userinput remap="install">mv /usr/share/man/man3/{Thread,Tcl_Thread}.3</userinput></screen>
+
+    <para>If you downloaded the optional documentation, install it by issuing
+    the following commands:</para>
+
+ <screen><userinput remap="install">mkdir -v -p /usr/share/doc/tcl-&tcl-version;
+cp -v -r  ../html/* /usr/share/doc/tcl-&tcl-version;</userinput></screen>
 
   </sect2>
@@ -156,9 +162,9 @@
       <seglistitem>
         <seg>
-          tclsh (link to tclsh&tcl-major-version;) and 
+          tclsh (link to tclsh&tcl-major-version;) and
           tclsh&tcl-major-version;
         </seg>
         <seg>
-          libtcl&tcl-major-version;.so and 
+          libtcl&tcl-major-version;.so and
           libtclstub&tcl-major-version;.a
         </seg>
Index: chapter08/texinfo.xml
===================================================================
--- chapter08/texinfo.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/texinfo.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -197,5 +197,5 @@
         <term><command>texi2any</command></term>
         <listitem>
-          <para>Translate Texinfo source documentation to 
+          <para>Translate Texinfo source documentation to
           various other formats</para>
           <indexterm zone="ch-system-texinfo texi2any">
Index: chapter08/util-linux.xml
===================================================================
--- chapter08/util-linux.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/util-linux.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -76,5 +76,5 @@
 
     <para>The --disable and --without options prevent warnings about
-    building components that require packages not in LFS or are 
+    building components that require packages not in LFS or are
     inconsistent with programs installed by other packages.</para>
 
@@ -257,12 +257,12 @@
         umount, uname26, unshare, utmpdump, uuidd, uuidgen, uuidparse, wall, wdctl, whereis,
         wipefs, x86_64, and zramctl</seg>
-        <seg>libblkid.so, libfdisk.so, libmount.so, 
+        <seg>libblkid.so, libfdisk.so, libmount.so,
         libsmartcols.so, and libuuid.so</seg>
-        <seg>/usr/include/blkid, 
-             /usr/include/libfdisk, 
-             /usr/include/libmount, 
-             /usr/include/libsmartcols, 
-             /usr/include/uuid, 
-             /usr/share/doc/util-linux-&util-linux-version;, 
+        <seg>/usr/include/blkid,
+             /usr/include/libfdisk,
+             /usr/include/libmount,
+             /usr/include/libsmartcols,
+             /usr/include/uuid,
+             /usr/share/doc/util-linux-&util-linux-version;,
          and /var/lib/hwclock</seg>
       </seglistitem>
@@ -711,6 +711,6 @@
         <term><command>last</command></term>
         <listitem>
-          <para>Shows which users last logged in (and out), searching back 
-          through the <filename>/var/log/wtmp</filename> file; it also shows 
+          <para>Shows which users last logged in (and out), searching back
+          through the <filename>/var/log/wtmp</filename> file; it also shows
           system boots, shutdowns, and run-level changes</para>
           <indexterm zone="ch-system-util-linux last">
@@ -723,5 +723,5 @@
         <term><command>lastb</command></term>
         <listitem>
-          <para>Shows the failed login attempts, as logged in 
+          <para>Shows the failed login attempts, as logged in
           <filename>/var/log/btmp</filename></para>
           <indexterm zone="ch-system-util-linux lastb">
@@ -878,5 +878,5 @@
         <term><command>mesg</command></term>
         <listitem>
-          <para>Controls whether other users can send messages to the current 
+          <para>Controls whether other users can send messages to the current
           user's terminal</para>
           <indexterm zone="ch-system-util-linux mesg">
@@ -1379,5 +1379,5 @@
         <term><command>zramctl</command></term>
         <listitem>
-          <para>A program to set up and control zram (compressed ram disk) 
+          <para>A program to set up and control zram (compressed ram disk)
           devices</para>
           <indexterm zone="ch-system-util-linux zramctl">
Index: chapter08/vim.xml
===================================================================
--- chapter08/vim.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/vim.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -63,6 +63,6 @@
 <screen><userinput remap="make">make</userinput></screen>
 
-    <para>To prepare the tests, ensure that user 
-    <systemitem class="username">tester</systemitem> can write 
+    <para>To prepare the tests, ensure that user
+    <systemitem class="username">tester</systemitem> can write
     to the source tree:</para>
 
@@ -134,5 +134,5 @@
 " Ensure defaults are set before customizing settings, not after
 source $VIMRUNTIME/defaults.vim
-let skip_defaults_vim=1 
+let skip_defaults_vim=1
 
 set nocompatible
Index: chapter08/xz.xml
===================================================================
--- chapter08/xz.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/xz.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -137,26 +137,26 @@
       <seglistitem>
         <seg>
-          lzcat (link to xz), 
-          lzcmp (link to xzdiff), 
-          lzdiff (link to xzdiff), 
-          lzegrep (link to xzgrep), 
+          lzcat (link to xz),
+          lzcmp (link to xzdiff),
+          lzdiff (link to xzdiff),
+          lzegrep (link to xzgrep),
           lzfgrep (link to xzgrep),
-          lzgrep (link to xzgrep), 
-          lzless (link to xzless), 
+          lzgrep (link to xzgrep),
+          lzless (link to xzless),
           lzma (link to xz),
-          lzmadec, 
-          lzmainfo, 
+          lzmadec,
+          lzmainfo,
           lzmore (link to xzmore),
-          unlzma (link to xz), 
-          unxz (link to xz), 
-          xz, 
+          unlzma (link to xz),
+          unxz (link to xz),
+          xz,
           xzcat (link to xz),
-          xzcmp (link to xzdiff), 
-          xzdec, 
-          xzdiff, 
+          xzcmp (link to xzdiff),
+          xzdec,
+          xzdiff,
           xzegrep (link to xzgrep),
-          xzfgrep (link to xzgrep), 
-          xzgrep, 
-          xzless, and 
+          xzfgrep (link to xzgrep),
+          xzgrep,
+          xzless, and
           xzmore</seg>
         <seg>
@@ -164,5 +164,5 @@
         </seg>
         <seg>
-          /usr/include/lzma and 
+          /usr/include/lzma and
           /usr/share/doc/xz-&xz-version;
          </seg>
Index: chapter08/zstd.xml
===================================================================
--- chapter08/zstd.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter08/zstd.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -122,8 +122,8 @@
 
       <seglistitem>
-        <seg>zstd, 
-             zstdcat (link to zstd), 
-             zstdgrep, 
-             zstdless, 
+        <seg>zstd,
+             zstdcat (link to zstd),
+             zstdgrep,
+             zstdless,
              zstdmt (link to zstd), and
              unzstd (link to zstd)
Index: chapter09/bootscripts.xml
===================================================================
--- chapter09/bootscripts.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/bootscripts.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -25,5 +25,5 @@
 
     <para>The LFS-Bootscripts package contains a set of scripts to start/stop
-    the LFS system at bootup/shutdown.  
+    the LFS system at bootup/shutdown.
     The configuration files and procedures needed to
     customize the boot process are described in the following sections.</para>
Index: chapter09/consoled.xml
===================================================================
--- chapter09/consoled.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/consoled.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -26,5 +26,5 @@
   url="http://www.tldp.org/HOWTO/HOWTO-INDEX/other-lang.html"/>.
   Examine the output of <command>localectl list-keymaps</command> for a list of
-  valid console keymaps. Look in the 
+  valid console keymaps. Look in the
   <filename class="directory">/usr/share/consolefonts</filename>
   directory for valid screen fonts.</para>
Index: chapter09/introduction.xml
===================================================================
--- chapter09/introduction.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/introduction.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -30,5 +30,5 @@
     system.</para>
 
-    <para>The <command>init</command> program is controlled by the 
+    <para>The <command>init</command> program is controlled by the
     <filename>/etc/inittab</filename> file and is organized into run levels that
     can be run by the user:</para>
@@ -62,8 +62,8 @@
     <itemizedlist>
       <listitem>
-          <para>May be slower to boot.  A medium speed base LFS system 
-          takes 8-12 seconds where the boot time is measured from the 
-          first kernel message to the login prompt.  Network 
-          connectivity is typically established about 2 seconds 
+          <para>May be slower to boot.  A medium speed base LFS system
+          takes 8-12 seconds where the boot time is measured from the
+          first kernel message to the login prompt.  Network
+          connectivity is typically established about 2 seconds
           after the login prompt.</para>
       </listitem>
Index: chapter09/locale.xml
===================================================================
--- chapter09/locale.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/locale.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -81,5 +81,5 @@
   before the telephone number in order to get into the country. If any of the
   commands above fail with a message similar to the one shown below, this means
-  that your locale was either not installed in Chapter&nbsp;8 or is not 
+  that your locale was either not installed in Chapter&nbsp;8 or is not
   supported by the default installation of Glibc.</para>
 
@@ -143,5 +143,5 @@
   mail with such characters from Mutt or Pine results in non-RFC-conforming
   messages being sent (the charset in the outgoing mail is indicated as <quote>unknown
-  8-bit</quote>). It's suggested that you use the <quote>C</quote> locale only 
+  8-bit</quote>). It's suggested that you use the <quote>C</quote> locale only
   if you are certain that you will never need 8-bit characters.</para>
 
Index: chapter09/network.xml
===================================================================
--- chapter09/network.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/network.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -32,5 +32,5 @@
     characteristics such as enp2s1. If you are not sure what your interface
     name is, you can always run <command>ip link</command> or <command>ls
-    /sys/class/net</command> after you have booted your system.  
+    /sys/class/net</command> after you have booted your system.
     </para></note>
 
@@ -158,19 +158,19 @@
        <primary sortas="e-/etc/hosts">/etc/hosts</primary>
      </indexterm>
-   
+
      <indexterm zone="ch-config-hosts">
        <primary sortas="d-localnet">localnet</primary>
        <secondary>/etc/hosts</secondary>
      </indexterm>
-   
+
      <indexterm zone="ch-config-hosts">
        <primary sortas="d-network">network</primary>
        <secondary>/etc/hosts</secondary>
      </indexterm>
-   
+
      <para>Decide on the IP address, fully-qualified domain name (FQDN), and
      possible aliases for use in the <filename>/etc/hosts</filename> file. The
      syntax is:</para>
-   
+
 <screen><literal>IP_address myhost.example.org aliases</literal></screen>
 
@@ -187,11 +187,11 @@
      <para>x can be any number in the range 16-31. y can be any number in the
      range 0-255.</para>
-   
+
      <para>A valid private IP address could be 192.168.1.1. A valid FQDN for
      this IP could be lfs.example.org.</para>
-   
+
      <para>Even if not using a network card, a valid FQDN is still required.
      This is necessary for certain programs to operate correctly.</para>
-   
+
      <para>Create the  <filename>/etc/hosts</filename> file by running:</para>
 
@@ -210,5 +210,5 @@
 
      <para>The <replaceable>&lt;192.168.1.1&gt;</replaceable>,
-     <replaceable>&lt;FQDN&gt;</replaceable>, and 
+     <replaceable>&lt;FQDN&gt;</replaceable>, and
      <replaceable>&lt;HOSTNAME&gt;</replaceable> values need to be
      changed for specific uses or requirements (if assigned an IP address by a
Index: chapter09/networkd.xml
===================================================================
--- chapter09/networkd.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/networkd.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -39,5 +39,5 @@
     <filename class="extension">.netdev</filename> and
     <filename class="extension">.network</filename> files. For detailed
-    descriptions and example contents of these configuration files, consult 
+    descriptions and example contents of these configuration files, consult
     the <filename>systemd-link(5)</filename>,
     <filename>systemd-netdev(5)</filename> and
@@ -58,5 +58,5 @@
         each type of connection.  For example, the classic interface
         name for a wired connection is eth0.  A wireless connection
-        will usually have the name wifi0 or wlan0. 
+        will usually have the name wifi0 or wlan0.
       </para>
 
@@ -76,6 +76,6 @@
           <para>
              Create a manual naming scheme, for example by naming the
-             interfaces something like "internet0", "dmz0", or "lan0". 
-             To do that, create .link files in /etc/systemd/network/ that 
+             interfaces something like "internet0", "dmz0", or "lan0".
+             To do that, create .link files in /etc/systemd/network/ that
              select an explicit name or a better naming scheme for your
              network interfaces. For example:
@@ -92,5 +92,5 @@
 
           <para>
-             See the man page systemd.link(5) for more information. 
+             See the man page systemd.link(5) for more information.
           </para>
         </listitem>
@@ -98,5 +98,5 @@
         <listitem>
           <para>
-            In /boot/grub/grub.cfg, pass the option net.ifnames=0 on the 
+            In /boot/grub/grub.cfg, pass the option net.ifnames=0 on the
             kernel command line.
           </para>
@@ -210,5 +210,5 @@
       There will often be more than one entry (requirements demand secondary
       servers for fallback capability). If you only need or want one DNS server,
-      remove the second <emphasis>nameserver</emphasis> line from the file. 
+      remove the second <emphasis>nameserver</emphasis> line from the file.
       The IP address may also be a router on the local network. Another option
       is to use the Google Public DNS service using the IP addresses below as
@@ -253,10 +253,10 @@
        <primary sortas="e-/etc/hosts">/etc/hosts</primary>
      </indexterm>
-   
+
      <indexterm zone="ch-config-hosts">
        <primary sortas="d-localnet">localnet</primary>
        <secondary>/etc/hosts</secondary>
      </indexterm>
-   
+
      <indexterm zone="ch-config-hosts">
        <primary sortas="d-network">network</primary>
Index: chapter09/profile.xml
===================================================================
--- chapter09/profile.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/profile.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -104,5 +104,5 @@
   before the telephone number in order to get into the country. If any of the
   commands above fail with a message similar to the one shown below, this means
-  that your locale was either not installed in <xref linkend="ch-system-glibc"/> 
+  that your locale was either not installed in <xref linkend="ch-system-glibc"/>
   or is not supported by the default installation of Glibc.</para>
 
Index: chapter09/symlinks.xml
===================================================================
--- chapter09/symlinks.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/symlinks.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -23,5 +23,5 @@
     and the Realtek card becomes eth1. In some cases, after a reboot the cards
     could get renumbered the other way around.</para>
-    
+
     <para>In the new naming scheme, typical network device names would then
     be something like enp5s0 or wlp3s0.  If this naming convention is not
@@ -31,12 +31,12 @@
     <sect3>
       <title>Disabling Persistent Naming on the Kernel Command Line</title>
-   
+
       <para>The traditional naming scheme using eth0, eth1, etc can be
-      restored by adding <userinput>net.ifnames=0</userinput> on the 
+      restored by adding <userinput>net.ifnames=0</userinput> on the
       kernel command line.  This is most appropriate for those systems
       that have only one ethernet device of the same type.  Laptops
-      often have multiple ethernet connections that are named eth0 and 
-      wlan0 and are also candidates for this method.  The command line 
-      is passed in the GRUB configuration file. 
+      often have multiple ethernet connections that are named eth0 and
+      wlan0 and are also candidates for this method.  The command line
+      is passed in the GRUB configuration file.
       See <xref linkend="grub-cfg"/>.</para>
     </sect3>
@@ -44,5 +44,5 @@
     <sect3>
       <title>Creating Custom Udev Rules</title>
-   
+
       <para>The naming scheme can be customized by creating custom udev
       rules.  A script has been included that generates the initial rules.
@@ -62,5 +62,5 @@
       are not consistently assigned.  In these cases, this method cannot
       be used.</para></note>
-  
+
       <para>The file begins with a comment block followed by two lines for each
       NIC. The first line for each NIC is a commented description showing its
@@ -70,9 +70,9 @@
       interface; this information is only for reference. The second line is the
       udev rule that matches this NIC and actually assigns it a name.</para>
-  
+
       <para>All udev rules are made up of several keys, separated by commas and
       optional whitespace. This rule's keys and an explanation of each of them
       are as follows:</para>
-  
+
       <itemizedlist>
         <listitem>
@@ -107,5 +107,5 @@
         </listitem>
       </itemizedlist>
-  
+
       <para>The value of <literal>NAME</literal> is the important part. Make sure
       you know which name has been assigned to each of your network cards before
Index: chapter09/systemd-custom.xml
===================================================================
--- chapter09/systemd-custom.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/systemd-custom.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -51,5 +51,5 @@
 
     <para>By default, <filename class="directory">/tmp</filename> is created as
-    a tmpfs. If this is not desired, it can be overridden by executing the 
+    a tmpfs. If this is not desired, it can be overridden by executing the
     following command:</para>
 
@@ -57,5 +57,5 @@
 
     <para>Alternatively, if a separate partition for
-    <filename class="directory">/tmp</filename> is desired, specify that 
+    <filename class="directory">/tmp</filename> is desired, specify that
     partition in a <filename>/etc/fstab</filename> entry.</para>
 
@@ -82,7 +82,7 @@
       <listitem><para>systemd-tmpfiles-setup.service</para></listitem>
     </itemizedlist>
-  
+
     <para>The system location for the configuration files is
-    <filename>/usr/lib/tmpfiles.d/*.conf</filename>. The local 
+    <filename>/usr/lib/tmpfiles.d/*.conf</filename>. The local
     configuration files are in
     <filename class="directory">/etc/tmpfiles.d</filename>. Files in
@@ -95,7 +95,7 @@
     <para>
       Note that the syntax for the
-      <filename>/usr/lib/tmpfiles.d/*.conf</filename> files can be 
+      <filename>/usr/lib/tmpfiles.d/*.conf</filename> files can be
       confusing.  For example, the default deletion of files in the /tmp directory
-      is located in <filename>/usr/lib/tmpfiles.d/tmp.conf</filename> with 
+      is located in <filename>/usr/lib/tmpfiles.d/tmp.conf</filename> with
       the line:
 
@@ -149,5 +149,5 @@
     systems, systemd uses a unified format for different types of startup
     files (or units). The command <command>systemctl</command> is used to
-    enable, disable, control state, and obtain status of unit files. Here 
+    enable, disable, control state, and obtain status of unit files. Here
     are some examples of frequently used commands:</para>
 
Index: chapter09/udev.xml
===================================================================
--- chapter09/udev.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/udev.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -120,5 +120,5 @@
       ownership at whatever <systemitem
       class="filesystem">devtmpfs</systemitem> used initially.</para> </sect3>
-      
+
     <sect3 id="module-loading">
       <title>Module Loading</title>
@@ -224,10 +224,10 @@
       <para>Note that the <quote>softdep</quote> command also allows
       <literal>pre:</literal> dependencies, or a mixture of both
-      <literal>pre:</literal> and <literal>post:</literal> dependencies.  See 
+      <literal>pre:</literal> and <literal>post:</literal> dependencies.  See
       the <filename>modprobe.d(5)</filename> manual page for more information
       on <quote>softdep</quote> syntax and capabilities.</para>
 
-      <para revision="sysv">If the module in question is not a wrapper and is 
-      useful by itself, configure the <command>modules</command> bootscript to 
+      <para revision="sysv">If the module in question is not a wrapper and is
+      useful by itself, configure the <command>modules</command> bootscript to
       load this module on system boot. To do this, add the module name to the
       <filename>/etc/sysconfig/modules</filename> file on a separate line.
Index: chapter09/usage.xml
===================================================================
--- chapter09/usage.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter09/usage.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -25,5 +25,5 @@
     particular Linux distribution, they should work the same in LFS too. LFS has its
     own way of doing things, but it respects generally accepted standards.</para>
-  
+
     <para>SysVinit (which will be referred to as <quote>init</quote> from now on)
     works using a run-levels scheme. There are seven (numbered 0 to 6) run-levels
@@ -234,5 +234,5 @@
       /sys/class/rtc.</para>
 
-      <para>For information on kernel module loading and udev, see 
+      <para>For information on kernel module loading and udev, see
       <xref linkend="module-loading"/>.</para>
   </sect2>
@@ -536,15 +536,15 @@
   <sect2 id="ch-config-createfiles">
     <title>Creating Files at Boot</title>
-  
+
     <indexterm zone="ch-config-createfiles">
       <primary sortas="d-createfiles">File creation at boot</primary>
       <secondary>configuring</secondary>
     </indexterm>
-  
+
     <para>At times, it is desirable to create files at boot time.  For instance,
     the <filename class="directory">/tmp/.ICE-unix</filename> directory
     is often needed.  This can be done by creating an entry in the
     <filename>/etc/sysconfig/createfiles</filename> configuration script.
-    The format of this file is embedded in the comments of the default 
+    The format of this file is embedded in the comments of the default
     configuration file.</para>
   </sect2>
@@ -552,10 +552,10 @@
   <sect2 id="ch-config-sysklogd">
     <title>Configuring the sysklogd Script</title>
-  
+
     <indexterm zone="ch-config-sysklogd">
       <primary sortas="d-sysklogd">sysklogd</primary>
       <secondary>configuring</secondary>
     </indexterm>
-  
+
     <para>The <filename>sysklogd</filename> script invokes the
     <command>syslogd</command> program as a part of System V initialization.  The
@@ -575,9 +575,9 @@
   <sect2 id="ch-config-site">
     <title>The rc.site File</title>
-  
+
     <indexterm zone="ch-config-site">
       <primary sortas="a-rc.site">rc.site</primary>
     </indexterm>
-  
+
     <para>The optional <filename>/etc/sysconfig/rc.site</filename> file contains
     settings that are automatically set for each SystemV boot script.  It can
@@ -588,16 +588,16 @@
     <filename>rc.site</filename>, the values in the script specific files have
     precedence. </para>
-  
+
     <para><filename>rc.site</filename> also contains parameters that can
     customize other aspects of the boot process.  Setting the IPROMPT variable
     will enable selective running of bootscripts.  Other options are described
     in the file comments.  The default version of the file is as follows:</para>
-  
+
     <!-- Use role to fix a pdf generation problem -->
     <screen role="auto">&site;</screen>
-  
+
     <sect3>
       <title>Customizing the Boot and Shutdown Scripts</title>
-  
+
       <para>The LFS boot scripts boot and shut down a system in a fairly
       efficient manner, but there are a few tweaks that you can make in the
@@ -605,7 +605,7 @@
       to your preferences. To do this, adjust the settings in
       the <filename>/etc/sysconfig/rc.site</filename> file above.</para>
-  
+
       <itemizedlist>
-  
+
       <listitem><para>During the boot script <filename>udev</filename>, there is
       a call to <command>udev settle</command> that requires some time to
@@ -614,5 +614,5 @@
       card, the boot process will probably not need to wait for this command.  To
       skip it, set the variable OMIT_UDEV_SETTLE=y.</para></listitem>
-  
+
       <listitem><para>The boot script <filename>udev_retry</filename> also runs
       <command>udev settle</command> by default.  This command is only needed by
@@ -623,10 +623,10 @@
       needed.  Skip the command by setting the variable OMIT_UDEV_RETRY_SETTLE=y.
       </para></listitem>
-  
+
       <listitem><para>By default, the file system checks are silent.  This can
       appear to be a delay during the bootup process.  To turn on the
       <command>fsck</command> output, set the variable VERBOSE_FSCK=y.
       </para></listitem>
-  
+
       <listitem><para>When rebooting, you may want to skip the filesystem check,
       <command>fsck</command>, completely.  To do this, either create the file
@@ -637,9 +637,9 @@
       the <parameter>-F</parameter> parameter instead of <parameter>-f</parameter>.
       </para>
-  
+
       <para>Setting the variable FASTBOOT=y will disable <command>fsck</command>
       during the boot process until it is removed.  This is not recommended
       on a permanent basis.</para></listitem>
-  
+
       <listitem><para>Normally, all files in the <filename
       class='directory'>/tmp</filename> directory are deleted at boot time.
@@ -647,5 +647,5 @@
       noticeable delay in the boot process.  To skip removing these files set the
       variable SKIPTMPCLEAN=y.</para></listitem>
-  
+
       <listitem><para>During shutdown, the <command>init</command> program sends
       a TERM signal to each program it has started (e.g. agetty), waits for a set
@@ -659,7 +659,7 @@
       script can be skipped by setting the parameter
       KILLDELAY=0.</para></listitem>
-  
+
       </itemizedlist>
-  
+
     </sect3>
   </sect2>
Index: chapter10/grub.xml
===================================================================
--- chapter10/grub.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter10/grub.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -43,6 +43,6 @@
     libisoburn</ulink> package.</para>
 
-<screen role="nodump"><userinput>cd /tmp 
-grub-mkrescue --output=grub-img.iso 
+<screen role="nodump"><userinput>cd /tmp
+grub-mkrescue --output=grub-img.iso
 xorriso -as cdrecord -v dev=/dev/cdrw blank=as_needed grub-img.iso</userinput></screen>
 
Index: chapter10/kernel.xml
===================================================================
--- chapter10/kernel.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter10/kernel.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -98,5 +98,4 @@
 
     <note>
-    
       <para>A good starting place for setting up the kernel configuration is to
       run <command>make defconfig</command>. This will set the base
@@ -116,5 +115,5 @@
    [*] Control Group support [CONFIG_CGROUPS]
    [ ] Enable deprecated sysfs features to support old userspace tools [CONFIG_SYSFS_DEPRECATED]
-   [*] Configure standard kernel features (expert users) [CONFIG_EXPERT] ---&gt;         
+   [*] Configure standard kernel features (expert users) [CONFIG_EXPERT] ---&gt;
       [*] open by fhandle syscalls [CONFIG_FHANDLE]
 Processor type and features  ---&gt;
@@ -298,9 +297,9 @@
 
     <note>
-      <para>In many cases, the configuration of the kernel will need to be 
+      <para>In many cases, the configuration of the kernel will need to be
       updated for packages that will be installed later in BLFS.  Unlike
       other packages, it is not necessary to remove the kernel source tree
-      after the newly built kernel is installed.</para>  
-    
+      after the newly built kernel is installed.</para>
+
       <para>If the kernel source tree is going to be retained, run
       <command>chown -R 0:0</command> on the <filename
Index: chapter11/reboot.xml
===================================================================
--- chapter11/reboot.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ chapter11/reboot.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -57,5 +57,5 @@
     within a comfortable GUI environment, install <ulink revision="sysv"
     url='&blfs-book;postlfs/openssh.html'>openssh</ulink><ulink revision="systemd"
-    url='&blfs-systemd-book;postlfs/openssh.html'>openssh</ulink>. 
+    url='&blfs-systemd-book;postlfs/openssh.html'>openssh</ulink>.
     </para></listitem>
 
Index: general.ent
===================================================================
--- general.ent	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ general.ent	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -14,10 +14,10 @@
 <!-- jhalfs needs a literal dash, not &ndash; -->
 
-<!ENTITY short-version   "svn">  <!-- Used below in &blfs-book; 
+<!ENTITY short-version   "svn">  <!-- Used below in &blfs-book;
                                       Change to x.y for release but not -rc releases -->
 <!ENTITY generic-version "development"> <!-- Use "development"  or "x.y[-pre{x}]" -->
 
 <!ENTITY short-versiond  "systemd">  <!--Change to stable-systemd for release  -->
-<!ENTITY generic-versiond "systemd"> 
+<!ENTITY generic-versiond "systemd">
 
 <!ENTITY lfs-root        "https://www.linuxfromscratch.org/">
@@ -52,5 +52,5 @@
 <!ENTITY before          "Must be installed before">
 <!ENTITY external        "Optional dependencies">
-                         
+
 <!ENTITY gnu             "https://ftp.gnu.org/gnu/">
 <!ENTITY gnu-software    "https://www.gnu.org/software/">
Index: lfs-latest-git.php
===================================================================
--- lfs-latest-git.php	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ lfs-latest-git.php	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -31,11 +31,11 @@
   foreach ( $lines as $line )
   {
-     if ( ! preg_match( $regex_match, $line ) ) continue; 
+     if ( ! preg_match( $regex_match, $line ) ) continue;
 
      // Isolate the version and put in an array
      $slice = preg_replace( $regex_replace, "$1", $line );
-     if ( $slice == $line ) continue; 
-
-     array_push( $a, $slice );     
+     if ( $slice == $line ) continue;
+
+     array_push( $a, $slice );
   }
 
@@ -99,5 +99,5 @@
   $max           = find_max( $lines, $regex_match, $regex_replace );
 
-  return "$dirpath/$max"; 
+  return "$dirpath/$max";
 }
 
@@ -113,6 +113,6 @@
 if ( $package == "e2fsprogs"  ) $dirpath = "https://sourceforge.net/projects/e2fsprogs/files/e2fsprogs/";
 if ( $package == "expat"      ) $dirpath = "http://sourceforge.net/projects/expat/files";
-if ( $package == "elfutils"   ) $dirpath = "https://sourceware.org/ftp/elfutils";  
-if ( $package == "expect"     ) $dirpath = "http://sourceforge.net/projects/expect/files";  
+if ( $package == "elfutils"   ) $dirpath = "https://sourceware.org/ftp/elfutils";
+if ( $package == "expect"     ) $dirpath = "http://sourceforge.net/projects/expect/files";
 if ( $package == "file"       ) $dirpath = "https://github.com/file/file/releases";
 if ( $package == "flex"       ) $dirpath = "https://github.com/westes/flex/releases";
@@ -139,6 +139,6 @@
 
   // Check for ftp
-  if ( preg_match( "/^ftp/", $dirpath ) ) 
-  { 
+  if ( preg_match( "/^ftp/", $dirpath ) )
+  {
     $dirpath  = substr( $dirpath, 6 );           // Remove ftp://
     $dirpath  = rtrim ( $dirpath, "/" );         // Trim any trailing slash
@@ -148,5 +148,5 @@
 
     $conn = ftp_connect( $server );
-    ftp_login( $conn, "anonymous", "" ); 
+    ftp_login( $conn, "anonymous", "" );
 
     // See if we need special handling
@@ -167,5 +167,5 @@
 
               // Get dir listing
-              $lines = ftp_rawlist ($conn, $path);              
+              $lines = ftp_rawlist ($conn, $path);
               $max   = find_max( $lines, $regexp, $regexp );
               break;
@@ -234,5 +234,5 @@
   }
 
-  if ( $package == "attr" ||  
+  if ( $package == "attr" ||
        $package == "acl"  )
   {
@@ -362,6 +362,6 @@
       }
 
-      else if ( preg_match( "/systemd-man-pages/", $file ) ) continue; 
-      else if ( preg_match( "/python/"         , $file ) ) continue; 
+      else if ( preg_match( "/systemd-man-pages/", $file ) ) continue;
+      else if ( preg_match( "/python/"         , $file ) ) continue;
 
       $version = preg_replace( $pattern, "$1", $file );   // Isolate version
Index: lfs-latest.php
===================================================================
--- lfs-latest.php	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ lfs-latest.php	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -31,11 +31,11 @@
   foreach ( $lines as $line )
   {
-     if ( ! preg_match( $regex_match, $line ) ) continue; 
+     if ( ! preg_match( $regex_match, $line ) ) continue;
 
      // Isolate the version and put in an array
      $slice = preg_replace( $regex_replace, "$1", $line );
-     if ( $slice == $line ) continue; 
-
-     array_push( $a, $slice );     
+     if ( $slice == $line ) continue;
+
+     array_push( $a, $slice );
   }
 
@@ -99,5 +99,5 @@
   $max           = find_max( $lines, $regex_match, $regex_replace );
 
-  return "$dirpath/$max"; 
+  return "$dirpath/$max";
 }
 
@@ -113,6 +113,6 @@
 if ( $package == "e2fsprogs"  ) $dirpath = "http://sourceforge.net/projects/e2fsprogs/files/e2fsprogs";
 if ( $package == "expat"      ) $dirpath = "http://sourceforge.net/projects/expat/files";
-if ( $package == "elfutils"   ) $dirpath = "https://sourceware.org/ftp/elfutils";  
-if ( $package == "expect"     ) $dirpath = "http://sourceforge.net/projects/expect/files";  
+if ( $package == "elfutils"   ) $dirpath = "https://sourceware.org/ftp/elfutils";
+if ( $package == "expect"     ) $dirpath = "http://sourceforge.net/projects/expect/files";
 if ( $package == "file"       ) $dirpath = "https://github.com/file/file/releases";
 if ( $package == "flex"       ) $dirpath = "https://github.com/westes/flex/releases";
@@ -136,6 +136,6 @@
 
   // Check for ftp
-  if ( preg_match( "/^ftp/", $dirpath ) ) 
-  { 
+  if ( preg_match( "/^ftp/", $dirpath ) )
+  {
     $dirpath  = substr( $dirpath, 6 );           // Remove ftp://
     $dirpath  = rtrim ( $dirpath, "/" );         // Trim any trailing slash
@@ -145,5 +145,5 @@
 
     $conn = ftp_connect( $server );
-    ftp_login( $conn, "anonymous", "" ); 
+    ftp_login( $conn, "anonymous", "" );
 
     // See if we need special handling
@@ -164,5 +164,5 @@
 
               // Get dir listing
-              $lines = ftp_rawlist ($conn, $path);              
+              $lines = ftp_rawlist ($conn, $path);
               $max   = find_max( $lines, $regexp, $regexp );
               break;
@@ -197,5 +197,5 @@
      }
 
-     //if ( $package == "bzip2" ) 
+     //if ( $package == "bzip2" )
      //{
      //   // Remove one directory
@@ -239,5 +239,5 @@
   }
 
-  if ( $package == "attr" ||  
+  if ( $package == "attr" ||
        $package == "acl"  )
   {
@@ -357,6 +357,6 @@
       }
 
-      else if ( preg_match( "/systemd-man-pages/", $file ) ) continue; 
-      else if ( preg_match( "/python/"         , $file ) ) continue; 
+      else if ( preg_match( "/systemd-man-pages/", $file ) ) continue;
+      else if ( preg_match( "/python/"         , $file ) ) continue;
 
       $version = preg_replace( $pattern, "$1", $file );   // Isolate version
Index: make-aux-files.sh
===================================================================
--- make-aux-files.sh	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ make-aux-files.sh	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -9,5 +9,5 @@
 # Create the tarball and clean up
 tar -cJf lfs-bootscripts-$version.tar.xz --exclude .svn lfs-bootscripts-$version
-mv lfs-bootscripts-$version bootscripts 
+mv lfs-bootscripts-$version bootscripts
 
 #rm -f udev-config*.bz2
Index: packages.ent
===================================================================
--- packages.ent	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ packages.ent	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -6,5 +6,5 @@
      Allowed deviation in SBUs : 10%
      Allowed deviation in disk usage : 2%
-     
+
      Suffixes:
      *-tmp-*     Package info for Temporary Tools
@@ -59,8 +59,8 @@
 <!ENTITY bash-fin-sbu "1.6 SBU">
 
-<!ENTITY bc-version "5.0.0">
+<!ENTITY bc-version "5.0.2">
 <!ENTITY bc-size "420 KB">
 <!ENTITY bc-url "https://github.com/gavinhoward/bc/releases/download/&bc-version;/bc-&bc-version;.tar.xz">
-<!ENTITY bc-md5 "8345bb81c576ddfc8c27e0842370603c">
+<!ENTITY bc-md5 "3b521d29aa4af4c4d5e96f7c3db3c607">
 <!ENTITY bc-home "https://git.yzena.com/gavin/bc">
 <!ENTITY bc-fin-du "6.7 MB">
@@ -79,8 +79,8 @@
 <!ENTITY binutils-fin-sbu "6.3 SBU">
 
-<!ENTITY bison-version "3.7.6">
-<!ENTITY bison-size "2,566 KB">
+<!ENTITY bison-version "3.8.1">
+<!ENTITY bison-size "2,735 KB">
 <!ENTITY bison-url "&gnu;bison/bison-&bison-version;.tar.xz">
-<!ENTITY bison-md5 "d61aa92e3562cb7292b004ce96173cf7">
+<!ENTITY bison-md5 "0ea56629a7136cc097668dba808afe3a">
 <!ENTITY bison-home "&gnu-software;bison/">
 <!ENTITY bison-tmp-du "50 MB">
@@ -241,8 +241,8 @@
 <!ENTITY libstdcpp-tmpp2-sbu "0.8 SBU">
 
-<!ENTITY gdbm-version "1.20">
-<!ENTITY gdbm-size "965 KB">
+<!ENTITY gdbm-version "1.21">
+<!ENTITY gdbm-size "983 KB">
 <!ENTITY gdbm-url "&gnu;gdbm/gdbm-&gdbm-version;.tar.gz">
-<!ENTITY gdbm-md5 "006c19b8b60828fd6916a16f3496bd3c">
+<!ENTITY gdbm-md5 "a285c6e2dfed78668664c0555a7d202b">
 <!ENTITY gdbm-home "&gnu-software;gdbm/">
 <!ENTITY gdbm-fin-du "11 MB">
@@ -312,8 +312,8 @@
 <!ENTITY grub-fin-sbu "0.8 SBU">
 
-<!ENTITY gzip-version "1.10">
-<!ENTITY gzip-size "757 KB">
+<!ENTITY gzip-version "1.11">
+<!ENTITY gzip-size "786 KB">
 <!ENTITY gzip-url "&gnu;gzip/gzip-&gzip-version;.tar.xz">
-<!ENTITY gzip-md5 "691b1221694c3394f1c537df4eee39d3">
+<!ENTITY gzip-md5 "d1e93996dba00cab0caa7903cd01d454">
 <!ENTITY gzip-home "&gnu-software;gzip/">
 <!ENTITY gzip-tmp-du "10 MB">
@@ -330,8 +330,8 @@
 <!ENTITY iana-etc-fin-sbu "less than 0.1 SBU">
 
-<!ENTITY inetutils-version "2.1">
-<!ENTITY inetutils-size "1,496 KB">
+<!ENTITY inetutils-version "2.2">
+<!ENTITY inetutils-size "1,494 KB">
 <!ENTITY inetutils-url "&gnu;inetutils/inetutils-&inetutils-version;.tar.xz">
-<!ENTITY inetutils-md5 "4e7676d1980e57c7df665e5c5c3c1047">
+<!ENTITY inetutils-md5 "de8c1b49cbde2b30e481c61c65357ad4">
 <!ENTITY inetutils-sha256 "01b9a4bc73a47e63f6e8a07b76122d9ad2a2e46ebf14870e9c91d660b5647a22">
 <!ENTITY inetutils-home "&gnu-software;inetutils/">
@@ -347,8 +347,8 @@
 <!ENTITY intltool-fin-sbu "less than 0.1 SBU">
 
-<!ENTITY iproute2-version "5.13.0">
-<!ENTITY iproute2-size "828 KB">
+<!ENTITY iproute2-version "5.14.0">
+<!ENTITY iproute2-size "834 KB">
 <!ENTITY iproute2-url "&kernel;linux/utils/net/iproute2/iproute2-&iproute2-version;.tar.xz">
-<!ENTITY iproute2-md5 "15fc3786303a173a14e180afe4cd2ecd">
+<!ENTITY iproute2-md5 "da53966eb3b08ac264f3e9df02e06bfa">
 <!ENTITY iproute2-home "&kernel;linux/utils/net/iproute2/">
 <!ENTITY iproute2-fin-du "15 MB">
@@ -396,15 +396,15 @@
 
 <!ENTITY lfs-bootscripts-version "20210608">      <!-- Scripts depend on this format -->
-<!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB">        
+<!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB">
 <!ENTITY lfs-bootscripts-url "&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.xz">
-<!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM">  
+<!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM">
 <!ENTITY lfs-bootscripts-home " ">
-<!ENTITY lfs-bootscripts-cfg-du "BOOTSCRIPTS-INSTALL-KB KB"> 
+<!ENTITY lfs-bootscripts-cfg-du "BOOTSCRIPTS-INSTALL-KB KB">
 <!ENTITY lfs-bootscripts-cfg-sbu "less than 0.1 SBU">
 
-<!ENTITY libcap-version "2.53">
-<!ENTITY libcap-size "153 KB">
+<!ENTITY libcap-version "2.57">
+<!ENTITY libcap-size "164 KB">
 <!ENTITY libcap-url "&kernel;linux/libs/security/linux-privs/libcap2/libcap-&libcap-version;.tar.xz">
-<!ENTITY libcap-md5 "094994d4554c6689cf98ae4f717b8e19">
+<!ENTITY libcap-md5 "e84ce311ec412cbe8340ea8ea31525d9">
 <!ENTITY libcap-home "https://sites.google.com/site/fullycapable/">
 <!ENTITY libcap-fin-du "3.2 MB">
@@ -436,11 +436,11 @@
 
 <!ENTITY linux-major-version "5">
-<!ENTITY linux-minor-version "13">
-<!ENTITY linux-patch-version "12">
+<!ENTITY linux-minor-version "14">
+<!ENTITY linux-patch-version "3">
 <!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">-->
 <!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;">
-<!ENTITY linux-size "116,545 KB">
+<!ENTITY linux-size "117,839 KB">
 <!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz">
-<!ENTITY linux-md5 "6e1728b2021ca19cc9273f080e6c44c7">
+<!ENTITY linux-md5 "b45b18effd1af9077de47f4bc496d2ab">
 <!ENTITY linux-home "https://www.kernel.org/">
 <!-- measured for 5.13.4 / gcc-11.1.0 on x86_64 : minimum is
@@ -598,12 +598,12 @@
 <!ENTITY psmisc-fin-sbu "less than 0.1 SBU">
 
-<!-- If python minor version changes, updates in python and 
+<!-- If python minor version changes, updates in python and
      meson pages will be needed: python3.6 and python3.6m -->
 
-<!ENTITY python-version "3.9.6">
+<!ENTITY python-version "3.9.7">
 <!ENTITY python-minor "3.9">
-<!ENTITY python-size "18,608 KB">
+<!ENTITY python-size "18,676 KB">
 <!ENTITY python-url "https://www.python.org/ftp/python/&python-version;/Python-&python-version;.tar.xz">
-<!ENTITY python-md5 "ecc29a7688f86e550d29dba2ee66cf80">
+<!ENTITY python-md5 "fddb060b483bc01850a3f412eea1d954">
 <!ENTITY python-home "https://www.python.org/">
 <!ENTITY python-tmp-du "347 MB">
@@ -612,6 +612,6 @@
 <!ENTITY python-fin-sbu "4.4 SBU">
 <!ENTITY python-docs-url "https://www.python.org/ftp/python/doc/&python-version;/python-&python-version;-docs-html.tar.bz2">
-<!ENTITY python-docs-md5 "0dae29e4c38af1b6b1a86b35c9e48923">
-<!ENTITY python-docs-size "6,692 KB">
+<!ENTITY python-docs-md5 "ef3ea6141ed362e4d12467b136ee70fe">
+<!ENTITY python-docs-size "6,791 KB">
 
 <!ENTITY readline-version "8.1">
@@ -637,5 +637,5 @@
 <!ENTITY shadow-url "&github;/shadow-maint/shadow/releases/download/v&shadow-version;/shadow-&shadow-version;.tar.xz">
 <!ENTITY shadow-md5 "126924090caf72f3de7e9261fd4e10ac">
-<!ENTITY shadow-home "https://shadow-maint.github.io/shadow/"> 
+<!ENTITY shadow-home "https://shadow-maint.github.io/shadow/">
 <!ENTITY shadow-fin-du "45 MB">
 <!ENTITY shadow-fin-sbu "0.2 SBU">
Index: part3intro/generalinstructions.xml
===================================================================
--- part3intro/generalinstructions.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ part3intro/generalinstructions.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -96,5 +96,5 @@
               <para>Using the <command>tar</command> program, extract the package
               to be built.  In <xref linkend="chapter-cross-tools"/> and
-              <xref linkend="chapter-temporary-tools"/>, ensure you are 
+              <xref linkend="chapter-temporary-tools"/>, ensure you are
               the <emphasis>lfs</emphasis> user when extracting the package.</para>
             </listitem>
Index: part3intro/toolchaintechnotes.xml
===================================================================
--- part3intro/toolchaintechnotes.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ part3intro/toolchaintechnotes.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -39,7 +39,7 @@
 
     <para>Cross-compilation involves some concepts that deserve a section on
-    their own. Although this section may be omitted in a first reading, it
-    is strongly suggested to come back to it later in order to get a full
-    grasp of the build process.</para>
+    their own. Although this section may be omitted in a first reading, 
+    coming back to it later will be beneficial to your full understanding of 
+    the process.</para>
 
     <para>Let us first define some terms used in this context:</para>
@@ -68,5 +68,5 @@
     <para>As an example, let us imagine the following scenario (sometimes
     referred to as <quote>Canadian Cross</quote>): we may have a
-    compiler on a slow machine only, let's call the machine A, and the compiler
+    compiler on a slow machine only, let's call it machine A, and the compiler
     ccA. We may have also a fast machine (B), but with no compiler, and we may
     want to produce code for another slow machine (C). To build a
@@ -142,5 +142,5 @@
       reader may wonder why a <quote>triplet</quote> refers to a four component
       name. The reason is history: initially, three component names were enough
-      to designate unambiguously a machine, but with new machines and systems
+      to designate a machine unambiguously, but with new machines and systems
       appearing, that proved insufficient. The word <quote>triplet</quote>
       remained. A simple way to determine your machine triplet is to run
@@ -157,7 +157,7 @@
       provided by Glibc finds and loads the shared libraries needed by a
       program, prepares the program to run, and then runs it. The name of the
-      dynamic linker for a 32-bit Intel machine will be <filename
-      class="libraryfile">ld-linux.so.2</filename> (<filename
-      class="libraryfile">ld-linux-x86-64.so.2</filename> for 64-bit systems). A
+      dynamic linker for a 32-bit Intel machine is <filename
+      class="libraryfile">ld-linux.so.2</filename> and is<filename
+      class="libraryfile">ld-linux-x86-64.so.2</filename> for 64-bit systems. A
       sure-fire way to determine the name of the dynamic linker is to inspect a
       random binary from the host system by running: <userinput>readelf -l
@@ -168,5 +168,5 @@
     </note>
 
-    <para>In order to fake a cross compilation, the name of the host triplet
+    <para>In order to fake a cross compilation in LFS, the name of the host triplet
     is slightly adjusted by changing the &quot;vendor&quot; field in the
     <envar>LFS_TGT</envar> variable. We also use the
@@ -212,5 +212,5 @@
     just a compiler, but also defines a standard library. In this book, the
     GNU C library, named glibc, is used. This library must
-    be compiled for the lfs machine, that is, using the cross compiler cc1. 
+    be compiled for the lfs machine, that is, using the cross compiler cc1.
     But the compiler itself uses an internal library implementing complex
     instructions not available in the assembler instruction set. This
@@ -296,5 +296,5 @@
     parameter passed to its configure script; e.g. in our case, the compiler
     will be <command>$LFS_TGT-gcc</command>. The binary tools and kernel
-    headers can be a bit more complicated. Therefore, take no risks and use
+    headers can be a bit more complicated. Therefore, we take no risks and use
     the available configure switches to enforce the correct selections. After
     the run of <command>configure</command>, check the contents of the
@@ -330,5 +330,5 @@
     libstdc++. Then temporary installations of programs needed for the proper
     operation of the toolchain are performed. From this point onwards, the
-    core toolchain is self-contained and self-hosted.  In 
+    core toolchain is self-contained and self-hosted. In
     <xref linkend="chapter-building-system"/>, final versions of all the
     packages needed for a fully functional system are built, tested and
Index: patches.ent
===================================================================
--- patches.ent	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ patches.ent	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -30,4 +30,8 @@
 <!ENTITY flex-fixes-patch-size "3.4 KB">
 -->
+
+<!ENTITY file-upstream-fixes-patch "file-&file-version;-upstream_fixes-1.patch">
+<!ENTITY file-upstream-fixes-md5 "d99090db596b9db2bed869662199a56a">
+<!ENTITY file-upstream-fixes-patch-size "4.0 KB">
 
 <!ENTITY gcc-upstream-fixes-patch "gcc-&gcc-version;-upstream_fixes-1.patch">
Index: pdf-fixups.sh
===================================================================
--- pdf-fixups.sh	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ pdf-fixups.sh	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -1,5 +1,5 @@
 #!/bin/bash
 
-if [ $# -lt 1 ] ; then 
+if [ $# -lt 1 ] ; then
   echo "This script needs the location of the fo file to update"
   exit 1
Index: process-scripts.sh
===================================================================
--- process-scripts.sh	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ process-scripts.sh	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -9,5 +9,5 @@
 do
   script=$(basename $s)
-  
+
   # Skip directories
   [ $script == 'network-devices' ] && continue
@@ -15,10 +15,10 @@
 
   # Disambiguate duplicate file names
-  [ $s == 'bootscripts/lfs/sysconfig/rc'         ] && script='rc-sysinit'; 
-  [ $s == 'bootscripts/lfs/sysconfig/modules'    ] && script='modules-sysinit'; 
-  [ $s == 'bootscripts/lfs/sysconfig/udev_retry' ] && script='config-udev-retry'; 
-  
+  [ $s == 'bootscripts/lfs/sysconfig/rc'         ] && script='rc-sysinit';
+  [ $s == 'bootscripts/lfs/sysconfig/modules'    ] && script='modules-sysinit';
+  [ $s == 'bootscripts/lfs/sysconfig/udev_retry' ] && script='config-udev-retry';
+
   sed  -e 's/\&/\&amp\;/g' -e 's/</\&lt\;/g'   -e 's/>/\&gt\;/g' \
        -e "s/'/\&apos\;/g" -e 's/"/\&quot\;/g' -e 's/\t/    /g'  \
-       $s > appendices/${script}.script 
+       $s > appendices/${script}.script
 done
Index: prologue/foreword.xml
===================================================================
--- prologue/foreword.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ prologue/foreword.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -11,5 +11,5 @@
   <title>Foreword</title>
 
-<para>My journey to learn and better understand Linux began 
+<para>My journey to learn and better understand Linux began
 back in 1998. I had just installed my first Linux distribution and had
 quickly become intrigued with the whole concept and philosophy behind
Index: prologue/organization.xml
===================================================================
--- prologue/organization.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ prologue/organization.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -52,7 +52,7 @@
 
     <para>Part V provides information about the book itself including
-    acronyms and terms, acknowledgments, package dependencies, 
-    a listing of LFS boot scripts, licenses for the distribution of the 
-    book, and a comprehensive index of packages, programs, libraries, 
+    acronyms and terms, acknowledgments, package dependencies,
+    a listing of LFS boot scripts, licenses for the distribution of the
+    book, and a comprehensive index of packages, programs, libraries,
     and scripts.</para>
   </sect2>
Index: prologue/standards.xml
===================================================================
--- prologue/standards.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ prologue/standards.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -23,5 +23,5 @@
       </listitem>
       <listitem>
-        <para><ulink 
+        <para><ulink
         url="http://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html">
         Filesystem Hierarchy Standard (FHS) Version 3.0</ulink></para>
Index: prologue/why.xml
===================================================================
--- prologue/why.xml	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ prologue/why.xml	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -24,7 +24,7 @@
         <para>Acl</para>
 
-        <para>This package contains utilities to administer Access 
-        Control Lists, which are used to define more fine-grained 
-        discretionary access rights for files and directories. 
+        <para>This package contains utilities to administer Access
+        Control Lists, which are used to define more fine-grained
+        discretionary access rights for files and directories.
         </para>
       </listitem>
@@ -33,6 +33,6 @@
         <para>Attr</para>
 
-        <para>This package contains programs for administering  
-        extended attributes on filesystem objects. 
+        <para>This package contains programs for administering
+        extended attributes on filesystem objects.
         </para>
       </listitem>
@@ -67,5 +67,5 @@
         <para>Bc</para>
 
-        <para>This package provides an arbitrary precision numeric processing language. 
+        <para>This package provides an arbitrary precision numeric processing language.
         It satisfies a requirement needed when building the Linux kernel.</para>
       </listitem>
@@ -111,5 +111,5 @@
         <para>D-Bus</para>
 
-        <para>This package contains programs to implement a message bus system, 
+        <para>This package contains programs to implement a message bus system,
         which a simple way for applications to talk to one another.
         </para>
@@ -142,5 +142,5 @@
 
         <para>This package is a device manager.  It dynamically controls the ownership,
-        permissions, names, and symbolic links of devices in the /dev directory as 
+        permissions, names, and symbolic links of devices in the /dev directory as
         devices are added or removed from the system.
         </para>
@@ -283,5 +283,5 @@
         <para>Intltool</para>
 
-        <para>This package contains tools for extracting translatable 
+        <para>This package contains tools for extracting translatable
         strings from source files.</para>
       </listitem>
@@ -327,6 +327,6 @@
         <para>Libcap</para>
 
-        <para>This package implements the user-space interfaces to 
-        the POSIX 1003.1e capabilities available in Linux kernels. 
+        <para>This package implements the user-space interfaces to
+        the POSIX 1003.1e capabilities available in Linux kernels.
         </para>
       </listitem>
@@ -627,5 +627,5 @@
 
         <para>This package contains compression and decompression routines
-        used by some programs. It provide high compression ratios and a very 
+        used by some programs. It provides high compression ratios and a very
         wide range of compression / speed trade-offs.</para>
       </listitem>
Index: stylesheets/lfs-xsl/pdf/lfs-mixed.xsl
===================================================================
--- stylesheets/lfs-xsl/pdf/lfs-mixed.xsl	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ stylesheets/lfs-xsl/pdf/lfs-mixed.xsl	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -104,5 +104,5 @@
             <xsl:choose>
               <xsl:when test="ancestor::appendix">auto</xsl:when>
-              <!-- Modified by Bruce Dubbs.  Allow user to specify 
+              <!-- Modified by Bruce Dubbs.  Allow user to specify
               automatic screen formatting to split across pages. -->
               <xsl:when test="@role='auto'">auto</xsl:when>
@@ -115,6 +115,6 @@
       </xsl:attribute>
 
-<!-- The following lines were inserted by Martin Miehe. Scripts and rules 
-     in the appendices should have a smaller font-size so that at least 
+<!-- The following lines were inserted by Martin Miehe. Scripts and rules
+     in the appendices should have a smaller font-size so that at least
      80 characters fit to one line. -->
 
Index: stylesheets/md5sum.xsl
===================================================================
--- stylesheets/md5sum.xsl	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ stylesheets/md5sum.xsl	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -16,6 +16,6 @@
       name, the next test must be fixed to match it also. Skip possible
       duplicated URLs that may be split for PDF output -->
-    <xsl:if test="(contains( @url, '.tar.' ) or 
-                   contains( @url, '.tgz'  ) or 
+    <xsl:if test="(contains( @url, '.tar.' ) or
+                   contains( @url, '.tgz'  ) or
                    contains( @url, '.patch') ) and
                    not( ancestor-or-self::*/@condition = 'pdf' )" >
@@ -33,5 +33,5 @@
       <!-- Add a newline -->
       <xsl:text>&#x0a;</xsl:text>
-    
+
     </xsl:if>
   </xsl:template>
@@ -39,5 +39,5 @@
   <xsl:template name="basename">
     <xsl:param name="pathname"/>
-   
+
     <xsl:choose>
 
Index: stylesheets/wget-list.xsl
===================================================================
--- stylesheets/wget-list.xsl	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ stylesheets/wget-list.xsl	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -17,6 +17,6 @@
       name, the next test must be fixed to match it also. Skip possible
       duplicated URLs due that may be splitted for PDF output -->
-    <xsl:if test="(contains(@url, '.tar.') or 
-                   contains(@url, '.tgz')  or 
+    <xsl:if test="(contains(@url, '.tar.') or
+                   contains(@url, '.tgz')  or
                    contains(@url, '.patch')) and
                   not(ancestor-or-self::*/@condition = 'pdf')">
Index: udev-lfs/ChangeLog
===================================================================
--- udev-lfs/ChangeLog	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ udev-lfs/ChangeLog	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -62,5 +62,5 @@
 	* 55-lfs.rules: Override default perms on floppy disk devices provided
 	  by 50-udev-default.rules.  Thanks to Bruce Dubbs for the fix.  Closes
-	  LFS ticket #2076. 
+	  LFS ticket #2076.
 
 2008-05-21  Bryan Kadzban  <bryan@linuxfromscratch.org>
@@ -146,5 +146,5 @@
 	  upstream sample rules files (from udev-102), except for one rule
 	  which is more specific in our tarball and should probably be changed
-	  upstream. 
+	  upstream.
 	* doc/60-persistent-storage.txt: Modify to match the changes.  Also
 	  fix a couple typos.
Index: udev-lfs/Makefile.lfs
===================================================================
--- udev-lfs/Makefile.lfs	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ udev-lfs/Makefile.lfs	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -16,5 +16,5 @@
 	@echo "Use the install target"
 
-install: 
+install:
 	@mkdir -pv $(DESTDIR)/lib/udev/rules.d \
               $(DESTDIR)/etc/udev/rules.d \
Index: udev-lfs/init-net-rules.sh
===================================================================
--- udev-lfs/init-net-rules.sh	(revision e68002242fc8a6c34fa97f986e31e74e414ab51b)
+++ udev-lfs/init-net-rules.sh	(revision 716db1f7650e2a5a1639d91145cab6b4c14d1c99)
@@ -5,5 +5,5 @@
 # Updated fof udev-197 (DEVICES=en*)
 
-RULES=/etc/udev/rules.d/70-persistent-net.rules 
+RULES=/etc/udev/rules.d/70-persistent-net.rules
 DEVICES=$(eval echo /sys/class/net/{en*,eth*,ath*,wlan*[0-9],msh*,ra*,sta*,ctc*,lcs*,hsi*})
 
@@ -69,7 +69,7 @@
 
   # S/390 uses id matches only, do not use MAC address match
-  # SUBSYSTEMS=="ccwgroup", 
-  # export COMMENT="S/390 $driver device at $id", 
-  # export MATCHID="$id" 
+  # SUBSYSTEMS=="ccwgroup",
+  # export COMMENT="S/390 $driver device at $id",
+  # export MATCHID="$id"
   # export MATCHDRV="$driver"
   # export MATCHADDR=""
@@ -99,8 +99,8 @@
   msg="The rules file should not be created in the Xen environment"
   usage
-fi 
+fi
 
 # Variables used to communicate with write_net_rules:
-#   INTERFACE             simple interface name         
+#   INTERFACE             simple interface name
 #   MATCHADDR             MAC address used for the match
 #   MATCHID               bus_id used for the match
@@ -125,5 +125,5 @@
      comment
 
-     /lib/udev/write_net_rules 
+     /lib/udev/write_net_rules
 done
 
