Index: introduction/important/beyond.xml
===================================================================
--- introduction/important/beyond.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/important/beyond.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,229 +1,7 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-important-beyond">
+<?dbhtml filename="beyond.html" dir="introduction"?>
+<title>Going Beyond BLFS</title>
 
-<sect1 id="beyond" xreflabel="Going Beyond BLFS">
-  <?dbhtml filename="beyond.html"?>
-
-
-  <title>Going Beyond BLFS</title>
-
-  <para>The packages that are installed in this book are only the tip of the
-  iceberg. We hope that the experience you gained with the LFS book and
-  the BLFS book will give you the background needed to compile, install
-  and configure packages that are not included in this book.</para>
-
-  <para>When you want to install a package to a location other than
-  <filename class='directory'>/</filename>, or
-  <filename class='directory'>/usr</filename>, you are installing
-  outside the default environment settings on most machines.  The following
-  examples should assist you in determining how to correct this situation.
-  The examples cover the complete range of settings that may need
-  updating, but they are not all needed in every situation.</para>
-
-  <itemizedlist>
-    <listitem>
-      <para>Expand the <envar>PATH</envar> to include
-      <filename class='directory'>$PREFIX/bin</filename>.</para>
-    </listitem>
-    <listitem>
-      <para>Expand the <envar>PATH</envar> for
-      <systemitem class="username">root</systemitem> to include
-      <filename class='directory'>$PREFIX/sbin</filename>.</para>
-    </listitem>
-    <listitem>
-      <para>Add <filename class='directory'>$PREFIX/lib</filename>
-      to <filename>/etc/ld.so.conf</filename> or expand
-      <envar>LD_LIBRARY_PATH</envar> to include it. Before using the latter
-      option, check out <ulink
-      url="http://xahlee.info/UnixResource_dir/_/ldpath.html"/>.
-      If you modify <filename>/etc/ld.so.conf</filename>, remember to update
-      <filename>/etc/ld.so.cache</filename> by executing
-      <command>ldconfig</command> as the
-      <systemitem class="username">root</systemitem> user.</para>
-    </listitem>
-    <listitem>
-      <para>Add <filename class='directory'>$PREFIX/man</filename>
-      to <filename>/etc/man_db.conf</filename>.</para>
-    </listitem>
-    <listitem>
-      <para>Add <filename class='directory'>$PREFIX/info</filename>
-      to <envar>INFOPATH</envar>.</para>
-    </listitem>
-    <listitem>
-      <para>Add <filename class='directory'>$PREFIX/lib/pkgconfig</filename>
-      to <envar>PKG_CONFIG_PATH</envar>. Some packages are now installing
-      <filename class='extension'>.pc</filename> files in
-      <filename class='directory'>$PREFIX/share/pkgconfig</filename>, so you may
-      have to include this directory also.</para>
-    </listitem>
-    <listitem>
-      <para>Add <filename class='directory'>$PREFIX/include</filename> to
-      <envar>CPPFLAGS</envar> when compiling packages that depend on
-      the package you installed.</para>
-    </listitem>
-    <listitem>
-      <para>Add <filename class='directory'>$PREFIX/lib</filename> to
-      <envar>LDFLAGS</envar> when compiling packages that depend on a library
-      installed by the package.</para>
-    </listitem>
-  </itemizedlist>
-
-  <para>If you are in search of a package that is not in the book, the following
-  are different ways you can search for the desired package.</para>
-
-  <itemizedlist>
-    <listitem>
-      <para>If you know the name of the package, then search SourceForge for
-      it at <ulink url="https://sourceforge.net/directory/"/>, and search
-      GitHub for it at <ulink url="https://github.com/"/>.
-      Also search Google at <ulink url="https://google.com/"/>. Sometimes a
-      search for the <filename class='extension'>rpm</filename> at
-      <ulink url="https://rpmfind.net/"/> or the
-      <filename class='extension'>deb</filename> at
-      <ulink url="https://www.debian.org/distrib/packages#search_packages"/> can
-      also lead to a link to the package.</para>
-    </listitem>
-    <listitem>
-      <para>If you know the name of the executable, but not the package
-      that the executable belongs to, first try a Google search with the name
-      of the executable. If the results are overwhelming, try searching for the
-      given executable in the Debian repository at <ulink
-      url="https://www.debian.org/distrib/packages#search_contents"/>.</para>
-    </listitem>
-  </itemizedlist>
-
-  <para>Some general hints on handling new packages:</para>
-
-  <itemizedlist>
-    <listitem>
-      <para>Many of the newer packages follow the <command>./configure
-      &amp;&amp; make &amp;&amp; make install</command> process.
-      Help on the options accepted by configure can be obtained via the
-      command <command>./configure --help</command>.</para>
-    </listitem>
-    <listitem>
-      <para>Most of the packages contain documentation on compiling and
-      installing the package. Some of the documents are excellent, some not so
-      excellent. Check out the homepage of the package for any additional and
-      updated hints for compiling and configuring the package.</para>
-    </listitem>
-    <listitem>
-      <para>If you are having a problem compiling the package, try
-      searching the LFS archives at
-      <ulink url="https://www.&lfs-domainname;/search.html"/> for the error or if
-      that fails, try searching Google. Often, a distribution will have already
-      solved the problem (many of them use development versions of packages, so
-      they see the changes sooner than those of us who normally use stable released
-      versions).  But be cautious - all builders tend to carry patches which are no
-      longer necessary, and to have fixes which are only required because of their
-      particular choices in how they build a package. You may have to search
-      deeply to find a fix for the package version you are trying to use, or even
-      to find the package (names are sometimes not what you might expect, e.g.
-      <application>ghostscript</application> often has a prefix or a suffix in its
-      name), but the following notes might help, particularly for those who, like
-      the editors, are trying to build the latest versions and encountering
-      problems:</para>
-      <itemizedlist>
-        <listitem>
-          <para>Arch <ulink url="https://www.archlinux.org/packages/"/> - enter
-          the package name in the 'Keywords' box, select the package name,
-          select the 'Source Files' field, and then select the
-          <filename>PKGBUILD</filename> entry to see how they build this
-          package.</para>
-        </listitem>
-        <listitem>
-          <para>Debian
-          <ulink url="http://ftp.debian.org/debian/pool"/> (use your country's
-          version if there is one) - the source will be in .tar.gz tarballs (either
-          the original upstream <filename class='extension'>.orig</filename> source,
-          or else a <filename>dfsg</filename> containing those parts which comply
-          with Debian's free software guidelines) accompanied by versioned .diff.gz
-          or .tar.gz additions. These additions often show how the package is built,
-          and may contain patches. In the .diff.gz versions, any patches create files
-          in <filename class="directory">debian/patches</filename>.</para>
-        </listitem>
-        <listitem>
-          <para>Fedora package source gets reorganized from time to time.
-          At the moment the package source for rpms is at <ulink
-          url="https://src.fedoraproject.org/projects/rpms/%2A"/> and from there
-          you can try putting a package name in the search box. If the package is
-          found you can look at the files (specfile to control the build, various
-          patches) or the commits. If that fails, you can download
-          an srpm (source rpm) and using <application>rpm2cpio</application> (see
-          the Tip at the bottom of the page). For rpms go to <ulink
-          url="https://dl.fedoraproject.org/pub/fedora/linux/"/> and then choose
-          which repo you wish to look at - development/rawhide is the latest
-          development, or choose releases for what was shipped in a release,
-          updates for updates to a release, or updates/testing for the latest
-          updates which might work or might have problems.
-          </para>
-        </listitem>
-        <listitem>
-          <para>Gentoo - First use a search engine to find an ebuild which looks as
-          if it will fix the problem, or search at <ulink
-          url="https://packages.gentoo.org/"/> - use the search field. Note where the
-          package lives in the portage hierarchy, e.g.
-          <filename>app-something/</filename>. In general you can treat the ebuild as
-          a sort of pseudo-code / shell combination with some functions you can
-          hazard a guess at, such as <command>dodoc</command>. If the fix is just a
-          <command>sed</command>, try it. However, in most cases the fix will use a
-          patch. To find the patch, use a gentoo-portage mirror: Two links to mirrors
-          in the U.S.A. which seem to usually be up to date are
-          <ulink url="https://mirror.rackspace.com/gentoo-portage/"/> and
-          <ulink url="https://mirror.steadfast.net/gentoo-portage/"/>. Navigate down
-          the tree to the package, then to the <filename>files/</filename> directory
-          to look for the patch. Sometimes a portage mirror has not yet been updated,
-          particularly for a recent new patch. In a few cases, gentoo batch the
-          patches into a tarball and the ebuild will have a link in the form
-          https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz
-          : here, look for PATCH_DEV and PATCH_VER in the build and format the full
-          URL in your browser or for wget : remember the '~' before the developer's
-          ID and note that trying to search the earlier levels of the URL in a
-          browser may drop you at www.gentoo.org or return 403 (forbidden).
-          </para>
-        </listitem>
-        <listitem>
-          <para>openSUSE provide a rolling release, some package versions are in
-          <ulink url="https://download.opensuse.org/source/tumbleweed/repo/oss/src/"/>
-          but others are in ../update/openSUSE-current/src - the
-          source only seems to be available in source rpms.</para>
-        </listitem>
-        <listitem>
-          <para>Slackware - the official package browser is currently broken.  The
-          site at <ulink url="https://slackbuilds.org/"/> has current and previous
-          versions in their unofficial repository with links to homepages, downloads,
-          and some individual files, particularly the <filename>.SlackBuild</filename>
-          files.</para>
-        </listitem>
-        <listitem>
-          <para>Ubuntu <ulink url="http://ftp.ubuntu.com/ubuntu/pool/"/> - see the
-          Debian notes above.</para>
-        </listitem>
-      </itemizedlist>
-      <para>If everything else fails, try the blfs-support mailing-list.</para>
-    </listitem>
-  </itemizedlist>
-
-  <tip>
-    <para>If you have found a package that is only available in
-    <filename class='extension'>.deb</filename> or
-    <filename class='extension'>.rpm</filename>
-    format, there are two small scripts, <command>rpm2targz</command> and
-    <command>deb2targz</command> that are available at
-    <ulink url="&sources-anduin-http;/extras/deb2targz.tar.bz2"/> and
-    <ulink url="&sources-anduin-http;/extras/rpm2targz.tar.bz2"/> to convert the archives
-    into a simple <filename>tar.gz</filename> format.</para>
-    <para>You may also find an rpm2cpio script useful.  The Perl version in the
-    linux kernel archives at <ulink
-    url="https://lore.kernel.org/all/20021016121842.GA2292@ncsu.edu/2-rpm2cpio"/>
-    works for most source rpms.  The rpm2targz script will use an rpm2cpio script
-    or binary if one is on your path.  Note that rpm2cpio will unpack a source
-    rpm in the current directory, giving a tarball, a spec file, and perhaps patches
-    or other files.</para>
-  </tip>
+<para>NEW PAGE TO BE WRITTEN</para>
 
 </sect1>
Index: introduction/important/bootscripts.xml
===================================================================
--- introduction/important/bootscripts.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/important/bootscripts.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,61 +1,14 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-important-bootscripts">
+<?dbhtml filename="bootscripts.html" dir="introduction"?>
+<title>Using BLFS bootscripts</title>
 
-<sect1 id="bootscripts" xreflabel="blfs-bootscripts-&blfs-bootscripts-version;" revision="sysv">
-  <?dbhtml filename="bootscripts.html"?>
-
-
-  <title>BLFS Boot Scripts</title>
-
-  <indexterm zone="bootscripts">
-    <primary sortas="a-BLFS-Bootscripts">BLFS Bootscripts</primary>
-  </indexterm>
-
-  <indexterm zone="bootscripts">
-    <primary sortas="f-AA-General-Information">General Information</primary>
-  </indexterm>
-
-  <para>The BLFS Bootscripts package contains the init
-  scripts that are used throughout the book. It is assumed that you will be
-  using the BLFS Bootscripts package in conjunction with a compatible
-  LFS-Bootscripts package. Refer to
-  <ulink url="&lfs-root;/chapter09/bootscripts.html"/> for more
-  information on the LFS-Bootscripts package.</para>
-
-  <itemizedlist spacing='compact'>
-    <title>Package Information</title>
-    <listitem>
-      <para>Download: <ulink
-        url="&sources-anduin-http;/blfs-bootscripts/blfs-bootscripts-&blfs-bootscripts-version;.tar.xz"/></para>
-    </listitem>
-  </itemizedlist>
-
-  <para>The BLFS Bootscripts package will be used throughout the BLFS book
-  for startup scripts.  Unlike LFS, each init script has a separate install target
-  in the BLFS Bootscripts package. It is recommended you keep the package source
-  directory around until completion of your BLFS system. When a script is
-  requested from BLFS Bootscripts, simply change to the directory and as the
-  <systemitem class="username">root</systemitem> user, execute the given
-  <command>make install-<replaceable>&lt;init-script&gt;</replaceable></command>
-  command. This command installs the init script to its proper location (along
-  with any auxiliary configuration scripts) and also creates the appropriate
-  symlinks to start and stop the service at the appropriate run-level.</para>
-
-  <note>
-    <para>You should review each bootscript before installation to
-    ascertain that it satisfies your need. Also verify that the start and stop
-    symlinks it creates match your preferences.</para>
-  </note>
-
-  <note>
-    <para>From time to time the bootscripts are updated to accommodate
-    new packages or to make minor corrections.  All versions of the
-    bootscripts are located at <ulink
-    url="&sources-anduin-http;/blfs-bootscripts/"/>.</para>
-  </note>
+<para>The scripts included for packages such as <xref linkend="gpm"/>
+and <xref linkend="alsa"/> are based around the template supplied with
+the lfs-bootscripts package from version 3.2 and later of the LFS book.
+Note that this is lfs-bootscripts-1.6 and later (the old numbering
+changed as of LFS-3.2).  The scripts won't work with versions of LFS
+before 3.2 because of a change in their organisation with the new
+scripts.  However, it should be trivial to adapt the scripts if needed
+for older LFS versions.</para>
 
 </sect1>
Index: introduction/important/building-notes.xml
===================================================================
--- introduction/important/building-notes.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,1349 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="unpacking">
-  <?dbhtml filename="notes-on-building.html"?>
-
-
-  <title>Notes on Building Software</title>
-
-  <para>Those people who have built an LFS system may be aware
-  of the general principles of downloading and unpacking software. Some
-  of that information is repeated here for those new to building
-  their own software.</para>
-
-  <para>Each set of installation instructions contains a URL from which you
-  can download the package.  The patches; however, are stored on the LFS
-  servers and are available via HTTP.  These are referenced as needed in the
-  installation instructions.</para>
-
-  <para>While you can keep the source files anywhere you like, we assume that
-  you have unpacked the package and changed into the directory created by the
-  unpacking process (the source directory).  We also assume you have
-  uncompressed any required patches and they are in the directory
-  immediately above the source directory.</para>
-
-  <para>We can not emphasize strongly enough that you should start from a
-  <emphasis>clean source tree</emphasis> each time. This means that if
-  you have had an error during configuration or compilation, it's usually
-  best to delete the source tree and
-  re-unpack it <emphasis>before</emphasis> trying again. This obviously
-  doesn't apply if you're an advanced user used to hacking
-  <filename>Makefile</filename>s and C code, but if in doubt, start from a
-  clean tree.</para>
-
-  <sect2>
-    <title>Building Software as an Unprivileged (non-root) User</title>
-
-    <para>The golden rule of Unix System Administration is to use your
-    superpowers only when necessary. Hence, BLFS recommends that you
-    build software as an unprivileged user and only become the
-    <systemitem class='username'>root</systemitem> user when installing the
-    software. This philosophy is followed in all the packages in this book.
-    Unless otherwise specified, all instructions should be executed as an
-    unprivileged user. The book will advise you on instructions that need
-    <systemitem class='username'>root</systemitem> privileges.</para>
-
-  </sect2>
-
-  <sect2>
-    <title>Unpacking the Software</title>
-
-    <para>If a file is in <filename class='extension'>.tar</filename> format
-    and compressed, it is unpacked by running one of the following
-    commands:</para>
-
-<screen><userinput>tar -xvf filename.tar.gz
-tar -xvf filename.tgz
-tar -xvf filename.tar.Z
-tar -xvf filename.tar.bz2</userinput></screen>
-
-    <note>
-      <para>You may omit using the <option>v</option> parameter in the commands
-      shown above and below if you wish to suppress the verbose listing of all
-      the files in the archive as they are extracted. This can help speed up the
-      extraction as well as make any errors produced during the extraction
-      more obvious to you.</para>
-    </note>
-
-    <para>You can also use a slightly different method:</para>
-
-<screen><userinput>bzcat filename.tar.bz2 | tar -xv</userinput></screen>
-
-    <para>
-      Finally, sometimes we have a compressed patch file in
-      <filename class='extension'>.patch.gz</filename> or
-      <filename class='extension'>.patch.bz2</filename> format.
-      The best way to apply the patch is piping the output of the
-      decompressor to the <command>patch</command> utility.  For example:
-    </para>
-
-    <screen><userinput>gzip -cd ../patchname.patch.gz | patch -p1</userinput></screen>
-
-    <para>
-      Or for a patch compressed with <command>bzip2</command>:
-    </para>
-
-    <screen><userinput>bzcat ../patchname.patch.bz2 | patch -p1</userinput></screen>
-
-  </sect2>
-
-  <sect2>
-    <title>Verifying File Integrity</title>
-
-    <para>Generally, to verify that the downloaded file is complete,
-    many package maintainers also distribute md5sums of the files. To verify the
-    md5sum of the downloaded files, download both the file and the
-    corresponding md5sum file to the same directory (preferably from different
-    on-line locations), and (assuming <filename>file.md5sum</filename> is the
-    md5sum file downloaded) run the following command:</para>
-
-<screen><userinput>md5sum -c file.md5sum</userinput></screen>
-
-    <para>If there are any errors, they will be reported. Note that the BLFS
-    book includes md5sums for all the source files also. To use the BLFS
-    supplied md5sums, you can create a <filename>file.md5sum</filename> (place
-    the md5sum data and the exact name of the downloaded file on the same
-    line of a file, separated by white space) and run the command shown above.
-    Alternately, simply run the command shown below and compare the output
-    to the md5sum data shown in the BLFS book.</para>
-
-<screen><userinput>md5sum <replaceable>&lt;name_of_downloaded_file&gt;</replaceable></userinput></screen>
-
-    <para>MD5 is not cryptographically secure, so the md5sums are only
-    provided for detecting unmalicious changes to the file content.  For
-    example, an error or truncation introduced during network transfer, or
-    a <quote>stealth</quote> update to the package from the upstream
-    (updating the content of a released tarball instead of making a new
-    release properly).</para>
-
-    <para>There is no <quote>100%</quote> secure way to make
-    sure the genuity of the source files.  Assuming the upstream is managing
-    their website correctly (the private key is not leaked and the domain is
-    not hijacked), and the trust anchors have been set up correctly using
-    <xref linkend="make-ca"/> on the BLFS system, we can reasonably trust
-    download URLs to the upstream official website
-    <emphasis role="bold">with https protocol</emphasis>.  Note that
-    BLFS book itself is published on a website with https, so you should
-    already have some confidence in https protocol or you wouldn't trust the
-    book content.</para>
-
-    <para>If the package is downloaded from an unofficial location (for
-    example a local mirror), checksums generated by cryptographically secure
-    digest algorithms (for example SHA256) can be used to verify the
-    genuity of the package.  Download the checksum file from the upstream
-    <emphasis role="bold">official</emphasis> website (or somewhere
-    <emphasis role="bold">you can trust</emphasis>) and compare the
-    checksum of the package from unofficial location with it.  For example,
-    SHA256 checksum can be checked with the command:</para>
-
-    <note>
-      <para>If the checksum and the package are downloaded from the same
-      untrusted location, you won't gain security enhancement by verifying
-      the package with the checksum. The attacker can fake the checksum as
-      well as compromising the package itself.</para>
-    </note>
-
-<screen><userinput>sha256sum -c <replaceable>file</replaceable>.sha256sum</userinput></screen>
-
-    <para>If <xref linkend="gnupg2"/> is installed, you can also verify the
-    genuity of the package with a GPG signature.  Import the upstream GPG
-    public key with:</para>
-
-<screen><userinput>gpg --recv-key <replaceable>keyID</replaceable></userinput></screen>
-
-    <para><replaceable>keyID</replaceable> should be replaced with the key ID
-    from somewhere <emphasis role="bold">you can trust</emphasis> (for
-    example, copy it from the upstream official website using https).  Now
-    you can verify the signature with:</para>
-
-<screen><userinput>gpg --recv-key <replaceable>file</replaceable>.sig <replaceable>file</replaceable></userinput></screen>
-
-    <para>The advantage of <application>GnuPG</application> signature is,
-    once you imported a public key which can be trusted, you can download
-    both the package and its signature from the same unofficial location and
-    verify them with the public key.  So you won't need to connect to the
-    official upstream website to retrieve a checksum for each new release.
-    You only need to update the public key if it's expired or revoked.
-    </para>
-
-  </sect2>
-
-  <sect2>
-    <title>Creating Log Files During Installation</title>
-
-    <para>For larger packages, it is convenient to create log files instead of
-    staring at the screen hoping to catch a particular error or warning. Log
-    files are also useful for debugging and keeping records. The following
-    command allows you to create an installation log. Replace
-    <replaceable>&lt;command&gt;</replaceable> with the command you intend to execute.</para>
-
-<screen><userinput>( <replaceable>&lt;command&gt;</replaceable> 2&gt;&amp;1 | tee compile.log &amp;&amp; exit $PIPESTATUS )</userinput></screen>
-
-    <para><option>2&gt;&amp;1</option> redirects error messages to the same
-    location as standard output. The <command>tee</command> command allows
-    viewing of the output while logging the results to a file. The parentheses
-    around the command run the entire command in a subshell and finally the
-    <command>exit $PIPESTATUS</command> command ensures the result of the
-    <replaceable>&lt;command&gt;</replaceable> is returned as the result and not the
-    result of the <command>tee</command> command.</para>
-
-  </sect2>
-
-  <sect2 id="parallel-builds" xreflabel="Using Multiple Processors">
-    <title>Using Multiple Processors</title>
-
-    <para>For many modern systems with multiple processors (or cores) the
-    compilation time for a package can be reduced by performing a "parallel
-    make" by either setting an environment variable or telling the make program
-    to simultaneously execute multiple jobs.</para>
-
-    <para>For instance, an Intel Core i9-13900K CPU contains 8 performance
-    (P) cores and 16 efficiency (E) cores, and the P cores support SMT
-    (Simultaneous MultiThreading, also known as
-    <quote>Hyper-Threading</quote>) so each P core can run two threads
-    simultaneously and the Linux kernel will treat each P core as two
-    logical cores.  As the result, there are 32 logical cores in total.
-    To utilize all these logical cores running <command>make</command>, we
-    can set an environment variable to tell <command>make</command> to
-    run 32 jobs simultaneously:</para>
-
-    <screen><userinput>export MAKEFLAGS='-j32'</userinput></screen>
-
-    <para>or just building with:</para>
-
-    <screen><userinput>make -j32</userinput></screen>
-
-    <para>
-      If you have applied the optional <command>sed</command> when building
-      <application>ninja</application> in LFS, you can use:
-    </para>
-
-    <screen><userinput>export NINJAJOBS=32</userinput></screen>
-
-    <para>
-      when a package uses <command>ninja</command>, or just:
-    </para>
-
-    <screen><userinput>ninja -j32</userinput></screen>
-
-    <para>
-      If you are not sure about the number of logical cores, run the
-      <command>nproc</command> command.
-    </para>
-
-    <para>
-      For <command>make</command>, the default number of jobs is 1.  But
-      for <command>ninja</command>, the default number of jobs is N + 2 if
-      the number of logical cores N is greater than 2; or N + 1 if
-      N is 1 or 2.  The reason to use a number of jobs slightly greater
-      than the number of logical cores is keeping all logical
-      processors busy even if some jobs are performing I/O operations.
-    </para>
-
-    <para>
-      Note that the <option>-j</option> switches only limits the parallel
-      jobs started by <command>make</command> or <command>ninja</command>,
-      but each job may still spawn its own processes or threads.  For
-      example, <command>ld.gold</command> will use multiple threads for
-      linking, and some tests of packages can spawn multiple threads for
-      testing thread safety properties.  There is no generic way for the
-      building system to know the number of processes or threads spawned by
-      a job. So generally we should not consider the value passed with
-      <option>-j</option> a hard limit of the number of logical cores to
-      use.  Read <xref linkend='build-in-cgroup'/> if you want to set such
-      a hard limit.
-    </para>
-
-    <para>Generally the number of processes should not exceed the number of
-    cores supported by the CPU too much.  To list the processors on your
-    system, issue: <userinput>grep processor /proc/cpuinfo</userinput>.
-    </para>
-
-    <para>In some cases, using multiple processes may result in a race
-    condition where the success of the build depends on the order of the
-    commands run by the <command>make</command> program.  For instance, if an
-    executable needs File A and File B, attempting to link the program before
-    one of the dependent components is available will result in a failure.
-    This condition usually arises because the upstream developer has not
-    properly designated all the prerequisites needed to accomplish a step in the
-    Makefile.</para>
-
-    <para>If this occurs, the best way to proceed is to drop back to a
-    single processor build.  Adding <option>-j1</option> to a make command
-    will override the similar setting in the <envar>MAKEFLAGS</envar>
-    environment variable.</para>
-
-    <important>
-      <para>
-        Another problem may occur with modern CPU's, which have a lot of cores.
-        Each job started consumes memory, and if the sum of the needed
-        memory for each job exceeds the available memory, you may encounter
-        either an OOM (Out of Memory) kernel interrupt or intense swapping
-        that will slow the build beyond reasonable limits.
-      </para>
-
-      <para>
-        Some compilations with <command>g++</command> may consume up to 2.5 GB
-        of memory, so to be safe, you should restrict the number of jobs
-        to (Total Memory in GB)/2.5, at least for big packages such as LLVM,
-        WebKitGtk, QtWebEngine, or libreoffice.
-      </para>
-    </important>
-  </sect2>
-
-  <sect2 id="build-in-cgroup">
-    <title>Use Linux Control Group to Limit the Resource Usage</title>
-
-    <para>
-      Sometimes we want to limit the resource usage when we build a
-      package.  For example, when we have 8 logical cores, we may want
-      to use only 6 cores for building the package and reserve another
-      2 cores for playing a movie.  The Linux kernel provides a feature
-      called control groups (cgroup) for such a need.
-    </para>
-
-    <para>
-      Enable control group in the kernel configuration, then rebuild the
-      kernel and reboot if necessary:
-    </para>
-
-    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-      href="cgroup-kernel.xml"/>
-
-    <!-- We need cgroup2 mounted at /sys/fs/cgroup.  It's done by
-         systemd itself in LFS systemd, mountvirtfs script in LFS sysv. -->
-
-    <para revision='systemd'>
-      Ensure <xref linkend='systemd'/> and <xref linkend='shadow'/> have
-      been rebuilt with <xref linkend='linux-pam'/> support (if you are
-      interacting via a SSH or graphical session, also ensure the
-      <xref linkend='openssh'/> server or the desktop manager has been
-      built with <xref linkend='linux-pam'/>).  As the &root; user, create
-      a configuration file to allow resource control without &root;
-      privilege, and instruct <command>systemd</command> to reload the
-      configuration:
-    </para>
-
-    <screen revision="systemd" role="nodump"><userinput>mkdir -pv /etc/systemd/system/user@.service.d &amp;&amp;
-cat &gt; /etc/systemd/system/user@.service.d/delegate.conf &lt;&lt; EOF &amp;&amp;
-<literal>[Service]
-Delegate=memory cpuset</literal>
-systemctl daemon-reload</userinput></screen>
-
-    <para revision='systemd'>
-      Then logout and login again.  Now to run <command>make -j5</command>
-      with the first 4 logical cores and 8 GB of system memory, issue:
-    </para>
-
-    <screen revision="systemd" role="nodump"><userinput>systemctl   --user start dbus                &amp;&amp;
-systemd-run --user --pty --pipe --wait -G -d \
-            -p MemoryHigh=8G                 \
-            -p AllowedCPUs=0-3               \
-            make -j5</userinput></screen>
-
-    <para revision='sysv'>
-      Ensure <xref linkend='sudo'/> is installed.  To run
-      <command>make -j5</command> with the first 4 logical cores and 8 GB
-      of system memory, issue:
-    </para>
-
-    <!-- "\EOF" because we expect $$ to be expanded by the "bash -e"
-         shell, not the current shell.
-
-         TODO: can we use elogind to delegate the controllers (like
-         systemd) to avoid relying on sudo?  -->
-    <screen revision="sysv" role="nodump"><userinput>bash -e &lt;&lt; \EOF
-  sudo mkdir /sys/fs/cgroup/$$
-  sudo sh -c \
-    "echo +memory +cpuset > /sys/fs/cgroup/cgroup.subtree_control"
-  sudo sh -c \
-    "echo 0-3 > /sys/fs/cgroup/$$/cpuset.cpus"
-  sudo sh -c \
-    "echo $(bc -e '8*2^30') > /sys/fs/cgroup/$$/memory.high"
-  (
-    sudo sh -c "echo $BASHPID > /sys/fs/cgroup/$$/cgroup.procs"
-    exec make -j5
-  )
-  sudo rmdir /sys/fs/cgroup/$$
-EOF</userinput></screen>
-
-    <para>
-      With
-      <phrase revision='systemd'>
-        <parameter>MemoryHigh=8G</parameter>
-      </phrase>
-      <phrase revision='sysv'>
-        <literal>8589934592</literal> (the output of
-        <userinput>bc -e '8*2^30'</userinput>, 2^30 represents
-        2<superscript>30</superscript>, i.e. a Gigabyte) in the
-        <filename>memory.high</filename> entry
-      </phrase>, a soft limit of memory usage is set.
-      If the processes in the cgroup (<command>make</command> and all the
-      descendants of it) uses more than 8 GB of system memory in total,
-      the kernel will throttle down the processes and try to reclaim the
-      system memory from them.  But they can still use more than 8 GB of
-      system memory.  If you want to make a hard limit instead, replace
-      <phrase revision='systemd'>
-        <parameter>MemoryHigh</parameter> with
-        <parameter>MemoryMax</parameter>.
-      </phrase>
-      <phrase revision='sysv'>
-        <filename>memory.high</filename> with
-        <filename>memory.max</filename>.
-      </phrase>
-      But doing so will cause the processes killed if 8 GB is not enough
-      for them.
-    </para>
-
-    <para>
-      <phrase revision='systemd'>
-        <parameter>AllowedCPUs=0-3</parameter>
-      </phrase>
-      <phrase revision='sysv'>
-        <literal>0-3</literal> in the <filename>cpuset.cpus</filename>
-        entry
-      </phrase> makes the kernel only run the processes in the cgroup on
-      the logical cores with numbers 0, 1, 2, or 3.  You may need to
-      adjust this setting based the mapping between the logical cores and the
-      physical cores.  For example, with an Intel Core i9-13900K CPU,
-      the logical cores 0, 2, 4, ..., 14 are mapped to the first threads of
-      the eight physical P cores, the logical cores 1, 3, 5, ..., 15 are
-      mapped to the second threads of the physical P cores, and the logical
-      cores 16, 17, ..., 31 are mapped to the 16 physical E cores.  So if
-      we want to use four threads from four different P cores, we need to
-      specify <literal>0,2,4,6</literal> instead of <literal>0-3</literal>.
-      Note that the other CPU models may use a different mapping scheme.
-      If you are not sure about the mapping between the logical cores
-      and the physical cores, run <command>grep -E '^processor|^core'
-      /proc/cpuinfo</command> which will output logical core IDs in the
-      <computeroutput>processor</computeroutput> lines, and physical core
-      IDs in the <computeroutput>core id</computeroutput> lines.
-    </para>
-
-    <para>
-      When the <command>nproc</command> or <command>ninja</command> command
-      runs in a cgroup, it will use the number of logical cores assigned to
-      the cgroup as the <quote>system logical core count</quote>.  For
-      example, in a cgroup with logical cores 0-3 assigned,
-      <command>nproc</command> will print
-      <computeroutput>4</computeroutput>, and <command>ninja</command>
-      will run 6 (4 + 2) jobs simultaneously if no <option>-j</option>
-      setting is explicitly given.
-    </para>
-
-    <para revision="systemd">
-      Read the man pages <ulink role='man'
-      url='&man;systemd-run.1'>systemd-run(1)</ulink> and
-      <ulink role='man'
-  url='&man;systemd.resource-control.5'>systemd.resource-control(5)</ulink>
-      for the detailed explanation of parameters in the command.
-    </para>
-
-    <para revision="sysv">
-      Read the <filename>Documentation/admin-guide/cgroup-v2.rst</filename>
-      file in the Linux kernel source tree for the detailed explanation of
-      <systemitem class="filesystem">cgroup2</systemitem> pseudo file
-      system entries referred in the command.
-    </para>
-
-  </sect2>
-
-  <sect2 id="automating-builds" xreflabel="Automated Building Procedures">
-    <title>Automated Building Procedures</title>
-
-    <para>There are times when automating the building of a package can come in
-    handy. Everyone has their own reasons for wanting to automate building,
-    and everyone goes about it in their own way. Creating
-    <filename>Makefile</filename>s, <application>Bash</application> scripts,
-    <application>Perl</application> scripts or simply a list of commands used
-    to cut and paste are just some of the methods you can use to automate
-    building BLFS packages. Detailing how and providing examples of the many
-    ways you can automate the building of packages is beyond the scope of this
-    section. This section will expose you to using file redirection and the
-    <command>yes</command> command to help provide ideas on how to automate
-    your builds.</para>
-
-    <bridgehead renderas="sect3">File Redirection to Automate Input</bridgehead>
-
-    <para>You will find times throughout your BLFS journey when you will come
-    across a package that has a command prompting you for information. This
-    information might be configuration details, a directory path, or a response
-    to a license agreement. This can present a challenge to automate the
-    building of that package. Occasionally, you will be prompted for different
-    information in a series of questions. One method to automate this type of
-    scenario requires putting the desired responses in a file and using
-    redirection so that the program uses the data in the file as the answers to
-    the questions.</para>
-<!-- outdated
-    <para>Building the <application>CUPS</application> package is a good
-    example of how redirecting a file as input to prompts can help you automate
-    the build. If you run the test suite, you are asked to respond to a series
-    of questions regarding the type of test to run and if you have any
-    auxiliary programs the test can use. You can create a file with your
-    responses, one response per line, and use a command similar to the
-    one shown below to automate running the test suite:</para>
-
-<screen><userinput>make check &lt; ../cups-1.1.23-testsuite_parms</userinput></screen>
--->
-    <para>This effectively makes the test suite use the responses in the file
-    as the input to the questions. Occasionally you may end up doing a bit of
-    trial and error determining the exact format of your input file for some
-    things, but once figured out and documented you can use this to automate
-    building the package.</para>
-
-    <bridgehead renderas="sect3">Using <command>yes</command> to Automate
-    Input</bridgehead>
-
-    <para>Sometimes you will only need to provide one response, or provide the
-    same response to many prompts. For these instances, the
-    <command>yes</command> command works really well. The
-    <command>yes</command> command can be used to provide a response (the same
-    one) to one or more instances of questions. It can be used to simulate
-    pressing just the <keycap>Enter</keycap> key, entering the
-    <keycap>Y</keycap> key or entering a string of text. Perhaps the easiest
-    way to show its use is in an example.</para>
-
-    <para>First, create a short <application>Bash</application> script by
-    entering the following commands:</para>
-
-<screen><userinput>cat &gt; blfs-yes-test1 &lt;&lt; "EOF"
-<literal>#!/bin/bash
-
-echo -n -e "\n\nPlease type something (or nothing) and press Enter ---> "
-
-read A_STRING
-
-if test "$A_STRING" = ""; then A_STRING="Just the Enter key was pressed"
-else A_STRING="You entered '$A_STRING'"
-fi
-
-echo -e "\n\n$A_STRING\n\n"</literal>
-EOF
-chmod 755 blfs-yes-test1</userinput></screen>
-
-    <para>Now run the script by issuing <command>./blfs-yes-test1</command> from
-    the command line. It will wait for a response, which can be anything (or
-    nothing) followed by the <keycap>Enter</keycap> key. After entering
-    something, the result will be echoed to the screen. Now use the
-    <command>yes</command> command to automate the entering of a
-    response:</para>
-
-<screen><userinput>yes | ./blfs-yes-test1</userinput></screen>
-
-    <para>Notice that piping <command>yes</command> by itself to the script
-    results in <keycap>y</keycap> being passed to the script. Now try it with a
-    string of text:</para>
-
-<screen><userinput>yes 'This is some text' | ./blfs-yes-test1</userinput></screen>
-
-    <para>The exact string was used as the response to the script. Finally,
-    try it using an empty (null) string:</para>
-
-<screen><userinput>yes '' | ./blfs-yes-test1</userinput></screen>
-
-    <para>Notice this results in passing just the press of the
-    <keycap>Enter</keycap> key to the script. This is useful for times when the
-    default answer to the prompt is sufficient. This syntax is used in the
-    <xref linkend="net-tools-automate-example"/> instructions to accept all the
-    defaults to the many prompts during the configuration step. You may now
-    remove the test script, if desired.</para>
-
-    <bridgehead renderas="sect3">File Redirection to Automate Output</bridgehead>
-
-    <para>In order to automate the building of some packages, especially those
-    that require you to read a license agreement one page at a time, requires
-    using a method that avoids having to press a key to display each page.
-    Redirecting the output to a file can be used in these instances to assist
-    with the automation. The previous section on this page touched on creating
-    log files of the build output. The redirection method shown there used the
-    <command>tee</command> command to redirect output to a file while also
-    displaying the output to the screen. Here, the output will only be sent to
-    a file.</para>
-
-    <para>Again, the easiest way to demonstrate the technique is to show an
-    example. First, issue the command:</para>
-
-<screen><userinput>ls -l /usr/bin | less</userinput></screen>
-
-    <para>Of course, you'll be required to view the output one page at a time
-    because the <command>less</command> filter was used. Now try the same
-    command, but this time redirect the output to a file. The special file
-    <filename>/dev/null</filename> can be used instead of the filename shown,
-    but you will have no log file to examine:</para>
-
-<screen><userinput>ls -l /usr/bin | less &gt; redirect_test.log 2&gt;&amp;1</userinput></screen>
-
-    <para>Notice that this time the command immediately returned to the shell
-    prompt without having to page through the output. You may now remove the
-    log file.</para>
-
-    <para>The last example will use the <command>yes</command> command in
-    combination with output redirection to bypass having to page through the
-    output and then provide a <keycap>y</keycap> to a prompt. This technique
-    could be used in instances when otherwise you would have to page through
-    the output of a file (such as a license agreement) and then answer the
-    question of <quote>do you accept the above?</quote>. For this example,
-    another short <application>Bash</application> script is required:</para>
-
-<screen><userinput>cat &gt; blfs-yes-test2 &lt;&lt; "EOF"
-<literal>#!/bin/bash
-
-ls -l /usr/bin | less
-
-echo -n -e "\n\nDid you enjoy reading this? (y,n) "
-
-read A_STRING
-
-if test "$A_STRING" = "y"; then A_STRING="You entered the 'y' key"
-else A_STRING="You did NOT enter the 'y' key"
-fi
-
-echo -e "\n\n$A_STRING\n\n"</literal>
-EOF
-chmod 755 blfs-yes-test2</userinput></screen>
-
-    <para>This script can be used to simulate a program that requires you to
-    read a license agreement, then respond appropriately to accept the
-    agreement before the program will install anything. First, run the script
-    without any automation techniques by issuing
-    <command>./blfs-yes-test2</command>.</para>
-
-    <para>Now issue the following command which uses two automation techniques,
-    making it suitable for use in an automated build script:</para>
-
-<screen><userinput>yes | ./blfs-yes-test2 &gt; blfs-yes-test2.log 2&gt;&amp;1</userinput></screen>
-
-    <para>If desired, issue <command>tail blfs-yes-test2.log</command> to see
-    the end of the paged output, and confirmation that <keycap>y</keycap> was
-    passed through to the script. Once satisfied that it works as it should,
-    you may remove the script and log file.</para>
-
-    <para>Finally, keep in mind that there are many ways to automate and/or
-    script the build commands. There is not a single <quote>correct</quote> way
-    to do it. Your imagination is the only limit.</para>
-
-  </sect2>
-
-  <sect2>
-    <title>Dependencies</title>
-
-    <para>For each package described, BLFS lists the known dependencies.
-    These are listed under several headings, whose meaning is as follows:</para>
-
-    <itemizedlist>
-      <listitem>
-        <para><emphasis>Required</emphasis> means that the target package
-        cannot be correctly built without the dependency having first been
-        installed, except if the dependency is said to be
-        <quote>runtime</quote>, which means the target package can be built but
-        cannot function without it.</para>
-        <para>
-          Note that a target package can start to <quote>function</quote>
-          in many subtle ways: an installed configuration file can make the
-          init system, cron daemon, or bus daemon to run a program
-          automatically; another package using the target package as an
-          dependency can run a program from the target package in the
-          building system; and the configuration sections in the BLFS book
-          may also run a program from a just installed package.  So if
-          you are installing the target package without a
-          <emphasis>Required (runtime)</emphasis> dependency installed,
-          You should install the dependency as soon as possible after the
-          installation of the target package.
-        </para>
-      </listitem>
-      <listitem>
-        <para><emphasis>Recommended</emphasis> means that BLFS strongly
-        suggests this package is installed first (except if said to be
-        <quote>runtime</quote>, see below) for a clean and trouble-free
-        build, that won't have issues either during the build process, or at
-        run-time.  The instructions in the book assume these packages are
-        installed.  Some changes or workarounds may be required if these
-        packages are not installed. If a recommended dependency is said
-        to be <quote>runtime</quote>, it means that BLFS strongly suggests
-        that this dependency is installed before using the package, for
-        getting full functionality.</para>
-      </listitem>
-      <listitem>
-        <para><emphasis>Optional</emphasis> means that this package might be
-        installed for added functionality. Often BLFS will describe the
-        dependency to explain the added functionality that will result.
-        An optional dependency may be automatically pick up by the target
-        package if the dependency is installed, but another some optional
-        dependency may also need additional configuration options to enable
-        them when the target package is built.  Such additional options are
-        often documented in the BLFS book.  If an optional dependency is
-        said to be <quote>runtime</quote>, it means you may install
-        the dependency after installing the target package to support some
-        optional features of the target package if you need these
-        features.</para>
-        <para>An optional dependency may be out of BLFS.  If you need such
-        an <emphasis>external</emphasis> optional dependency for some
-        features you need, read <xref linkend='beyond'/> for the general
-        hint about installing an out-of-BLFS package.</para>
-      </listitem>
-    </itemizedlist>
-
-  </sect2>
-
-  <sect2 id="package_updates">
-    <title>Using the Most Current Package Sources</title>
-
-    <para>On occasion you may run into a situation in the book when a package
-    will not build or work properly. Though the Editors attempt to ensure
-    that every package in the book builds and works properly, sometimes a
-    package has been overlooked or was not tested with this particular version
-    of BLFS.</para>
-
-    <para>If you discover that a package will not build or work properly, you
-    should see if there is a more current version of the package. Typically
-    this means you go to the maintainer's web site and download the most current
-    tarball and attempt to build the package. If you cannot determine the
-    maintainer's web site by looking at the download URLs, use Google and query
-    the package's name. For example, in the Google search bar type:
-    'package_name download' (omit the quotes) or something similar. Sometimes
-    typing: 'package_name home page' will result in you finding the
-    maintainer's web site.</para>
-
-  </sect2>
-
-  <sect2 id="stripping">
-    <title>Stripping One More Time</title>
-
-    <para>
-      In LFS, stripping of debugging symbols and unneeded symbol table
-      entries was discussed a couple of times.  When building BLFS packages,
-      there are generally no special instructions that discuss stripping
-      again. Stripping can be done while installing a package, or
-      afterwards.
-    </para>
-
-    <bridgehead renderas="sect3" id="stripping-install">Stripping while Installing a Package</bridgehead>
-
-    <para>
-      There are several ways to strip executables installed by a
-      package. They depend on the build system used (see below <link
-        linkend="buildsystems">the section about build systems</link>),
-      so only some
-      generalities can be listed here:
-    </para>
-
-    <note>
-      <para>
-        The following methods using the feature of a building system
-        (autotools, meson, or cmake) will not strip static libraries if any
-        is installed.  Fortunately there are not too many static libraries
-        in BLFS, and a static library can always be stripped safely by
-        running <command>strip --strip-unneeded</command> on it manually.
-      </para>
-    </note>
-
-    <itemizedlist>
-      <listitem>
-        <para>
-          The packages using autotools usually have an
-          <parameter>install-strip</parameter> target in their generated
-          <filename>Makefile</filename> files. So installing stripped
-          executables is just a matter of using
-          <command>make install-strip</command> instead of
-          <command>make install</command>.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          The packages using the meson build system can accept
-          <parameter>-Dstrip=true</parameter> when running
-          <command>meson</command>.  If you've forgot to add this option
-          running the <command>meson</command>, you can also run
-          <command>meson install --strip</command> instead of
-          <command>ninja install</command>.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          <command>cmake</command> generates
-          <parameter>install/strip</parameter> targets for both the
-          <parameter>Unix Makefiles</parameter> and
-          <parameter>Ninja</parameter> generators (the default is
-          <parameter>Unix Makefiles</parameter> on linux). So just run
-          <command>make install/strip</command> or
-          <command>ninja install/strip</command> instead of the
-          <command>install</command> counterparts.
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Removing (or not generating) debug symbols can also be
-          achieved by removing the
-          <parameter>-g&lt;something&gt;</parameter> options
-          in C/C++ calls. How to do that is very specific for each
-          package.  And, it does not remove unneeded symbol table entries.
-          So it will not be explained in detail here. See also below
-          the paragraphs about optimization.
-        </para>
-      </listitem>
-    </itemizedlist>
-
-    <bridgehead renderas="sect3" id="stripping-installed">Stripping Installed Executables</bridgehead>
-
-    <para>
-      The <command>strip</command> utility changes files in place, which may
-      break anything using it if it is loaded in memory. Note that if a file is
-      in use but just removed from the disk (i.e. not overwritten nor
-      modified), this is not a problem since the kernel can use
-      <quote>deleted</quote> files.  Look at <filename>/proc/*/maps</filename>
-      and it is likely that you'll see some <emphasis>(deleted)</emphasis>
-      entries. The <command>mv</command> just removes the destination file from
-      the directory but does not touch its content, so that it satisfies the
-      condition for the kernel to use the old (deleted) file.
-      But this approach can detach hard links into duplicated copies,
-      causing a bloat which is obviously unwanted as we are stripping to
-      reduce system size.  If two files in a same file system share the
-      same inode number, they are hard links to each other and we should
-      reconstruct the link.  The script below is just an example.
-      It should be run as the &root; user:
-    </para>
-
-<screen><userinput>cat &gt; /usr/sbin/strip-all.sh &lt;&lt; "EOF"
-<literal>#!/usr/bin/bash
-
-if [ $EUID -ne 0 ]; then
-  echo "Need to be root"
-  exit 1
-fi
-
-last_fs_inode=
-last_file=
-
-{ find /usr/lib -type f -name '*.so*' ! -name '*dbg'
-  find /usr/lib -type f -name '*.a'
-  find /usr/{bin,sbin,libexec} -type f
-} | xargs stat -c '%m %i %n' | sort | while read fs inode file; do
-       if ! readelf -h $file >/dev/null 2>&amp;1; then continue; fi
-       if file $file | grep --quiet --invert-match 'not stripped'; then continue; fi
-
-       if [ "$fs $inode" = "$last_fs_inode" ]; then
-         ln -f $last_file $file;
-         continue;
-       fi
-
-       cp --preserve $file    ${file}.tmp
-       strip --strip-unneeded ${file}.tmp
-       mv ${file}.tmp $file
-
-       last_fs_inode="$fs $inode"
-       last_file=$file
-done</literal>
-EOF
-chmod 744 /usr/sbin/strip-all.sh</userinput></screen>
-
-    <para>
-      If you install programs in other directories such as <filename
-      class="directory">/opt</filename> or <filename
-      class="directory">/usr/local</filename>, you may want to strip the files
-      there too. Just add other directories to scan in the compound list of
-      <command>find</command> commands between the braces.
-    </para>
-
-    <para>
-      For more information on stripping, see <ulink
-      url="https://www.technovelty.org/linux/stripping-shared-libraries.html"/>.
-    </para>
-
-  </sect2>
-
-<!--
-  <sect2 id="libtool">
-    <title>Libtool files</title>
-
-    <para>
-      One of the side effects of packages that use Autotools, including
-      libtool, is that they create many files with an .la extension.  These
-      files are not needed in an LFS environment.  If there are conflicts with
-      pkgconfig entries, they can actually prevent successful builds.  You
-      may want to consider removing these files periodically:
-    </para>
-
-<screen><userinput>find /lib /usr/lib -not -path "*Image*" -a -name \*.la -delete</userinput></screen>
-
-    <para>
-      The above command removes all .la files with the exception of those that
-      have <quote>Image</quote> or <quote>openldap</quote> as a part of the
-      path.  These .la files are used by the ImageMagick and openldap programs,
-      respectively.  There may be other exceptions by packages not in BLFS.
-    </para>
-
-  </sect2>
--->
-  <sect2 id="buildsystems">
-    <title>Working with different build systems</title>
-
-    <para>
-      There are now three different build systems in common use for
-      converting C or C++ source code into compiled programs or
-      libraries and their details (particularly, finding out about available
-      options and their default values) differ. It may be easiest to understand
-      the issues caused by some choices (typically slow execution or
-      unexpected use of, or omission of, optimizations) by starting with
-      the <envar>CFLAGS</envar>, <envar>CXXFLAGS</envar>, and
-      <envar>LDFLAGS</envar> environment variables.  There are also some
-      programs which use Rust.
-    </para>
-
-    <para>
-      Most LFS and BLFS builders are probably aware of the basics of
-      <envar>CFLAGS</envar> and <envar>CXXFLAGS</envar> for altering how a
-      program is compiled. Typically, some form of optimization is used by
-      upstream developers (<option>-O2</option> or <option>-O3</option>),
-      sometimes with the creation of debug symbols (<option>-g</option>),
-      as defaults.
-    </para>
-
-    <para>
-      If there are contradictory flags (e.g. multiple different
-      <option>-O</option> values),
-      the <emphasis>last</emphasis> value will be used. Sometimes this means
-      that flags specified in environment variables will be picked up before
-      values hardcoded in the Makefile, and therefore ignored.  For example,
-      where a user specifies <option>-O2</option> and that is followed by
-      <option>-O3</option> the build will use <option>-O3</option>.
-    </para>
-
-    <para>
-      There are various other things which can be passed in CFLAGS or
-      CXXFLAGS, such as allowing using the instruction set extensions
-      available with a specific microarchitecture (e.g.
-      <option>-march=amdfam10</option> or <option>-march=native</option>),
-      tune the generated code for a specific microarchitecture (e. g.
-      <option>-mtune=tigerlake</option> or <option>-mtune=native</option>,
-      if <option>-mtune=</option> is not used, the microarchitecture from
-      <option>-march=</option> setting will be used), or specifying a
-      specific standard for C or C++ (<option>-std=c++17</option> for
-      example).  But one thing which has now come to light is that
-      programmers might include debug assertions in their code, expecting
-      them to be disabled in releases by using <option>-DNDEBUG</option>.
-      Specifically, if <xref linkend="mesa"/> is built with these
-      assertions enabled, some activities such as loading levels of games
-      can take extremely long times, even on high-class video cards.
-    </para>
-
-    <bridgehead renderas="sect3" id="autotools-info">Autotools with Make</bridgehead>
-
-      <para>
-        This combination is often described as <quote>CMMI</quote>
-        (configure, make, make install) and is used here to also cover
-        the few packages which have a configure script that is not
-        generated by autotools.
-      </para>
-
-      <para>
-        Sometimes running <command>./configure --help</command> will produce
-        useful options about switches which might be used.  At other times,
-        after looking at the output from configure you may need to look
-        at the details of the script to find out what it was actually searching
-        for.
-      </para>
-
-      <para>
-       Many configure scripts will pick up any CFLAGS or CXXFLAGS from the
-       environment, but CMMI packages vary about how these will be mixed with
-       any flags which would otherwise be used (<emphasis>variously</emphasis>:
-       ignored, used to replace the programmer's suggestion, used before the
-       programmer's suggestion, or used after the programmer's suggestion).
-      </para>
-
-      <para>
-        In most CMMI packages, running <command>make</command> will list
-        each command and run it, interspersed with any warnings. But some
-        packages try to be <quote>silent</quote> and only show which file
-        they are compiling or linking instead of showing the command line.
-        If you need to inspect the command, either because of an error, or
-        just to see what options and flags are being used, adding
-        <option>V=1</option> to the make invocation may help.
-      </para>
-
-    <bridgehead renderas="sect3" id="cmake-info">CMake</bridgehead>
-
-      <para>
-        CMake works in a very different way, and it has two backends which
-        can be used on BLFS: <command>make</command> and
-        <command>ninja</command>. The default backend is make, but
-        ninja can be faster on large packages with multiple processors. To
-        use ninja, specify <option>-G Ninja</option> in the cmake command.
-        However, there are some packages which create fatal errors in their
-        ninja files but build successfully using the default of Unix
-        Makefiles.
-      </para>
-
-      <para>
-        The hardest part of using CMake is knowing what options you might wish
-        to specify. The only way to get a list of what the package knows about
-        is to run <command>cmake -LAH</command> and look at the output for that
-        default configuration.
-      </para>
-
-      <para>
-        Perhaps the most-important thing about CMake is that it has a variety
-        of CMAKE_BUILD_TYPE values, and these affect the flags. The default
-        is that this is not set and no flags are generated. Any
-        <envar>CFLAGS</envar> or <envar>CXXFLAGS</envar> in the environment
-        will be used. If the programmer has coded any debug assertions,
-        those will be enabled unless -DNDEBUG is used. The following
-        CMAKE_BUILD_TYPE values will generate the flags shown, and these
-        will come <emphasis>after</emphasis> any flags in the environment
-        and therefore take precedence.
-      </para>
-
-      <informaltable align="center">
-        <tgroup cols="2">
-          <colspec colnum="1" align="center"/>
-          <colspec colnum="2" align="center"/>
-          <thead>
-            <row><entry>Value</entry><entry>Flags</entry></row>
-          </thead>
-          <tbody>
-            <row>
-              <entry>Debug</entry><entry><option>-g</option></entry>
-            </row>
-            <row>
-              <entry>Release</entry><entry><option>-O3 -DNDEBUG</option></entry>
-            </row>
-            <row>
-              <entry>RelWithDebInfo</entry><entry><option>-O2 -g -DNDEBUG</option></entry>
-            </row>
-            <row>
-              <entry>MinSizeRel</entry><entry><option>-Os -DNDEBUG</option></entry>
-            </row>
-          </tbody>
-        </tgroup>
-      </informaltable>
-
-      <para>
-        CMake tries to produce quiet builds. To see the details of the commands
-        which are being run, use <command>make VERBOSE=1</command> or
-        <command>ninja -v</command>.
-      </para>
-
-      <para>
-        By default, CMake treats file installation differently from the other
-        build systems: if a file already exists and is not newer than a file
-        that would overwrite it, then the file is not installed. This may be
-        a problem if a user wants to record which file belongs to a package,
-        either using <envar>LD_PRELOAD</envar>, or by listing files newer
-        than a timestamp. The default can be changed by setting the variable
-        <envar>CMAKE_INSTALL_ALWAYS</envar> to 1 in the
-        <emphasis>environment</emphasis>, for example by
-        <command>export</command>'ing it.
-      </para>
-
-    <bridgehead renderas="sect3" id="meson-info">Meson</bridgehead>
-
-      <para>
-        Meson has some similarities to CMake, but many differences. To get
-        details of the defines that you may wish to change you can look at
-        <filename>meson_options.txt</filename> which is usually in the
-        top-level directory.
-      </para>
-
-      <para>
-        If you have already configured the package by running
-        <command>meson</command> and now wish to change one or more settings,
-        you can either remove the build directory, recreate it, and use the
-        altered options, or within the build directory run <command>meson
-        configure</command>, e.g. to set an option:
-      </para>
-
-<screen><userinput>meson configure -D&lt;some_option&gt;=true</userinput></screen>
-
-      <para>
-        If you do that, the file <filename>meson-private/cmd_line.txt</filename>
-        will show the <emphasis>last</emphasis> commands which were used.
-      </para>
-
-      <para>
-        Meson provides the following buildtype values, and the flags they enable
-        come <emphasis>after</emphasis> any flags supplied in the environment and
-        therefore take precedence.
-      </para>
-
-      <itemizedlist>
-        <listitem>
-          <para>plain : no added flags. This is for distributors to supply their
-          own <envar>CFLAGS</envar>, <envar>CXXFLAGS</envar> and
-          <envar>LDFLAGS</envar>. There is no obvious reason to use
-          this in BLFS.</para>
-        </listitem>
-        <listitem>
-          <para>debug : <option>-g</option> - this is the default if
-          nothing is specified in either <filename>meson.build</filename>
-          or the command line. However it results large and slow binaries,
-          so we should override it in BLFS.</para>
-        </listitem>
-        <listitem>
-          <para>debugoptimized : <option>-O2 -g</option> - this is the
-          default specified in <filename>meson.build</filename> of some
-          packages.</para>
-        </listitem>
-        <listitem>
-          <para>release : <option>-O3</option> (occasionally a package will
-          force <option>-O2</option> here) - this is the buildtype we use
-          for most packages with Meson build system in BLFS.</para>
-        </listitem>
-      </itemizedlist>
-
-      <!-- From https://mesonbuild.com/Builtin-options.html#core-options:
-           b_ndebug: Default value = false, Possible values are
-           true, false, if-release.  Some packages sets it to if-release
-           so we mistakenly believed if-release had been the default.  -->
-      <para>
-        The <option>-DNDEBUG</option> flag is implied by the release
-        buildtype for some packages (for example <xref linkend='mesa'/>).
-        It can also be provided explicitly by passing
-        <option>-Db_ndebug=true</option>.
-      </para>
-
-      <para>
-        To see the details of the commands which are being run in a package using
-        meson, use <command>ninja -v</command>.
-      </para>
-
-    <bridgehead renderas="sect3" id="rust-info">Rustc and Cargo</bridgehead>
-
-      <para>
-        Most released rustc programs are provided as crates (source tarballs)
-        which will query a server to check current versions of dependencies
-        and then download them as necessary.  These packages are built using
-        <command>cargo --release</command>. In theory, you can manipulate the
-        RUSTFLAGS to change the optimize-level (default for
-        <option>--release</option> is 3, i. e.
-        <option>-Copt-level=3</option>, like <option>-O3</option>) or to
-        force it to build for the machine it is being compiled on, using
-        <option>-Ctarget-cpu=native</option> but in practice this seems to
-        make no significant difference.
-      </para>
-
-      <para>
-        If you are compiling a standalone Rust program (as an unpackaged
-        <filename class='extension'>.rs</filename> file) by running
-        <command>rustc</command> directly, you should specify
-        <option>-O</option> (the abbreviation of
-        <option>-Copt-level=2</option>) or <option>-Copt-level=3</option>
-        otherwise it will do an unoptimized compile and run
-        <emphasis>much</emphasis> slower.  If are compiling the program
-        for debugging it, replace the <option>-O</option> or
-        <option>-Copt-level=</option> options with <option>-g</option> to
-        produce an unoptimized program with debug info.
-      </para>
-
-      <para>
-        Like <command>ninja</command>, by default <command>cargo</command>
-        uses all logical cores.  This can often be worked around,
-        either by exporting
-        <envar>CARGO_BUILD_JOBS=<replaceable>&lt;N&gt;</replaceable></envar>
-        or passing
-        <option>--jobs <replaceable>&lt;N&gt;</replaceable></option> to
-        <command>cargo</command>.
-        For compiling rustc itself, specifying
-        <option>--jobs <replaceable>&lt;N&gt;</replaceable></option> for
-        invocations of <command>x.py</command>
-        (together with the <envar>CARGO_BUILD_JOBS</envar> environment
-        variable, which looks like a <quote>belt and braces</quote>
-        approach but seems to be necessary) mostly works. The exception is
-        running the tests when building rustc, some of them will
-        nevertheless use all online CPUs, at least as of rustc-1.42.0.
-      </para>
-
-  </sect2>
-
-  <sect2 id="optimizations">
-    <title>Optimizing the build</title>
-
-      <para>
-        Many people will prefer to optimize compiles as they see fit, by providing
-        <envar>CFLAGS</envar> or <envar>CXXFLAGS</envar>. For an
-        introduction to the options available with gcc and g++ see <ulink
-        url="https://gcc.gnu.org/onlinedocs/gcc-&gcc-version;/gcc/Optimize-Options.html"/>.
-        The same content can be also found in <command>info gcc</command>.
-      </para>
-
-      <para>
-        Some packages default to <option>-O2 -g</option>, others to
-        <option>-O3 -g</option>, and if <envar>CFLAGS</envar> or
-        <envar>CXXFLAGS</envar> are supplied they might be added to the
-        package's defaults, replace the package's defaults, or even be
-        ignored.  There are details on some desktop packages which were
-        mostly current in April 2019 at
-        <ulink url="https://www.linuxfromscratch.org/~ken/tuning/"/> - in
-        particular, <filename>README.txt</filename>,
-        <filename>tuning-1-packages-and-notes.txt</filename>, and
-        <filename>tuning-notes-2B.txt</filename>. The particular thing to
-        remember is that if you want to try some of the more interesting
-        flags you may need to force verbose builds to confirm what is being
-        used.
-      </para>
-
-      <para>
-        Clearly, if you are optimizing your own program you can spend time to
-        profile it and perhaps recode some of it if it is too slow. But for
-        building a whole system that approach is impractical. In general,
-        <option>-O3</option> usually produces faster programs than
-        <option>-O2</option>.  Specifying
-        <option>-march=native</option> is also beneficial, but means that
-        you cannot move the binaries to an incompatible machine - this can
-        also apply to newer machines, not just to older machines. For
-        example programs compiled for <literal>amdfam10</literal> run on
-        old Phenoms, Kaveris, and Ryzens : but programs compiled for a
-        Kaveri will not run on a Ryzen because certain op-codes are not
-        present.  Similarly, if you build for a Haswell not everything will
-        run on a SandyBridge.
-      </para>
-
-      <note>
-        <para>
-          Be careful that the name of a <option>-march</option> setting
-          does not always match the baseline of the microarchitecture
-          with the same name.  For example, the Skylake-based Intel Celeron
-          processors do not support AVX at all, but
-          <option>-march=skylake</option> assumes AVX and even AVX2.
-        </para>
-      </note>
-
-      <para>
-        When a shared library is built by GCC, a feature named
-        <quote>semantic interposition</quote> is enabled by default.  When
-        the shared library refers to a symbol name with external linkage
-        and default visibility, if the symbol exists in both the shared
-        library and the main executable, semantic interposition guarantees
-        the symbol in the main executable is always used.  This feature
-        was invented in an attempt to make the behavior of linking a shared
-        library and linking a static library as similar as possible.  Today
-        only a small number of packages still depend on semantic
-        interposition, but the feature is still on by the default of GCC,
-        causing many optimizations disabled for shared libraries because
-        they conflict with semantic interposition.  The
-        <option>-fno-semantic-interposition</option> option can be passed
-        to <command>gcc</command> or <command>g++</command> to disable
-        semantic interposition and enable more optimizations for shared
-        libraries.  This option is used as the default of some packages
-        (for example <xref linkend='python3'/>), and it's also the default
-        of Clang.
-      </para>
-
-      <para>
-        There are also various other options which some people claim are
-        beneficial. At worst, you get to recompile and test, and then
-        discover that in your usage the options do not provide a benefit.
-      </para>
-
-      <para>
-        If building Perl or Python modules,
-        in general the <envar>CFLAGS</envar> and <envar>CXXFLAGS</envar>
-        used are those which were used by those <quote>parent</quote>
-        packages.
-      </para>
-
-      <para>
-        For <envar>LDFLAGS</envar>, there are three options can be used
-        for optimization.  They are quite safe to use and the building
-        system of some packages use some of these options as the default.
-      </para>
-
-      <para>
-        With <option>-Wl,-O1</option>, the linker will
-        optimize the hash table to speed up the dynamic linking.
-        Note that <option>-Wl,-O1</option> is completely unrelated to the
-        compiler optimization flag <option>-O1</option>.
-      </para>
-
-      <para>
-        With <option>-Wl,--as-needed</option>, the linker will disregard
-        unnecessary <option>-l<replaceable>foo</replaceable></option> options
-        from the command line, i. e. the shared library <systemitem
-        class='library'>lib<replaceable>foo</replaceable></systemitem>
-        will only be linked if a symbol in <systemitem
-        class='library'>lib<replaceable>foo</replaceable></systemitem> is
-        really referred from the executable or shared library being linked.
-        This can sometimes mitigate the <quote>excessive dependencies to
-        shared libraries</quote> issues caused by
-        <application>libtool</application>.
-      </para>
-
-      <para>
-        With <option>-Wl,-z,pack-relative-relocs</option>, the linker
-        generates a more compacted form of the relative relocation entries
-        for PIEs and shared libraries.  It reduces the size of the linked
-        PIE or shared library, and speeds up the loading of the PIE or
-        shared library.
-      </para>
-
-      <para>
-        The <option>-Wl,</option> prefix is necessary because despite the
-        variable is named <envar>LDFLAGS</envar>, its content is actually
-        passed to <command>gcc</command> (or <command>g++</command>,
-        <command>clang</command>, etc.) during the link stage, not directly
-        passed to <command>ld</command>.
-      </para>
-
-  </sect2>
-
-  <sect2 id="hardening">
-    <title>Options for hardening the build</title>
-
-      <para>
-        Even on desktop systems, there are still a lot of exploitable
-        vulnerabilities. For many of these, the attack comes via javascript
-        in a browser. Often, a series of vulnerabilities are used to gain
-        access to data (or sometimes to pwn, i.e. own, the machine and
-        install rootkits).  Most commercial distros will apply various
-        hardening measures.
-      </para>
-
-      <para>
-        In the past, there was Hardened LFS where gcc (a much older version)
-        was forced to use hardening (with options to turn some of it off on a
-        per-package basis).  The current LFS and BLFS books are carrying
-        forward a part of its spirit by enabling PIE
-        (<option>-fPIE -pie</option>) and SSP
-        (<option>-fstack-protector-strong</option>) as the defaults
-        for GCC and clang.  What is being covered here is different - first
-        you have to make sure that the package is indeed using your added
-        flags and not over-riding them.
-      </para>
-
-      <para>
-        For hardening options which are reasonably cheap, there is some
-        discussion in the 'tuning' link above (occasionally, one or more
-        of these options might be inappropriate for a package). These
-        options are <option>-D_FORTIFY_SOURCE=2</option>
-        (or <option>-D_FORTIFY_SOURCE=3</option> which is more secure but
-        with a larger performance overhead) and
-        (for C++) <option>-D_GLIBCXX_ASSERTIONS</option>. On modern
-        machines these should only have a little impact on how fast things
-        run, and often they will not be noticeable.
-      </para>
-
-      <para>
-        The main distros use much more, such as RELRO (Relocation Read Only)
-        and perhaps <option>-fstack-clash-protection</option>. You may also
-        encounter the so-called <quote>userspace retpoline</quote>
-        (<option>-mindirect-branch=thunk</option> etc.) which
-        is the equivalent of the spectre mitigations applied to the linux
-        kernel in late 2018. The kernel mitigations caused a lot of complaints
-        about lost performance, if you have a production server you might wish
-        to consider testing that, along with the other available options, to
-        see if performance is still sufficient.
-      </para>
-
-      <para>
-        Whilst gcc has many hardening options, clang/LLVM's strengths lie
-        elsewhere. Some options which gcc provides are said to be less effective
-        in clang/LLVM.
-      </para>
-
-  </sect2>
-
-</sect1>
Index: introduction/important/cgroup-kernel.xml
===================================================================
--- introduction/important/cgroup-kernel.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,9 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE note PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
-<!-- Automatically generated by kernel-config.py
-     DO NOT EDIT! -->
-<screen><emphasis role='blue'>G</emphasis>eneral setup ---&gt;
-  [*] <emphasis role='blue'>C</emphasis>ontrol Group support ---&gt;                                       [CGROUPS]
-    [*] M<emphasis role='blue'>e</emphasis>mory controller                                                [MEMCG]
-    [*] <emphasis role='blue'>C</emphasis>puset controller                                              [CPUSETS]</screen>
Index: introduction/important/important.xml
===================================================================
--- introduction/important/important.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/important/important.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,35 +1,10 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<chapter id="intro-important" xreflabel="Important Information">
+<?dbhtml filename="important.html" dir="introduction"?>
+<title>Important Information</title>
 
-<chapter id="important">
-  <?dbhtml filename="important.html"?>
-
-  <title>Important Information</title>
-
-  <para>This chapter is used to explain some of the policies used throughout
-  the book, to introduce important concepts and to explain some issues you may
-  see with some of the included packages.</para>
-
-  <!-- Moved to LFS
-     <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pkgmgt.xml"/>
-  -->
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="building-notes.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="position.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="patches.xml"/>
-
-  <!-- sysv only -->
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bootscripts.xml"/>
-
-  <!-- systemd only -->
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="systemd-units.xml"/>
-
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="la-files.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libraries.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="locale-issues.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="beyond.xml"/>
+&intro-important-unpacking;
+&intro-important-position;
+&intro-important-bootscripts;
+&intro-important-beyond;
 
 </chapter>
Index: introduction/important/la-files.xml
===================================================================
--- introduction/important/la-files.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,154 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="la-files" xreflabel="Libtool archive (.la) files">
-  <?dbhtml filename="la-files.html"?>
-
-
-  <title>About Libtool Archive (.la) files</title>
-
-  <!-- section g : 'Others' in longindex.html -->
-  <indexterm zone="la-files">
-    <primary sortas="g-la-files">Library archive (.la) files</primary>
-  </indexterm>
-
-  <sect2 role="package">
-    <title>Files with a .la extension</title>
-
-    <para>
-
-      In LFS and BLFS, many packages use a internally shipped libtool copy to
-      build on a variety of Unix platforms.  This includes platforms such as
-      AIX, Solaris, IRIX, HP-UX, and Cygwin as well as Linux.  The origins of
-      this tool are quite dated.  It was intended to manage libraries on
-      systems with less advanced capabilities than a modern Linux system.
-
-    </para>
-
-    <para>
-
-      On a Linux system, libtool specific files are generally unneeded.
-      Normally libraries are specified in the build process during the link
-      phase.  Since a linux system uses the <ulink
-      url="https://en.wikipedia.org/wiki/Executable_and_Linkable_Format">
-      Executable and Linkable Format (ELF)</ulink> for executables and
-      dynamic libraries, information needed to complete the task is embedded
-      in the files.  Both the linker and the program loader can query the
-      appropriate files and properly link or execute the program.
-
-    </para>
-
-    <para>
-      Static libraries are rarely used in LFS and BLFS.  And, nowadays most
-      packages store the information needed for linking against a static
-      library into a .pc file, instead of relying on libtool.
-      A <command>pkg-config --static --libs</command> command will output
-      the sufficient flags for the linker to link against a static library
-      without any libtool magic.
-    </para>
-
-    <para>
-      The problem is that libtool usually creates one or more text files for
-      package libraries called libtool archives.  These small files have a
-      ".la" extension and contain information that is similar to that embedded
-      in the libraries or pkg-config files.  When building a package that
-      uses libtool, the process automatically looks for these files.
-      Sometimes a .la file can contains the name or path of a static library
-      used during build but not installed, then the build process will break
-      because the .la file refers to something nonexistent on the system.
-      Similarly, if a package is updated and no longer uses the .la file,
-      then the build process can break with the old .la files.
-    </para>
-
-    <para>
-
-       The solution is to remove the .la files.  However there is a catch.
-       Some packages, such as <xref linkend='imagemagick'/>, use a libtool
-       function, lt_dlopen, to load libraries as needed during execution and
-       resolve their dependencies at run time.  In this case, the .la files
-       should remain.
-
-    </para>
-
-    <para>
-
-        The script below, removes all unneeded .la files and saves them in a
-        directory, /var/local/la-files by default, not in the normal library
-        path.  It also searches all pkg-config files (.pc) for embedded
-        references to .la files and fixes them to be conventional library
-        references needed when an application or library is built.  It
-        can be run as needed to clean up the directories that may be causing
-        problems.
-
-    </para>
-
-<screen role="root"><userinput>cat &gt; /usr/sbin/remove-la-files.sh &lt;&lt; "EOF"
-<literal>#!/bin/bash
-
-# /usr/sbin/remove-la-files.sh
-# Written for Beyond Linux From Scratch
-# by Bruce Dubbs &lt;bdubbs@&lfs-domainname;&gt;
-
-# Make sure we are running with root privs
-if test "${EUID}" -ne 0; then
-    echo "Error: $(basename ${0}) must be run as the root user! Exiting..."
-    exit 1
-fi
-
-# Make sure PKG_CONFIG_PATH is set if discarded by sudo
-source /etc/profile
-
-OLD_LA_DIR=/var/local/la-files
-
-mkdir -p $OLD_LA_DIR
-
-# Only search directories in /opt, but not symlinks to directories
-OPTDIRS=$(find /opt -mindepth 1 -maxdepth 1 -type d)
-
-# Move any found .la files to a directory out of the way
-find /usr/lib $OPTDIRS -name "*.la" ! -path "/usr/lib/ImageMagick*" \
-  -exec mv -fv {} $OLD_LA_DIR \;
-###############
-
-# Fix any .pc files that may have .la references
-
-STD_PC_PATH='/usr/lib/pkgconfig
-             /usr/share/pkgconfig
-             /usr/local/lib/pkgconfig
-             /usr/local/share/pkgconfig'
-
-# For each directory that can have .pc files
-for d in $(echo $PKG_CONFIG_PATH | tr : ' ') $STD_PC_PATH; do
-
-  # For each pc file
-  for pc in $d/*.pc ; do
-    if [ $pc == "$d/*.pc" ]; then continue; fi
-
-    # Check each word in a line with a .la reference
-    for word in $(grep '\.la' $pc); do
-      if $(echo $word | grep -q '.la$' ); then
-        mkdir -p $d/la-backup
-        cp -fv  $pc $d/la-backup
-
-        basename=$(basename $word )
-        libref=$(echo $basename|sed -e 's/^lib/-l/' -e 's/\.la$//')
-
-        # Fix the .pc file
-        sed -i "s:$word:$libref:" $pc
-      fi
-    done
-  done
-done</literal>
-
-EOF
-
-chmod +x /usr/sbin/remove-la-files.sh</userinput></screen>
-
-
-  </sect2>
-
-</sect1>
Index: introduction/important/libraries.xml
===================================================================
--- introduction/important/libraries.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,141 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="libraries" xreflabel="libraries">
-  <?dbhtml filename="libraries.html"?>
-
-
-  <title>Libraries: Static or shared?</title>
-
-  <!-- section g : 'Others' in longindex.html -->
-  <indexterm zone="libraries">
-    <primary sortas="g-libraries">libraries: static or shared</primary>
-  </indexterm>
-
-  <sect2 role="package">
-    <title>Libraries: Static or shared?</title>
-
-    <para>
-      The original libraries were simply an archive of routines from which
-      the required routines were extracted and linked into the executable
-      program. These are described as static libraries, with names of the form
-      <filename>libfoo.a</filename> on UNIX-like operating systems.
-      On some old operating systems they are the only type available.
-    </para>
-
-    <para>
-      On almost all Linux platforms there are also <quote>shared</quote>
-      (or equivalently <quote>dynamic</quote>)
-      libraries (with names of the form <filename>libfoo.so</filename>) &ndash;
-      one copy of the library is loaded into virtual memory, and shared by
-      all the programs which call any of its functions. This is space
-      efficient.
-    </para>
-
-    <para>
-      In the past, essential programs such as a shell were often linked
-      statically so that some form of minimal recovery system would exist even
-      if shared libraries, such as <filename>libc.so</filename>, became
-      damaged (e.g. moved to <filename class="directory">lost+found</filename>
-      after <command>fsck</command> following an unclean shutdown). Nowadays,
-      most people use an alternative system install or a USB stick if they
-      have to recover. Journaling filesystems also reduce the likelihood of
-      this sort of problem.
-    </para>
-
-<!-- really?
-    <para>
-      Developers, at least while they are developing, often prefer to use
-      static versions of the libraries which their code links to.
-    </para>
--->
-    <para>
-      Within the book, there are various places where configure switches
-      such as <parameter>--disable-static</parameter> are employed, and
-      other places where the possibility of using system versions of
-      libraries instead of the versions included within another package is
-      discussed. The main reason for this is to simplify updates of libraries.
-    </para>
-
-    <para>
-      If a package is linked to a dynamic library, updating to a newer
-      library version is automatic once the newer library is installed and the
-      program is (re)started (provided the library major version is unchanged,
-      e.g. going from <filename>libfoo.so.2.0</filename> to
-      <filename>libfoo.so.2.1</filename>. Going to
-      <filename>libfoo.so.3</filename> will require recompilation &ndash;
-      <command>ldd</command> can be used to find which programs use the old
-      version). If a program is linked to a static
-      library, the program always has to be recompiled. If you know which
-      programs are linked to a particular static library, this is merely an
-      annoyance. But usually you will <emphasis>not</emphasis> know which
-      programs to recompile.
-    </para>
-<!-- obsolete with /usr merge
-    <para>Most libraries are shared, but if you do something unusual, such as
-    moving a shared library to <filename class="directory">/lib</filename>
-    accidentally breaking the <literal>.so</literal> symlink in
-    <filename class="directory">/usr/lib</filename> while keeping the static
-    library in <filename class="directory">/lib</filename>, the static library
-    will be silently linked into the programs which need it.</para>
--->
-    <para>
-      One way to identify when a static library is used, is to deal with
-      it at the end of the installation of every package.  Write a script
-      to find all the static libraries in <filename
-        class="directory">/usr/lib</filename> or wherever you are installing
-      to, and either move them to another directory so that they are no
-      longer found by the linker, or rename them so that
-      <filename>libfoo.a</filename> becomes
-      e.g. <filename>libfoo.a.hidden</filename>. The static library can then
-      be temporarily restored if it is ever needed, and the package needing
-      it can be identified. This shouldn't be done blindly since many
-      libraries only exist in a static version. For example, some libraries
-      from the <application>glibc</application> and
-      <application>gcc</application> packages should always be
-      present on the system (<filename>libc_nonshared.a, libg.a,
-        libpthread_nonshared.a, libssp_nonshared.a, libsupc++.a</filename>
-      as of glibc-2.36 and gcc-12.2).
-    </para>
-
-<!-- versions hardcoded in this para, it's a comment on those versions  -->
-    <para>If you use this approach, you may discover that more packages than
-    you were expecting use a static library. That was the case with
-    <application>nettle-2.4</application> in its default static-only
-    configuration: It was required by <application>GnuTLS-3.0.19</application>,
-    but also linked into package(s) which used
-    <application>GnuTLS</application>, such as
-    <application>glib-networking-2.32.3</application>.</para>
-
-    <para>Many packages put some of their common functions into a static
-    library which is only used by the programs within the package and,
-    crucially, the library is <emphasis>not</emphasis> installed as a
-    standalone library. These internal libraries are not a problem &ndash; if
-    the package has to be rebuilt to fix a bug or vulnerability, nothing else
-    is linked to them.</para>
-
-    <para>When BLFS mentions system libraries, it means shared versions of
-    libraries. Some packages such as <xref linkend="firefox"/> and
-    <xref linkend="gs"/> bundle many other libraries in their build tree.
-    The version they ship is often older than the version used in the system,
-    so it may contain bugs &ndash; sometimes developers go to the trouble of
-    fixing bugs in their included libraries, other times they do not.</para>
-
-    <para>Sometimes, deciding to use system libraries is an easy decision.
-    Other times it may require you to alter the system version (e.g. for
-    <xref linkend="libpng"/> if used for <xref linkend="firefox"/>).
-    Occasionally, a package ships an old library and can no longer link to
-    the current version, but can link to an older version. In this case, BLFS
-    will usually just use the shipped version. Sometimes the included library
-    is no longer developed separately, or its upstream is now the same as the
-    package&apos;s upstream and you have no other packages which will use it.
-    In those cases, you'll be lead to use the included library even if
-    you usually prefer to use system libraries.</para>
-
-  </sect2>
-
-</sect1>
Index: introduction/important/locale-issues.xml
===================================================================
--- introduction/important/locale-issues.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,293 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="locale-issues" xreflabel="Locale Related Issues">
-  <?dbhtml filename="locale-issues.html"?>
-
-
-  <title>Locale Related Issues</title>
-
-  <para>This page contains information about locale related problems and
-  issues. In the following paragraphs you'll find a generic overview of
-  things that can come up when configuring your system for various locales.
-  Many (but not all) existing locale related problems can be classified
-  and fall under one of the headings below. The severity ratings below use
-  the following criteria:</para>
-
-  <itemizedlist>
-    <listitem>
-      <para>Critical: The program doesn't perform its main function.
-      The fix would be very intrusive, it's better to search for a
-      replacement.</para>
-    </listitem>
-    <listitem>
-      <para>High: Part of the functionality that the program provides
-      is not usable. If that functionality is required, it's better to
-      search for a replacement.</para>
-    </listitem>
-    <listitem>
-      <para>Low: The program works in all typical use cases, but lacks
-      some functionality normally provided by its equivalents.</para>
-    </listitem>
-  </itemizedlist>
-
-  <para>If there is a known workaround for a specific package, it will
-    appear on that package's page.</para>
-
-  <sect2 id="locale-not-valid-option"
-         xreflabel="Needed Encoding Not a Valid Option">
-
-    <title>The Needed Encoding is Not a Valid Option in the Program</title>
-
-    <para>Severity: Critical</para>
-
-    <para>Some programs require the user to specify the character encoding
-    for their input or output data and present only a limited choice of
-    encodings. This is the case for the <option>-X</option> option in
-<!--    <xref linkend="a2ps"/> and --><xref linkend="enscript"/>,
-    the <option>-input-charset</option> option in unpatched
-    <xref linkend="cdrtools"/>, and the character sets offered for display
-    in the menu of <xref linkend="Links"/>. If the required encoding is not
-    in the list, the program usually becomes completely unusable. For
-    non-interactive programs, it may be possible to work around this by
-    converting the document to a supported input character set before
-    submitting to the program.</para>
-
-    <para>A solution to this type of problem is to implement the necessary
-    support for the missing encoding as a patch to the original program or to
-    find a replacement.</para>
-
-  </sect2>
-
-  <sect2 id="locale-assumed-encoding"
-         xreflabel="Program Assumes Encoding">
-
-    <title>The Program Assumes the Locale-Based Encoding of External
-    Documents</title>
-
-    <para>Severity: High for non-text documents, low for text
-    documents</para>
-
-    <para>Some programs, <xref linkend="nano"/> or
-    <xref linkend="joe"/> for example, assume that documents are always
-    in the encoding implied by the current locale. While this assumption
-    may be valid for the user-created documents, it is not safe for
-    external ones. When this assumption fails, non-ASCII characters are
-    displayed incorrectly, and the document may become unreadable.</para>
-
-    <para>If the external document is entirely text based, it can be
-    converted to the current locale encoding using the
-    <command>iconv</command> program.</para>
-
-    <para>For documents that are not text-based, this is not possible.
-    In fact, the assumption made in the program may be completely
-    invalid for documents where the Microsoft Windows operating system
-    has set de facto standards. An example of this problem is ID3v1 tags
-    in MP3 files. For these cases, the only solution is to find a
-    replacement program that doesn't have the issue (e.g., one that
-    will allow you to specify the assumed document encoding).</para>
-
-    <para>Among BLFS packages, this problem applies to
-    <xref linkend="nano"/>, <xref linkend="joe"/>, and all media players
-    except <xref linkend="audacious"/>.</para>
-
-    <para>Another problem in this category is when someone cannot read
-    the documents you've sent them because their operating system is
-    set up to handle character encodings differently. This can happen
-    often when the other person is using Microsoft Windows, which only
-    provides one character encoding for a given country. For example,
-    this causes problems with UTF-8 encoded TeX documents created in
-    Linux. On Windows, most applications will assume that these documents
-    have been created using the default Windows 8-bit encoding.
-    </para>
-
-    <para>In extreme cases, Windows encoding compatibility issues may be
-    solved only by running Windows programs under
-    <ulink url="https://www.winehq.org/">Wine</ulink>.</para>
-
-  </sect2>
-
-  <sect2 id="locale-wrong-filename-encoding"
-         xreflabel="Wrong Filename Encoding">
-
-    <title>The Program Uses or Creates Filenames in the Wrong Encoding</title>
-
-    <para>Severity: Critical</para>
-
-    <para>The POSIX standard mandates that the filename encoding is
-    the encoding implied by the current LC_CTYPE locale category. This
-    information is well-hidden on the page which specifies the behavior
-    of <application>Tar</application> and <application>Cpio</application>
-    programs. Some programs get it wrong by default (or simply don't
-    have enough information to get it right). The result is that they
-    create filenames which are not subsequently shown correctly by
-    <command>ls</command>, or they refuse to accept filenames that
-    <command>ls</command> shows properly. For the <xref linkend="glib2"/>
-    library, the problem can be corrected by setting the
-    <envar>G_FILENAME_ENCODING</envar> environment variable to the special
-    "@locale" value. <application>Glib2</application> based programs that
-    don't respect that environment variable are buggy.</para>
-
-    <para>The <xref linkend="zip"/> and <xref linkend="unzip"/> have this
-    problem because they hard-code the expected filename encoding.
-    <application>UnZip</application> contains a hard-coded conversion table
-    between the CP850 (DOS) and ISO-8859-1 (UNIX) encodings and uses this table
-    when extracting archives created under DOS or Microsoft Windows. However,
-    this assumption only works for those in the US and not for anyone using a
-    UTF-8 locale. Non-ASCII characters will be mangled in the extracted
-    filenames.</para>
-
-    <!--<para>On the other hand,
-    <application>Nautilus CD Burner</application> checks names of
-    files added to its window for UTF-8 validity. This is wrong for
-    users of non-UTF-8 locales. Also,
-    <application>Nautilus CD Burner</application> unconditionally
-    calls <command>mkisofs</command> with the
-    <parameter>-input-charset UTF-8</parameter> parameter, which is
-    only correct in UTF-8 locales.</para>-->
-
-    <para>The general rule for avoiding this class of problems is to
-    avoid installing broken programs. If this is impossible, the
-    <ulink url="https://j3e.de/linux/convmv/">convmv</ulink>
-    command-line tool can be used to fix filenames created by these
-    broken programs, or intentionally mangle the existing filenames
-    to meet the broken expectations of such programs.</para>
-
-    <para>In other cases, a similar problem is caused by importing
-    filenames from a system using a different locale with a tool that
-    is not locale-aware (e.g., <!--<xref linkend="nfs-utils"/> or-->
-    <xref linkend="openssh"/>). In order to avoid mangling non-ASCII
-    characters when transferring files to a system with a different
-    locale, any of the following methods can be used:</para>
-
-    <itemizedlist>
-      <listitem>
-        <para>Transfer anyway, fix the damage with
-        <command>convmv</command>.</para>
-      </listitem>
-      <listitem>
-        <para>On the sending side, create a tar archive with the
-        <parameter>--format=posix</parameter> switch passed to
-        <command>tar</command> (this will be the default in a future
-        version of <command>tar</command>).</para>
-      </listitem>
-      <listitem>
-        <para>Mail the files as attachments. Mail clients specify the
-        encoding of attached filenames.</para>
-      </listitem>
-      <listitem>
-        <para>Write the files to a removable disk formatted with a FAT or
-        FAT32 filesystem.</para>
-      </listitem>
-      <listitem>
-        <para>Transfer the files using Samba.</para>
-      </listitem>
-      <listitem>
-        <para>Transfer the files via FTP using RFC2640-aware server
-        (this currently means only wu-ftpd, which has bad security history)
-        and client (e.g., lftp).</para>
-      </listitem>
-    </itemizedlist>
-
-    <para>The last four methods work because the filenames are automatically
-    converted from the sender's locale to UNICODE and stored or sent in this
-    form. They are then transparently converted from UNICODE to the
-    recipient's locale encoding.</para>
-
-  </sect2>
-
-  <sect2 id="locale-wrong-multibyte-characters"
-         xreflabel="Breaks Multibyte Characters">
-
-    <title>The Program Breaks Multibyte Characters or Doesn't Count
-    Character Cells Correctly</title>
-
-    <para>Severity: High or critical</para>
-
-    <para>Many programs were written in an older era where multibyte
-    locales were not common. Such programs assume that C "char" data
-    type, which is one byte, can be used to store single characters.
-    Further, they assume that any sequence of characters is a valid
-    string and that every character occupies a single character cell.
-    Such assumptions completely break in UTF-8 locales. The visible
-    manifestation is that the program truncates strings prematurely
-    (i.e., at 80 bytes instead of 80 characters). Terminal-based
-    programs don't place the cursor correctly on the screen, don't react
-    to the "Backspace" key by erasing one character, and leave junk
-    characters around when updating the screen, usually turning the
-    screen into a complete mess.</para>
-
-    <para>Fixing this kind of problems is a tedious task from a
-    programmer's point of view, like all other cases of retrofitting new
-    concepts into the old flawed design. In this case, one has to redesign
-    all data structures in order to accommodate to the fact that a complete
-    character may span a variable number of "char"s (or switch to wchar_t
-    and convert as needed). Also, for every call to the "strlen" and
-    similar functions, find out whether a number of bytes, a number of
-    characters, or the width of the string was really meant. Sometimes it
-    is faster to write a program with the same functionality from scratch.
-    </para>
-
-    <para>Among BLFS packages, this problem applies to
-    <xref linkend="xine-ui"/> and all the shells.</para>
-
-  </sect2>
-
-  <sect2 id="locale-wrong-manpage-encoding"
-         xreflabel="Incorrect Manual Page Encoding">
-
-    <title>The Package Installs Manual Pages in Incorrect or
-    Non-Displayable Encoding</title>
-
-    <para>Severity: Low</para>
-
-    <para>LFS expects that manual pages are in the language-specific (usually
-    8-bit) encoding, as specified on the <ulink
-    url="&lfs-root;/chapter08/man-db.html">LFS Man DB page</ulink>. However,
-    some packages install translated manual pages in UTF-8 encoding (e.g.,
-    Shadow, already dealt with), or manual pages in languages not in the table.
-    Not all BLFS packages have been audited for conformance with the
-    requirements put in LFS (the large majority have been checked, and fixes
-    placed in the book for packages known to install non-conforming manual
-    pages). If you find a manual page installed by any of BLFS packages that is
-    obviously in the wrong encoding, please remove or convert it as needed, and
-    report this to BLFS team as a bug.</para>
-
-    <para>You can easily check your system for any non-conforming manual pages
-    by copying the following short shell script to some accessible location,
-
-<screen><literal>#!/bin/sh
-# Begin checkman.sh
-# Usage: find /usr/share/man -type f | xargs checkman.sh
-for a in "$@"
-do
-    # echo "Checking $a..."
-    # Pure-ASCII manual page (possibly except comments) is OK
-    grep -v '.\\"' "$a" | iconv -f US-ASCII -t US-ASCII >/dev/null 2>&amp;1 \
-        &amp;&amp; continue
-    # Non-UTF-8 manual page is OK
-    iconv -f UTF-8 -t UTF-8 "$a" >/dev/null 2>&amp;1 || continue
-    # Found a UTF-8 manual page, bad.
-    echo "UTF-8 manual page: $a" >&amp;2
-done
-# End checkman.sh
-</literal></screen>
-
-    and then issuing the following command (modify the command below if the
-    <command>checkman.sh</command> script is not in your <envar>PATH</envar>
-    environment variable):</para>
-
-<screen><userinput>find /usr/share/man -type f | xargs checkman.sh</userinput></screen>
-
-    <para>Note that if you have manual pages installed in any location other
-    than <filename class='directory'>/usr/share/man</filename> (e.g.,
-    <filename class='directory'>/usr/local/share/man</filename>), you must
-    modify the above command to include this additional location.</para>
-
-  </sect2>
-
-</sect1>
Index: introduction/important/patches.xml
===================================================================
--- introduction/important/patches.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,37 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="patches">
-  <?dbhtml filename="patches.html"?>
-
-
-  <title>Optional Patches</title>
-
-  <para>As you follow the various sections in the book, you will observe that
-  the book occasionally includes patches that are required for a successful and
-  secure installation of the packages. The general policy of the book is to
-  include patches that fall in one of the following criteria:</para>
-
-  <itemizedlist>
-    <listitem>
-      <para>Fixes a compilation problem.</para>
-    </listitem>
-    <listitem>
-      <para>Fixes a security problem.</para>
-    </listitem>
-    <listitem>
-      <para>Fixes a broken functionality.</para>
-    </listitem>
-  </itemizedlist>
-
-  <para>In short, the book only includes patches that are either required or
-  recommended. There is a
-  <ulink url="https://www.&lfs-domainname;/patches">Patches subproject</ulink>
-  which hosts various patches (including the patches referenced in the books)
-  to enable you to configure your LFS the way you like it.</para>
-
-</sect1>
Index: introduction/important/pkgmgt.xml
===================================================================
--- introduction/important/pkgmgt.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,235 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="pkgmgt">
-  <?dbhtml filename="pkgmgt.html"?>
-
-
-  <title>Package Management</title>
-
-  <para>Package Management is an often requested addition
-  to the LFS Book. A Package Manager allows tracking
-  the installation of files making it easy to remove and upgrade packages.
-  And before you begin to wonder, NO&mdash;this section does not talk about any
-  particular package manager, nor does it recommend one. What it provides is
-  a roundup of the more popular techniques and how they work. The perfect
-  package manager for you may be among these techniques or may be a combination
-  of two or more of these techniques. This section briefly mentions
-  issues that may arise when upgrading packages.</para>
-
-  <para>Some reasons why no package manager is mentioned in LFS
-  or BLFS:</para>
-
-  <itemizedlist>
-    <listitem>
-      <para>Dealing with package management takes the focus away from
-      the goals of these books&mdash;teaching how a Linux system is built.</para>
-    </listitem>
-    <listitem>
-      <para>There are multiple solutions for package management, each having
-      its strengths and drawbacks. Including one that satisfies all audiences is
-      difficult.</para>
-    </listitem>
-  </itemizedlist>
-
-  <para>There are some hints written on the topic of package management. Visit
-  the <ulink url="&hints-root;">Hints subproject</ulink>
-  and see if one of them fits your need.</para>
-
-  <sect2>
-    <title>Upgrade Issues</title>
-
-    <para>A Package Manager makes it easy to upgrade to newer versions when
-    they are released. Generally the instructions in the LFS and BLFS Book can be
-    used to upgrade to the newer versions. Here are some points that you should
-    be aware of when upgrading packages, especially on a running system.</para>
-
-    <itemizedlist>
-      <listitem>
-        <para>If one of the toolchain packages
-        (<application>Glibc</application>, <application>GCC</application> or
-        <application>Binutils</application>) needs to be upgraded to a newer
-        minor version, it is safer to rebuild LFS. Though you
-        <emphasis>may</emphasis> be able to get by rebuilding all the packages
-        in their dependency order, we do not recommend it. For example, if
-        glibc-2.2.x needs to be updated to glibc-2.3.x, it is safer to rebuild.
-        For micro version updates, a simple reinstallation usually works, but
-        is not guaranteed. For example, upgrading from glibc-2.3.4 to
-        glibc-2.3.5 will not usually cause any problems.</para>
-      </listitem>
-      <listitem>
-        <para>If a package containing a shared library is updated, and if the
-        name of the library changes, then all the packages dynamically linked
-        to the library need to be recompiled to link against the newer library.
-        (Note that there is no correlation between the package version and the
-        name of the library.) For example, consider a package foo-1.2.3 that
-        installs a shared library with name
-        <filename class='libraryfile'>libfoo.so.1</filename>. Say you upgrade
-        the package to a newer version foo-1.2.4 that installs a shared library
-        with name <filename class='libraryfile'>libfoo.so.2</filename>. In this
-        case, all packages that are dynamically linked to
-        <filename class='libraryfile'>libfoo.so.1</filename> need to be
-        recompiled to link against
-        <filename class='libraryfile'>libfoo.so.2</filename>. Note that you
-        should not remove the previous libraries until the dependent packages
-        are recompiled.</para>
-      </listitem>
-      <listitem>
-        <para>If you are upgrading a running system, be on the lookout for packages
-        that use <command>cp</command> instead of <command>install</command>
-        to install files. The latter command is usually safer if the executable
-        or library is already loaded in memory.</para>
-      </listitem>
-    </itemizedlist>
-
-  </sect2>
-
-  <sect2>
-    <title>Package Management Techniques</title>
-
-    <para>The following are some common package management techniques. Before
-    making a decision on a package manager, do some research on the various
-    techniques, particularly the drawbacks of the particular scheme.</para>
-
-    <sect3>
-      <title>It is All in My Head!</title>
-
-      <para>Yes, this is a package management technique. Some folks do not find the
-      need for a package manager because they know the packages intimately and know
-      what files are installed by each package. Some users also do not need any
-      package management because they plan on rebuilding the entire system
-      when a package is changed.</para>
-
-    </sect3>
-
-    <sect3>
-      <title>Install in Separate Directories</title>
-
-      <para>This is a simplistic package management that does not need any
-      extra package to manage the installations. Each package is installed in a
-      separate directory. For example, package foo-1.1 is installed in
-      <filename class='directory'>/usr/pkg/foo-1.1</filename>
-      and a symlink is made from <filename>/usr/pkg/foo</filename> to
-      <filename class='directory'>/usr/pkg/foo-1.1</filename>. When installing
-      a new version foo-1.2, it is installed in
-      <filename class='directory'>/usr/pkg/foo-1.2</filename> and the previous
-      symlink is replaced by a symlink to the new version.</para>
-
-      <para>The environment variables such as those mentioned in
-      <quote><xref linkend="beyond"/></quote> need to be expanded to
-      include <filename>/usr/pkg/foo</filename>. For more than a few packages,
-      this scheme becomes unmanageable.</para>
-
-    </sect3>
-
-    <sect3>
-      <title>Symlink Style Package Management</title>
-
-      <para>This is a variation of the previous package management technique.
-      Each package is installed similar to the previous scheme. But instead of
-      making the symlink, each file is symlinked into the
-      <filename class='directory'>/usr</filename> hierarchy. This removes the
-      need to expand the environment variables. Though the symlinks can be
-      created by the user to automate the creation, many package managers have
-      been written using this approach. A few of the popular ones are Stow,
-      Epkg, Graft, and Depot.</para>
-
-      <para>The installation needs to be faked, so that the package thinks that it is
-      installed in <filename class="directory">/usr</filename> though in reality it is
-      installed in the <filename class="directory">/usr/pkg</filename> hierarchy.
-      Installing in this manner is not usually a trivial task. For example, consider
-      that you are installing a package libfoo-1.1. The following instructions may
-      not install the package properly:</para>
-
-<screen><userinput>./configure --prefix=/usr/pkg/libfoo/1.1
-make
-make install</userinput></screen>
-
-      <para>The installation will work, but the dependent packages may not link
-      to libfoo as you would expect. If you compile a package that links against
-      libfoo, you may notice that it is linked to
-      <filename class='libraryfile'>/usr/pkg/libfoo/1.1/lib/libfoo.so.1</filename>
-      instead of <filename class='libraryfile'>/usr/lib/libfoo.so.1</filename>
-      as you would expect. The correct approach is to use <envar>DESTDIR</envar>
-      strategy to fake installation of the package. This approach works as
-      follows:</para>
-
-<screen><userinput>./configure --prefix=/usr
-make
-make DESTDIR=/usr/pkg/libfoo/1.1 install</userinput></screen>
-
-      <para>Most of the packages do support this approach, but there are some
-      which do not. For the non-compliant packages, you may either need to
-      manually install the package, or you may find that it is easier to install
-      some problematic packages into
-      <filename class='directory'>/opt</filename>.</para>
-
-    </sect3>
-
-    <sect3>
-      <title>Timestamp Based</title>
-
-      <para>In this technique, a file is timestamped before the installation of
-      the package. After the installation, a simple use of the
-      <command>find</command> command with the appropriate options can generate
-      a log of all the files installed after the timestamp file was created. A
-      package manager written with this approach is install-log.</para>
-
-      <para>Though this scheme has the advantage of being simple, it has two drawbacks.
-      If during installation, the files are installed with any timestamp other than the
-      current time, those files will not be tracked by the package manager. Also, this
-      scheme can only be used when one package is installed at a time. The logs are not
-      reliable if two packages are being installed on two different consoles.</para>
-
-    </sect3>
-
-    <sect3>
-      <title>LD_PRELOAD Based</title>
-
-      <para>In this approach, a library is preloaded before installation. During
-      installation, this library tracks the packages that are being installed by
-      attaching itself to various executables such as <command>cp</command>,
-      <command>install</command>, <command>mv</command> and tracking the system
-      calls that modify the filesystem. For this approach to work, all the executables
-      need to be dynamically linked without the suid or sgid bit. Preloading the
-      library may cause some unwanted side-effects during installation. Therefore,
-      do perform some tests to ensure that the package manager does not break
-      anything and logs all the appropriate files.</para>
-
-    </sect3>
-
-    <sect3>
-      <title>Creating Package Archives</title>
-
-      <para>In this scheme, the package installation is faked into a separate
-      tree as described in the Symlink style package management. After the
-      installation, a package archive is created using the installed files.
-      This archive is then used to install the package either on the local
-      machine or can even be used to install the package on other machines.</para>
-
-      <para>This approach is used by most of the package managers found in the
-      commercial distributions. Examples of package managers that follow this
-      approach are RPM, pkg-utils, Debian's apt, and Gentoo's Portage system.</para>
-
-    </sect3>
-
-    <sect3>
-      <title>User Based Management</title>
-
-      <para>This scheme, unique to LFS, was devised by Matthias Benkmann,
-      and is available from the <ulink url="&hints-root;">Hints
-      Project</ulink>. In this scheme, each package is installed as a separate user
-      into the standard locations. Files belonging to a package are easily identified
-      by checking the user ID. The features and shortcomings of this approach are
-      too complex to describe in this section. For the details please see the hint at <ulink
-      url="&hints-root;/downloads/files/more_control_and_pkg_man.txt"/>.</para>
-
-    </sect3>
-
-  </sect2>
-
-</sect1>
Index: introduction/important/position.xml
===================================================================
--- introduction/important/position.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/important/position.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,92 +1,82 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-important-position">
+<?dbhtml filename="position.html" dir="introduction"?>
+<title>The /usr versus /usr/local debate</title>
 
-<sect1 id="position">
-  <?dbhtml filename="position.html"?>
+<para><emphasis>Should I install XXX in /usr or
+/usr/local?</emphasis></para>
 
+<para>This is a question without an obvious answer for an LFS based
+system.</para>
 
-  <title>The /usr Versus /usr/local Debate</title>
+<para>In traditional unix systems, <filename>/usr</filename> usually 
+contains files that come
+with the system distribution, and the <filename>/usr/local</filename> tree 
+is free for the local administrator to add things to.  The only 
+really hard and fast
+rule is that unix distributions should not touch
+<filename>/usr/local</filename>, except
+perhaps for creating the basic directories within it.</para>
 
-  <para><emphasis>Should I install XXX in <filename>/usr</filename> or
-  <filename>/usr/local</filename>?</emphasis></para>
+<para>With Linux distributions, like RedHat, Debian etc. a possible rule is
+that <filename>/usr</filename> is managed by the distribution's 
+package system and <filename>/usr/local</filename> is not.  This way the 
+package manager's database knows about every file within
+<filename>/usr</filename>.</para>
 
-  <para>This is a question without an obvious answer for an
-  LFS based system.</para>
+<para>LFS users build their own system and so deciding where the system ends
+and local files begin is not straightforward.  So the choice should be
+made in order to make things easier to administer.  There are several
+reasons for dividing files between <filename>/usr</filename> and
+<filename>/usr/local</filename>.</para>
 
-  <para>In traditional Unix systems,
-  <filename class='directory'>/usr</filename> usually contains files that come
-  with the system distribution, and the
-  <filename class='directory'>/usr/local</filename> tree is free for the local
-  administrator to manage. The only really hard and fast rule is that Unix
-  distributions should not touch
-  <filename class='directory'>/usr/local</filename>, except perhaps to create
-  the basic directories within it.</para>
+<itemizedlist>
 
-  <para>With Linux distributions like Red Hat, Debian, etc., a possible rule is
-  that <filename class='directory'>/usr</filename> is managed by the
-  distribution's package system and
-  <filename class='directory'>/usr/local</filename> is not. This way the
-  package manager's database knows about every file within
-  <filename class='directory'>/usr</filename>.</para>
+<listitem><para>On a network of several machines all running LFS, or mixed 
+LFS and
+other Linux distributions, <filename>/usr/local</filename> could be used to 
+hold packages
+that are common between all the computers in the network.  It can be
+NFS mounted or mirrored from a single server.  Here local indicates
+local to the site.</para></listitem>
 
-  <para>LFS users build their own system and so deciding where
-  the system ends and local files begin is not straightforward.  So the choice
-  should be made in order to make things easier to administer.  There are
-  several reasons for dividing files between
-  <filename class='directory'>/usr</filename> and
-  <filename class='directory'>/usr/local</filename>.</para>
+<listitem><para>On a network of several computers all running an identical 
+LFS system <filename>/usr/local</filename> could hold packages that 
+are different between the machines.  In this case local refers to 
+the individual computers.</para></listitem>
 
-  <itemizedlist>
-    <listitem>
-      <para>On a network of several machines all running LFS, or mixed LFS and
-      other Linux distributions,
-      <filename class='directory'>/usr/local</filename> could be used to hold
-      packages that are common between all the computers in the network. It can
-      be NFS mounted or mirrored from a single server. Here local indicates
-      local to the site.</para>
-    </listitem>
-    <listitem>
-      <para>On a network of several computers all running an identical
-      LFS system, <filename class='directory'>/usr/local</filename> could hold
-      packages that are different between the machines. In this case local
-      refers to the individual computers.</para>
-    </listitem>
-    <listitem>
-      <para>Even on a single computer,
-      <filename class='directory'>/usr/local</filename> can be useful if you
-      have several distributions installed simultaneously, and want
-      a place to put packages that will be the same on all of them.</para>
-    </listitem>
-    <listitem>
-      <para>Or you might regularly rebuild your LFS, but
-      want a place to put files that you don't want to rebuild each time.  This
-      way you can wipe the LFS file system and start from a clean
-      partition every time without losing everything.</para>
-    </listitem>
-  </itemizedlist>
+<listitem><para>Even on a single computer <filename>/usr/local</filename> can 
+be useful if you have several distributions installed simultaneously, and want 
+a place to put packages that will be the same on all of
+them.</para></listitem>
 
-  <para>Some people ask why not use your own directory tree, e.g.,
-  <filename class='directory'>/usr/site</filename>, rather than
-  <filename class='directory'>/usr/local</filename>?</para>
+<listitem><para>Or you might regularly rebuild your LFS, but want 
+a place to put files
+that you don't want to rebuild each time.  This way you can wipe the
+LFS filesystem and start from a clean partition everytime without losing
+everything.</para></listitem>
 
-  <para>There is nothing stopping you, many sites do make their own trees,
-  however it makes installing new software more difficult.  Automatic installers
-  often look for dependencies in
-  <filename class='directory'>/usr</filename> and
-  <filename class='directory'>/usr/local</filename>, and if the file it is
-  looking for is in <filename class='directory'>/usr/site</filename> instead,
-  the installer will probably fail unless you specifically tell it where to
-  look.</para>
+</itemizedlist>
 
-  <para><emphasis>What is the BLFS position on this?</emphasis></para>
+<para>Some people ask why not use your own directory tree, eg
+<filename>/usr/site</filename> rather than
+<filename>/usr/local</filename>?</para>
 
-  <para>All of the BLFS instructions install programs in
-  <filename class='directory'>/usr</filename> with optional instructions to
-  install into <filename class='directory'>/opt</filename> for some specific
-  packages.</para>
+<para>There is nothing stopping you, many sites do make their own trees, however
+it makes installing new software more difficult.  Automatic installers
+often look for dependencies in <filename>/usr</filename> and
+<filename>/usr/local</filename>, and if the file it is looking
+for is in <filename>/usr/site</filename> instead, the installer will 
+probably fail unless
+you specifically tell it where to look.</para>
+
+<para><emphasis>What is the BLFS position on this?</emphasis></para>
+
+<para>All of the BLFS instructions install programs in
+<filename>/usr</filename> unless specifically stated otherwise.  There
+are examples where some files are placed in the
+<filename>/usr/local</filename> hierarchy but these are documented and
+are generally for a good reason. These exceptions should be well documented 
+in the book.  If you think you have
+found one which isn't please tell us!</para>
 
 </sect1>
Index: introduction/important/systemd-units.xml
===================================================================
--- introduction/important/systemd-units.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,56 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="systemd-units" xreflabel="blfs-systemd-units-&systemd-units-version;" revision="systemd">
-  <?dbhtml filename="systemd-units.html"?>
-
-
-  <title>BLFS Systemd Units</title>
-
-  <indexterm zone="systemd-units">
-    <primary sortas="a-BLFS-Sytemd-Units">BLFS Systemd Units</primary>
-  </indexterm>
-
-  <indexterm zone="systemd-units">
-    <primary sortas="f-AA-General-Information">General Information</primary>
-  </indexterm>
-
-  <para>
-    The BLFS Systemd Units package contains the systemd unit files
-    that are used throughout the book.
-  </para>
-
-  <itemizedlist spacing="compact">
-    <title>Package Information</title>
-    <listitem>
-      <para>
-        Download: <ulink url="&downloads-root;/blfs-systemd-units-&systemd-units-version;.tar.xz"/>
-      </para>
-    </listitem>
-  </itemizedlist>
-
-  <para>
-    The BLFS Systemd Units package will be used throughout the BLFS book
-    for systemd unit files. Each systemd unit has a separate install target.
-    It is recommended that you keep the package source directory around until
-    completion of your BLFS system. When a systemd unit is requested from BLFS
-    Systemd Units, simply change to the directory, and as the
-    <systemitem class="username">root</systemitem> user, execute the given
-    <command>make install-<replaceable>&lt;systemd-unit&gt;</replaceable></command>
-    command. This command installs the systemd unit to its proper location
-    (along with any auxiliary configuration scripts) and also enables it by
-    default.
-  </para>
-
-  <note>
-    <para>
-      It is advisable to peruse each systemd unit before installation to
-      determine whether the installed files meet your needs.
-    </para>
-  </note>
-
-</sect1>
Index: introduction/important/unpacking.xml
===================================================================
--- introduction/important/unpacking.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
+++ introduction/important/unpacking.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -0,0 +1,59 @@
+<sect1 id="intro-important-unpacking">
+<?dbhtml filename="unpacking.html" dir="introduction"?>
+<title>Getting and unpacking the software</title>
+
+<para>Those people who have built a LFS system will be aware of the
+general principles of downloading and unpacking software.  We will
+however repeat some of that information here for those new to building
+their own software.</para>
+
+<para>One difference from the LFS book is that we do <emphasis>not</emphasis> 
+mirror the packages on the BLFS website.
+Instead, each set of installation instructions contains a URL from which
+you can download the package.  We do however keep a selection of patches
+available via http/ftp.  These are referenced as needed in the
+installation instructions.</para>
+
+<para>Whilst you can keep the source tarballs anywhere you like, we
+assume that you have unpacked them and unzipped any required patches
+into <filename>/usr/src</filename>.</para>
+
+<para>We can not emphasise strongly enough that you should start from a
+<emphasis>clean source tree</emphasis> each time.  This means that if
+you have had an error, it's usually best to delete the source tree and
+re-unpack it <emphasis>before</emphasis> trying again.  This obviously
+doesn't apply if you're an advanced user used to hacking Makefiles and C
+code, but if in doubt, start from a clean tree.</para>
+
+<sect2>
+<title>Unpacking the software</title>
+
+<para>If a file is tar'ed and gzip'ed, it is unpacked by running one of
+the following two commands, depending on the filename:</para>
+
+<screen><userinput>tar xvzf filename.tar.gz
+tar xvzf filename.tgz
+tar xvzf filename.tar.Z</userinput></screen>
+
+<para>If a file is tar'ed and bzip2'ed, it can usually be unpacked by
+running:</para>
+
+<screen><userinput>tar jxvf filename.tar.bz2</userinput></screen>
+
+<para>This applies as long as you patched tar to include the j option
+during your LFS install.  If you didn't, you can use a slightly
+different method:</para>
+
+<screen><userinput>bzcat filename.tar.bz2 | tar xv</userinput></screen>
+
+<para>Finally, you need to be able to unpack patches which are generally
+not tar'd.  The best way to do this is to copy the patch file to
+<filename>/usr/src</filename> and then to run one of the following
+commands depending on whether the file is .gz or .bz2:</para>
+
+<screen><userinput>gunzip patchname.gz
+bunzip2 patchname.bz2</userinput></screen>
+
+</sect2>
+
+</sect1>
Index: introduction/introduction.ent
===================================================================
--- introduction/introduction.ent	(revision f45b195302d36939467202524156f38e0369b4f2)
+++ introduction/introduction.ent	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -0,0 +1,19 @@
+<!ENTITY introduction SYSTEM "introduction.xml">
+
+<!ENTITY intro-welcome SYSTEM "welcome/welcome.xml">
+<!ENTITY intro-welcome-conventions SYSTEM "welcome/conventions.xml">
+<!ENTITY intro-welcome-version SYSTEM "welcome/version.xml">
+<!ENTITY intro-welcome-acks SYSTEM "welcome/acknowledgments.xml">
+<!ENTITY intro-welcome-credits SYSTEM "welcome/credits.xml">
+<!ENTITY intro-welcome-changelog SYSTEM "welcome/changelog.xml">
+<!ENTITY intro-welcome-whichsect SYSTEM "welcome/which.xml">
+<!ENTITY intro-welcome-mailinglists SYSTEM "welcome/maillists.xml">
+<!ENTITY intro-welcome-newsserver SYSTEM "welcome/newsserver.xml">
+<!ENTITY intro-welcome-contact SYSTEM "welcome/contact.xml">
+<!ENTITY intro-welcome-askhelp SYSTEM "welcome/askhelp.xml">
+
+<!ENTITY intro-important SYSTEM "important/important.xml">
+<!ENTITY intro-important-unpacking SYSTEM "important/unpacking.xml">
+<!ENTITY intro-important-position SYSTEM "important/position.xml">
+<!ENTITY intro-important-bootscripts SYSTEM "important/bootscripts.xml">
+<!ENTITY intro-important-beyond SYSTEM "important/beyond.xml">
Index: introduction/introduction.xml
===================================================================
--- introduction/introduction.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/introduction.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,16 +1,8 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE part PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../general.ent">
-  %general-entities;
-]>
+<part id="introduction" xreflabel="Introduction">
+<?dbhtml filename="introduction.html" dir="introduction"?>
+<title>Introduction</title>
 
-<part id="introduction" xreflabel="Introduction">
-  <?dbhtml filename="introduction.html" dir="introduction"?>
-
-  <title>Introduction</title>
-
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="welcome/welcome.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="important/important.xml"/>
+&intro-welcome;
+&intro-important;
 
 </part>
Index: introduction/welcome/acknowledgments.xml
===================================================================
--- introduction/welcome/acknowledgments.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/acknowledgments.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,74 +1,50 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-welcome-acknowledgments">
+<?dbhtml filename="acknowledgments.html" dir="introduction"?>
+<title>Acknowledgments</title>
 
-<sect1 id="acknowledgments">
-  <?dbhtml filename="acknowledgments.html"?>
+<para>We would like to thank the following people and organizations for their
+contributions toward the BLFS and LFS projects:</para>
 
+<itemizedlist>
 
-  <title>Acknowledgments</title>
+<listitem><para><ulink url="mailto:strider@linux.com">Mark Stone</ulink> 
+&lt;mstone@linux.com&gt; for donating the linuxfromscratch.org 
+servers.</para></listitem>
+ 
+<listitem><para><ulink url="http://www.valinux.com">VA Linux
+Systems</ulink> for providing rackspace and bandwidth for the 
+linuxfromscratch.org server.</para></listitem>
 
-  <para>We would like to thank the following people and organizations for their
-  contributions toward the BLFS and LFS projects:</para>
+<listitem><para><ulink url="mailto:gerard@linuxfromscratch.org">Gerard
+Beekmans</ulink> &lt;gerard@linuxfromscratch.org&gt; for starting and
+writing the vast majority of the LFS project.</para></listitem>
 
-  <itemizedlist>
-    <listitem>
-      <para>All those people listed on the Credits page for submitting patches,
-      instructions and corrections to the book.  The former editor would
-      especially like to thank Bruce, Larry and Billy for their enormous inputs
-      to the project.</para>
-    </listitem>
-    <listitem>
-      <para>Jeff Bauman (former co-editor of the book) for his assistance
-      with getting BLFS off the ground.</para>
-    </listitem>
-    <listitem>
-      <para><ulink url="mailto:gerard@&lfs-domainname;">Gerard Beekmans</ulink>
-      &lt;gerard &lt;at&gt; &lfs-domainname;&gt; for starting and writing the
-      vast majority of the LFS project.</para>
-    </listitem>
-    <listitem>
-      <para>Robert Briggs for donating the &lfs-domainname; and
-      linuxfromscratch.com domain names.</para>
-    </listitem>
-    <listitem>
-      <para>DREAMWVR.COM for their sponsorship by donating various resources to
-      the LFS and related sub projects.</para>
-    </listitem>
-    <listitem>
-      <para>Bruce Dubbs for donating the anduin package server and his
-      substantial contribution to the purchase of the new quantum server.</para>
-    </listitem>
-    <listitem>
-      <para><ulink url="mailto:garrett@linux.com">Garrett LeSage</ulink>
-      &lt;garrett &lt;at&gt; linux.com&gt; for creating the LFS banner.</para>
-    </listitem>
-    <listitem>
-      <para><ulink url="mailto:bkenoah@oswd.org">Frank Skettino</ulink>
-      &lt;bkenoah &lt;at&gt; oswd.org&gt; at <ulink
-      url="http://www.oswd.org">OSWD</ulink> for coming up with the initial
-      design of the LFS and BLFS websites.</para>
-    </listitem>
-    <listitem>
-      <para><ulink url="mailto:strider@linux.com">Mark Stone</ulink>
-      &lt;mstone &lt;at&gt; linux.com&gt; for donating the original
-      &lfs-domainname; servers.</para>
-    </listitem>
-    <listitem>
-      <para><ulink url="mailto:highos@&lfs-domainname;">Jesse
-      Tie-Ten-Quee</ulink> &lt;higho &lt;at&gt; &lfs-domainname;&gt; for
-      answering many questions on IRC, having a great deal of patience and for
-      not killing the former editor for the joke in the original BLFS
-      announcement!</para>
-    </listitem>
-    <listitem>
-      <para>Countless other people on the various LFS and BLFS mailing lists
-      who are making this book possible by giving their suggestions, testing
-      the book and submitting bug reports.</para>
-    </listitem>
-  </itemizedlist>
+<listitem><para><ulink url="mailto:highos@linuxfromscratch.org">Jesse
+Tie-Ten-Quee</ulink> &lt;highos@linuxfromscratch.org&gt; for answering
+many questions on irc, having a great deal of patience and for not
+killing the current editor for the joke in the original BLFS
+announcement!</para></listitem>
+
+<listitem><para><ulink url="http://www.dreamwvr.com/services">DREAMWVR.COM</ulink> for their ongoing sponsorship by donating various resources to the LFS and
+related sub projects.</para></listitem>
+
+<listitem><para>Robert Briggs for donating the linuxfromscratch.org and
+linuxfromscratch.com domain names.</para></listitem>
+
+<listitem><para><ulink url="mailto:bkenoah@oswd.org">Frank
+Skettino</ulink> &lt;bkenoah@oswd.org&gt; at <ulink 
+url="http://www.oswd.org">OSWD</ulink> for coming up the initial design 
+of the LFS and BLFS websites.</para></listitem>
+
+<listitem><para><ulink url="mailto:garrett@linux.com">Garrett
+LeSage</ulink> &lt;garrett@linux.com&gt; for creating the LFS 
+banner</para></listitem>
+
+<listitem><para>Countless other people on the various LFS and BLFS 
+mailinglists who are making this book happen by giving their
+suggestions, testing the book and submitting bug reports.</para></listitem>
+
+</itemizedlist>
 
 </sect1>
+
Index: introduction/welcome/askhelp.xml
===================================================================
--- introduction/welcome/askhelp.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/askhelp.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,109 +1,8 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-welcome-askhelp">
+<?dbhtml filename="askhelp.html" dir="introduction"?>
+<title>Asking for help and the FAQ</title>
 
-<sect1 id="askhelp">
-  <?dbhtml filename="askhelp.html"?>
-
-
-  <title>Asking for Help and the FAQ</title>
-
-  <para>If you encounter a problem while using this book, and your problem
-  is not listed in the FAQ (<ulink url="https://www.&lfs-domainname;/faq"/>),
-  you will find that most of the people on Internet Relay Chat (IRC) and on the
-  mailing lists are willing to help you. An overview of the LFS mailing
-  lists can be found in <xref linkend="maillists"/>. To assist us
-  in diagnosing and solving your problem, include as much relevant information
-  as possible in your request for help.</para>
-
-  <sect2>
-    <title>Things to Check Prior to Asking</title>
-
-    <para>Before asking for help, you should review the following items:</para>
-
-    <itemizedlist>
-      <listitem>
-        <para>Is the hardware support compiled into the kernel or
-        available as a module to the kernel?  If it is a module, is it
-        configured properly in <filename>modprobe.conf</filename> and has it
-        been loaded?  You should use <command>lsmod</command> as the
-        <systemitem class='username'>root</systemitem> user to see if it's
-        loaded. Check the <filename>sys.log</filename> file or run
-        <command>modprobe <replaceable>&lt;driver&gt;</replaceable></command> to
-        review any error message. If it loads properly, you may need to add
-        the <command>modprobe</command> command to your boot scripts.</para>
-      </listitem>
-      <listitem>
-        <para>Are your permissions properly set, especially for devices? LFS
-        uses groups to make these settings easier, but it also adds the step of
-        adding users to groups to allow access. A simple <command>usermod
-        -G audio <replaceable>&lt;user&gt;</replaceable></command> may be all that's
-        necessary for that user to have access to the sound system. Any question
-        that starts out with <quote>It works as root, but not as ...</quote>
-        requires a thorough review of permissions prior to asking.</para>
-      </listitem>
-      <listitem>
-        <para>BLFS liberally uses <filename
-        class='directory'>/opt/<replaceable>&lt;package&gt;</replaceable></filename>.
-        The main objection to this centers around the need to expand your
-        environment variables for each package placed there (e.g.,
-        PATH=$PATH:/opt/kde/bin). In most cases, the package instructions will
-        walk you through the changes, but some will not. The section called
-        <quote><xref linkend="beyond"/></quote> is
-        available to help you check.</para>
-      </listitem>
-    </itemizedlist>
-
-  </sect2>
-
-  <sect2>
-    <title>Things to Mention</title>
-
-    <para>Apart from a brief explanation of the problem you're having, the
-    essential things to include in your request are:</para>
-
-    <itemizedlist>
-      <listitem>
-        <para>the version of the book you are using (being &version;),</para>
-      </listitem>
-      <listitem>
-        <para>the package or section giving you problems,</para>
-      </listitem>
-      <listitem>
-        <para>the exact error message or symptom you are receiving,</para>
-      </listitem>
-      <listitem>
-        <para>whether you have deviated from the book or LFS at all,</para>
-      </listitem>
-      <listitem>
-        <para>if you are installing a BLFS package on a non-LFS system.</para>
-      </listitem>
-    </itemizedlist>
-
-    <para>(Note that saying that you've deviated from the book doesn't mean
-    that we won't help you. It'll just help us to see other possible causes
-    of your problem.)</para>
-
-    <para>Expect guidance instead of specific instructions. If you are
-    instructed to read something, please do so. It generally implies that
-    the answer was way too obvious and that the question would not have
-    been asked if a little research was done prior to asking. The volunteers
-    in the mailing list prefer not to be used as an alternative to doing
-    reasonable research on your end.  In addition, the quality of your
-    experience with BLFS is also greatly enhanced by this research, and
-    the quality of volunteers is enhanced because they don't feel that their
-    time has been abused, so they are far more likely to participate.</para>
-
-    <para>An excellent article on asking for help on the Internet in general
-    has been written by Eric S. Raymond. It is available online at
-    <ulink url="http://www.catb.org/~esr/faqs/smart-questions.html"/>.
-    Read and follow the hints in that document and you are much more likely
-    to get a response to start with and also to get the help you actually
-    need.</para>
-
-  </sect2>
+<para>THIS IS A NEW PAGE</para>
 
 </sect1>
+
Index: introduction/welcome/changelog.xml
===================================================================
--- introduction/welcome/changelog.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/changelog.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,1713 +1,423 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY changelogs  "https://www.linuxfromscratch.org/blfs">
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<!-- vim: set expandtab: -->
-
-<sect1 id="changelog" xreflabel="Change Log">
-  <?dbhtml filename="changelog.html"?>
-
-
-  <title>Change Log</title>
-
-  <!-- <para>Please note that the Change Log only lists which editor was
-  responsible for putting the changes into SVN; please read the
-  <xref linkend="credits"/> page in Chapter 1 for details on
-  who wrote what.</para> -->
-
-  <para>Current release: &version; &ndash; &releasedate;</para>
-
-  <itemizedlist>
-    <title>Changelog Entries:</title>
-
-<!-- Changelog template
-    <listitem>
-      <para>MMMM DD{nd,st,th}, YYYY</para>
-      <itemizedlist>
-        <listitem>
-          <para>[name] - Changelog entry.</para>
-        </listitem>
-        <listitem>
-          <para>[name] - Another changelog entry.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-    -->
-
-    <listitem>
-      <para>April 19th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to thunderbird-115.10.1. Fixes
-          <ulink url="&blfs-ticket-root;19685">#19685</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gtk-4.14.3. Fixes
-          <ulink url="&blfs-ticket-root;19686">#19686</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 18th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to mpv-0.38.0. Fixes
-          <ulink url="&blfs-ticket-root;19682">#19682</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to icu-75.1. Fixes
-          <ulink url="&blfs-ticket-root;19674">#19674</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to wayland-protocols-1.35. Fixes
-          <ulink url="&blfs-ticket-root;19675">#19675</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to glibmm-2.66.7. Fixes
-          <ulink url="&blfs-ticket-root;19673">#19673</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to bind-9.18.26, bind-utils-9.18.26. Fixes
-          <ulink url="&blfs-ticket-root;19679">#19679</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to xfsprogs-6.7.0. Fixes
-          <ulink url="&blfs-ticket-root;19677">#19677</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to NASM-2.16.03. Fixes
-          <ulink url="&blfs-ticket-root;19678">#19678</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 17th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to Vulkan-Loader-1.3.282. Fixes
-          <ulink url="&blfs-ticket-root;19670">#19670</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to util-macros-1.20.1. Fixes
-          <ulink url="&blfs-ticket-root;19669">#19669</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libXmu-1.2.1 (Xorg library). Fixes
-          <ulink url="&blfs-ticket-root;19668">#19668</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to thunderbird-115.10.0 (Security Update).
-          Fixes <ulink url="&blfs-ticket-root;19671">#19671</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to firefox-115.10.0esr (Security Update).
-          Fixes <ulink url="&blfs-ticket-root;19664">#19664</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to spidermonkey-115.10.0 (Security Update).
-          Fixes <ulink url="&blfs-ticket-root;19666">#19666</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to pipewire-1.0.5. Fixes
-          <ulink url="&blfs-ticket-root;19665">#19665</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 16th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to php-8.3.6 (security update). Fixes
-          <ulink url="&blfs-ticket-root;19645">#19645</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to sqlite-autoconf-3450300 (3.45.3). Fixes
-          <ulink url="&blfs-ticket-root;19662">#19662</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to boost-1.85.0. Fixes
-          <ulink url="&blfs-ticket-root;19660">#19660</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[ken] - Change details for KDE in tuning fontconfig
-          and note much earlier that the settings for fontconfig may
-          be ignored by applications and desktop environments. Fixes
-          <ulink url="&blfs-ticket-root;19667">#19667</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to xf86-input-wacom-1.2.2. Fixes
-          <ulink url="&blfs-ticket-root;19663">#19663</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to libwacom-2.11.0. Fixes
-          <ulink url="&blfs-ticket-root;19661">#19661</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-system-monitor-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19606">#19606</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Add gtkmm-4.14.0 to the book. Fixes
-          <ulink url="&blfs-ticket-root;14443">#14443</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Add atkmm-2.36.3 to the book. Fixes
-          <ulink url="&blfs-ticket-root;14406">#14406</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Add pangomm-2.52.0 to the book. Fixes
-          <ulink url="&blfs-ticket-root;14405">#14405</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Add cairomm-1.18.0 to the book. Fixes
-          <ulink url="&blfs-ticket-root;14172">#14172</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Add glibmm-2.80.0 to the book. Fixes
-          <ulink url="&blfs-ticket-root;14403">#14403</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Add libsigc++3 to the book. Fixes
-          <ulink url="&blfs-ticket-root;16086">#16086</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to bluez-5.75. Fixes
-          <ulink url="&blfs-ticket-root;19655">#19655</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Fix a build problem for sphinx-7.2.6. Fixes
-          <ulink url="&blfs-ticket-root;19659">#19659</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to elogind-255.4-r2. Fixes
-          <ulink url="&blfs-ticket-root;19298">#19298</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 15th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to gucharmap-15.1.3. Fixes
-          <ulink url="&blfs-ticket-root;19477">#19477</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-terminal-3.52.0. Fixes
-          <ulink url="&blfs-ticket-root;19476">#19476</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-logs-45.0. Fixes
-          <ulink url="&blfs-ticket-root;19603">#19603</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-disk-utility-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19602">#19602</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-calculator-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19599">#19599</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to file-roller-44.1. Fixes
-          <ulink url="&blfs-ticket-root;19598">#19598</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to evince-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19490">#19490</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to dvisvgm-3.3. Fixes
-          <ulink url="&blfs-ticket-root;19642">#19642</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to asymptote-2.89. Fixes
-          <ulink url="&blfs-ticket-root;19543">#19543</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Fix bugs in latex2e and dvipdfm-x in texlive. Fixes
-          <ulink url="&blfs-ticket-root;19571">#19571</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to EOG-45.3. Fixes
-          <ulink url="&blfs-ticket-root;19475">#19475</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to baobab-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19601">#19601</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to simple-scan-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19620">#19620</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to Python3-3.12.3. Fixes
-          <ulink url="&blfs-ticket-root;19633">#19633</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Fix CVE-2024-25081 and CVE-2024-25082 in FontForge.
-          Fixes <ulink url="&blfs-ticket-root;19545">#19545</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to libxcb-1.17.0. Fixes
-          <ulink url="&blfs-ticket-root;19658">#19658</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to xcb-proto-1.17.0. Fixes
-          <ulink url="&blfs-ticket-root;19657">#19657</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to vulkan-headers-1.3.282. Fixes
-          <ulink url="&blfs-ticket-root;19656">#19656</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gtk-4.14.2. Fixes
-          <ulink url="&blfs-ticket-root;19583">#19583</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 14th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update the gstreamer stack to 1.24.2. Fixes
-          <ulink url="&blfs-ticket-root;19634">#19634</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Remove overwriting of terminfo data in xterm. Fixes
-          <ulink url="&blfs-ticket-root;19611">#19611</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to lxqt-qtplugin-1.4.1. Fixes
-          <ulink url="&blfs-ticket-root;19652">#19652</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to plasma-6.0.3. Fixes
-          <ulink url="&blfs-ticket-root;19373">#19733</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to libwebp-1.4.0. Fixes
-          <ulink url="&blfs-ticket-root;19654">#19654</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to opus-1.5.2. Fixes
-          <ulink url="&blfs-ticket-root;19653">#19653</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 12th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to kf6-6.1.0. Fixes
-          <ulink url="&blfs-ticket-root;19649">#19649</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 12th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to gnome-user-docs-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19497">#19497</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-tweaks-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19496">#19496</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-session-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19504">#19504</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-shell-extensions-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19472">#19472</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to cmake-3.29.2. Fixes
-          <ulink url="&blfs-ticket-root;19644">#19644</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to cryptsetup-2.7.2. Fixes
-          <ulink url="&blfs-ticket-root;19630">#19630</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gdm-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19505">#19505</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-shell-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19472">#19472</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to mutter-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19473">#19473</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-control-center-46.0.1. Fixes
-          <ulink url="&blfs-ticket-root;19502">#19502</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to tecla-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19486">#19486</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-settings-daemon-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19485">#19485</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-bluetooth-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19503">#19503</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to nautilus-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19501">#19501</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libxmlb-0.3.18. Fixes
-          <ulink url="&blfs-ticket-root;19631">#19631</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to taglib-2.0.1. Fixes
-          <ulink url="&blfs-ticket-root;19635">#19635</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to sentry-sdk-1.45.0 (Python module). Fixes
-          <ulink url="&blfs-ticket-root;19640">#19640</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to xorg-server-21.1.13. Fixes
-          <ulink url="&blfs-ticket-root;19650">#19650</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to xwayland-23.2.6. Fixes
-          <ulink url="&blfs-ticket-root;19623">#19623</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to snapshot-46.2. Fixes
-          <ulink url="&blfs-ticket-root;19648">#19648</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-online-accounts-3.50.1. Fixes
-          <ulink url="&blfs-ticket-root;19647">#19647</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gcr4-4.3.0. Fixes
-          <ulink url="&blfs-ticket-root;19646">#19646</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to libgtop-2.41.3. Fixes
-          <ulink url="&blfs-ticket-root;19627">#19627</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to epiphany-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19491">#19491</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to WebKitGTK-2.44.1. Fixes
-          <ulink url="&blfs-ticket-root;19622">#19622</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to docutils-0.21.1 (Python module). Fixes
-          <ulink url="&blfs-ticket-root;19632">#19632</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to Mako-1.3.3 (Python module). Fixes
-          <ulink url="&blfs-ticket-root;19639">#19639</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 11th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Add libjxl to the book in support gnome-backgrounds
-          and other packages. Fixes
-          <ulink url="&blfs-ticket-root;19626">#19626</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Add highway to the book in support of libjxl. Fixes
-          <ulink url="&blfs-ticket-root;19626">#19626</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to Linux-PAM-1.6.1. Fixes
-          <ulink url="&blfs-ticket-root;19629">#19629</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to seamonkey-2.53.18.2. Fixes
-          <ulink url="&blfs-ticket-root;19617">#19617</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 10th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to upower-v1.90.4. Fixes
-          <ulink url="&blfs-ticket-root;19621">#19621</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libarchive-3.7.3. Fixes
-          <ulink url="&blfs-ticket-root;19618">#19618</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to js-115.9.1 (spidermonkey). Fixes
-          <ulink url="&blfs-ticket-root;19616">#19616</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Update to rsync-3.3.0. Fixes
-          <ulink url="&blfs-ticket-root;19614">#19614</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Patch pipewire-1.0.4 to fix an issue breaking
-          snapshot-46.1.  Fixes
-          <ulink url="&blfs-ticket-root;19637">#19637</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 9th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to xdg-desktop-portal-gnome-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19624">#19624</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to qt6-6.7.0 and qtwebengine-6.7.0. Fixes
-          <ulink url="&blfs-ticket-root;19575">#19575</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-backgrounds-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19625">#19625</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to tracker-miners-3.7.1. Fixes
-          <ulink url="&blfs-ticket-root;19482">#19482</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to tracker-3.7.1. Fixes
-          <ulink url="&blfs-ticket-root;19482">#19482</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to evolution-3.52.0. Fixes
-          <ulink url="&blfs-ticket-root;19481">#19481</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to evolution-data-server-3.52.0. Fixes
-          <ulink url="&blfs-ticket-root;19481">#19481</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-maps-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19506">#19506</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to libshumate-1.2.0. Fixes
-          <ulink url="&blfs-ticket-root;19492">#19492</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Add abseil-cpp, protobuf, and protobuf-c in support
-          of libshumate and other packages. Part of
-          <ulink url="&blfs-ticket-root;19492">#19492</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 8th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update TigerVNC to use xorg-server-21.1.12. This
-          protects Xvnc against the security vulnerabilities fixed in that
-          update.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to httpd-2.4.59 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19507">#19507</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-online-accounts-3.50.0. Fixes
-          <ulink url="&blfs-ticket-root;19480">#19480</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to pygobject-3.48.2 (Python Module). Fixes
-          <ulink url="&blfs-ticket-root;19613">#19613</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Archive gnome-video-effects. Fixes
-          <ulink url="&blfs-ticket-root;19488">#19488</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gtksourceview-5.12.0. Fixes
-          <ulink url="&blfs-ticket-root;19590">#19590</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-keyring-46.1. Fixes
-          <ulink url="&blfs-ticket-root;19484">#19484</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to xwayland-23.2.5 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19579">#19579</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to xorg-server-21.1.12 (Security Update). Addresses
-          <ulink url="&blfs-ticket-root;19579">#19579</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to nghttp2-1.61.0 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19596">#19596</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 7th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to libX11-1.8.9 (Xorg library). Fixes
-          <ulink url="&blfs-ticket-root;19610">#19610</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mtdev-1.1.7. Fixes
-          <ulink url="&blfs-ticket-root;19608">#19608</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to tcsh-6.24.12. Fixes
-          <ulink url="&blfs-ticket-root;19607">#19607</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to tepl-6.9.0. Fixes
-          <ulink url="&blfs-ticket-root;19591">#19591</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libgedit-gtksourceview-299.1.0. Fixes
-          <ulink url="&blfs-ticket-root;19615">#19515</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[rahul] - Update to nodejs-20.12.1 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19552">#19552</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[rahul] - Update to samba-4.20.0 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19554">#19554</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[rahul] - Update to mesa-24.0.4. Fixes
-          <ulink url="&blfs-ticket-root;19556">#19556</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 6th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Move luit from xorg apps to it's own page. Fixes
-          <ulink url="&blfs-ticket-root;19578">#19578</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to gnutls-3.8.5. Fixes
-          <ulink url="&blfs-ticket-root;19592">#19592</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to enchant-2.6.9. Fixes
-          <ulink url="&blfs-ticket-root;19593">#19593</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to hwdata-0.381. Fixes
-          <ulink url="&blfs-ticket-root;19594">#19594</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to at-spi2-core-2.52.0. Fixes
-          <ulink url="&blfs-ticket-root;19587">#19587</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to sentry-sdk-1.44.1. Fixes
-          <ulink url="&blfs-ticket-root;19582">#19582</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Move libwnck from gnome section to xfce section. Fixes
-          <ulink url="&blfs-ticket-root;19577">#19577</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to pciutils-3.12.0. Fixes
-          <ulink url="&blfs-ticket-root;19609">#19609</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 5th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to libxmlb-0.3.17. Fixes
-          <ulink url="&blfs-ticket-root;19580">#19580</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to gtkmm-3.24.9. Fixes
-          <ulink url="&blfs-ticket-root;19589">#19589</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to cairomm-1.14.5. Fixes
-          <ulink url="&blfs-ticket-root;19588">#19588</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to poppler-24.04.0. Fixes
-          <ulink url="&blfs-ticket-root;19574">#19574</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to mupdf-1.24.1. Fixes
-          <ulink url="&blfs-ticket-root;19576">#19576</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to mpg123-1.32.6. Fixes
-          <ulink url="&blfs-ticket-root;19605">#19605</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to nasm-2.16.02. Fixes
-          <ulink url="&blfs-ticket-root;19595">#19595</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Update to LLVM-18.1.2.  Addresses
-          <ulink url="&blfs-ticket-root;19438">#19438</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 4th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to gnome-weather-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19586">#19586</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to libgweather-4.4.2. Fixes
-          <ulink url="&blfs-ticket-root;19522">#19522</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Adapt Firefox to use Google's Location Service by
-          removing our MLS API key. Fixes
-          <ulink url="&blfs-ticket-root;19541">#19541</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Adapt Geoclue to use Google's Location Service due
-          to the Mozilla Location Service shutdown. Fixes
-          <ulink url="&blfs-ticket-root;19541">#19541</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gjs-1.80.2. Fixes
-          <ulink url="&blfs-ticket-root;19487">#19487</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to snapshot-46.1. Fixes
-          <ulink url="&blfs-ticket-root;19507">#19507</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to wireplumber-0.5.1. Fixes
-          <ulink url="&blfs-ticket-root;19567">#19567</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to pango-1.52.2. Fixes
-          <ulink url="&blfs-ticket-root;19585">#19585</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to cmake-3.29.1. Fixes
-          <ulink url="&blfs-ticket-root;19584">#19584</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 3rd, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to libadwaita-1.5.0. Fixes
-          <ulink url="&blfs-ticket-root;19489">#19489</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update the gstreamer stack to 1.24.1. Fixes
-          <ulink url="&blfs-ticket-root;19408">#19408</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 2nd, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to libreoffice-24.2.2.2. Fixes
-          <ulink url="&blfs-ticket-root;19559">#19559</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to kirigami-addons-1.1.0. Fixes
-          <ulink url="&blfs-ticket-root;19573">#19573</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to gobject-introspection-1.80.1. Fixes
-          <ulink url="&blfs-ticket-root;19572">#19572</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[ken] - Update to biber-2.20 with biblatex-3.20 and update
-          related perl items: Module-Build-0.4234 (Perl Module), Alien-Build-2.80,
-          B-Hooks-EndOfScope-0.28, CPAN-Meta-Check-0.18, DateTime-1.65,
-          DateTime-Locale-1.40, DateTime-TimeZone=2.62, Devel-StackTrace-2.05,
-          Exporter-Tiny-1.006002, File-Listing-6.16, HTML-Tagset-3.24,
-          HTTP-Cookies-6.11, HTTP-Date-6.06, HTTP-Message-6.45, Net-SSLeay-1.94,
-          Test-Warnings-0.033, Tie-Cycle-1.228, Variable-Magic-0.64,
-          XML-LibXML-2.0210 (Perl Dependent Modules). Archive: Importer,
-          Module-Pluggable, Sub-Info (Perl Dependent Modules). Thanks to
-          Stephen Berman for reporting Net-SSLeay no-longer passed its tests, and
-          to Bruce for diagnosing this. Fixes
-          <ulink url="&blfs-ticket-root;19528">#19528</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>April 1st, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[thomas] - Upgrade c-ares-1.28.1. Fixes
-          <ulink url="&blfs-ticket-root;19566">#19566</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Fix building Inkscape with poppler-24.03.0. Fixes
-          <ulink url="&blfs-ticket-root;19570">#19570</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libical-3.0.18. Fixes
-          <ulink url="&blfs-ticket-root;19568">#19568</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to jasper-4.2.3. Fixes
-          <ulink url="&blfs-ticket-root;19565">#19565</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to soundtouch-2.3.3. Fixes
-          <ulink url="&blfs-ticket-root;19564">#19564</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mercurial-6.7.2. Fixes
-          <ulink url="&blfs-ticket-root;19562">#19562</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to harfbuzz-8.4.0. Fixes
-          <ulink url="&blfs-ticket-root;19561">#19561</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 31st, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to librsvg-2.58.0. Fixes
-          <ulink url="&blfs-ticket-root;19433">#19433</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 30th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to wireshark-4.2.4 (Security update). Fixes
-          <ulink url="&blfs-ticket-root;19555">#19555</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to sentry-sdk-1.44.0 (Python module). Fixes
-          <ulink url="&blfs-ticket-root;19558">#19558</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to c-ares-1.28.0. Fixes
-          <ulink url="&blfs-ticket-root;19563">#19563</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 29th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[thomas] - Update to shadow-4.15.1. Fixes
-          <ulink url="&blfs-ticket-root;19532">#19532</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 28th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to qt6-6.6.3 and qtwebengine-6.6.3. Fixes
-          <ulink url="&blfs-ticket-root;19551">#19551</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 28th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[timtas] - Update to libva-2.21.0. Fixes
-          <ulink url="&blfs-ticket-root;19546">#19546</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to bubblewrap-0.9.0. Fixes
-          <ulink url="&blfs-ticket-root;19549">#19549</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to URI-5.28 (Perl Module). Fixes
-          <ulink url="&blfs-ticket-root;19550">#19550</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libblockdev-3.1.1. Fixes
-          <ulink url="&blfs-ticket-root;19548">#19548</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to btrfs-progs-v6.8. Fixes
-          <ulink url="&blfs-ticket-root;19547">#19547</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to xorgproto-2024.1. Fixes
-          <ulink url="&blfs-ticket-root;19544">#19544</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 27th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[timtas] - Update to cURL-8.7.1 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19553">#19553</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Fix a misconfiguration in LibreOffice on i686 systems.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Force vlc to compile against lua52.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 26th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to Vulkan-Headers and Vulkan-Loader 1.3.281.
-          Fixes <ulink url="&blfs-ticket-root;19434">#19434</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to icewm-3.4.7. Fixes
-          <ulink url="&blfs-ticket-root;19542">#19542</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to Xorg libraries libX11-1.8.8 and libXmu-1.2.0. Fixes
-          <ulink url="&blfs-ticket-root;19539">#19539</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to emacs-29.3 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19537">#19537</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 25th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[timtas] - Update to cryptsetup-2.7.1. Fixes
-          <ulink url="&blfs-ticket-root;19425">#19425</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gsettings-desktop-schemas-46.0. Fixes
-          <ulink url="&blfs-ticket-root;19479">#19479</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 24th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to umockdev-0.18.1. Fixes
-          <ulink url="&blfs-ticket-root;19538">#19538</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Added Python modules certifi, psutil, pygdbmi, 
-          and sentry-sdk in support of plasma. Fixes
-          <ulink url="&blfs-ticket-root;19536">#19536</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Added Python modules html5lib and webencodings 
-          in support of qtwebengine. Fixes
-          <ulink url="&blfs-ticket-root;19535">#19535</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 24th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to libpciaccess-0.18.1 (xorg library). Fixes
-          <ulink url="&blfs-ticket-root;19534">#19534</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libxkbcommon-1.7.0. Fixes
-          <ulink url="&blfs-ticket-root;19533">#19533</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to SPIRV-Tools-1.3.280.0. Fixes
-          <ulink url="&blfs-ticket-root;19531">#19531</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to enchant-2.6.8. Fixes
-          <ulink url="&blfs-ticket-root;19530">#19530</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 23rd, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[thomas] - Update to gnutls-3.8.4 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19510">#19510</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Update to rustc-1.77.0.  Fixes
-          <ulink url="&blfs-ticket-root;19527">#19527</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 22nd, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[rahul] - Update to cmake-3.29.0. Fixes
-          <ulink url="&blfs-ticket-root;19525">#19525</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[rahul] - Update to gtk4-4.14.1. Fixes
-          <ulink url="&blfs-ticket-root;19464">#19464</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[rahul] - Update to pipewire-1.0.4. Fixes
-          <ulink url="&blfs-ticket-root;19462">#19462</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to spidermonkey-115.9.1 (Security Update).
-          Fixes <ulink url="&blfs-ticket-root;19500">#19500</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[ken] - Update to firefox-115.9.1 (Security Update).  Fixes
-          <ulink url="&blfs-ticket-root;19529">#19529</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mercurial-6.7.1. Fixes
-          <ulink url="&blfs-ticket-root;19526">#19526</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 21st, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to bind utilities/bind-9.18.25. Fixes
-          <ulink url="&blfs-ticket-root;19521">#19521</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to wayland-protocols-1.34.  Fixes
-          <ulink url="&blfs-ticket-root;19520">#19520</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libcloudproviders-0.3.6.  Fixes
-          <ulink url="&blfs-ticket-root;19519">#19519</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to SPIRV-Headers-1.3.280.0.  Fixes
-          <ulink url="&blfs-ticket-root;19518">#19518</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mupdf-1.24.0.  Fixes
-          <ulink url="&blfs-ticket-root;19516">#19516</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to adwaita-icon-theme-46.0.  Fixes
-          <ulink url="&blfs-ticket-root;19514">#19514</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to pinentry-1.3.0.  Fixes
-          <ulink url="&blfs-ticket-root;19513">#19513</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to glad-2.0.6.  Fixes
-          <ulink url="&blfs-ticket-root;19512">#19512</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 20th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to elogind-252.23.  Fixes
-          <ulink url="&blfs-ticket-root;19509">#19509</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to harfbuzz-8.3.1.  Fixes
-          <ulink url="&blfs-ticket-root;19494">#19494</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mercurial-6.7.  Fixes
-          <ulink url="&blfs-ticket-root;19469">#19469</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[ken] - Update to texlive 2024.  Fixes
-          <ulink url="&blfs-ticket-root;19463">#19463</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[ken] - Remove old ConTeXt fixes from texlive source.  Fixes
-          <ulink url="&blfs-ticket-root;18349">#18349</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Update to vte-0.76.0.  Fixes
-          <ulink url="&blfs-ticket-root;19474">#19474</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Adapt rsync to LZ4 now being in LFS.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to bluefish-2.2.15.  Fixes
-          <ulink url="&blfs-ticket-root;19493">#19493</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to wireplumber-0.5.0.  Fixes
-          <ulink url="&blfs-ticket-root;19089">#19089</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Update to thunderbird-115.9.0.  Fixes
-          <ulink url="&blfs-ticket-root;19515">#19515</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to libpaper-2.2.5.  Fixes
-          <ulink url="&blfs-ticket-root;19511">#19511</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 19th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to tk8.6.14.  Fixes
-          <ulink url="&blfs-ticket-root;19498">#19498</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to SCons-4.7.0.  Fixes
-          <ulink url="&blfs-ticket-root;19495">#19495</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to glib-networking-2.80.0.  Fixes
-          <ulink url="&blfs-ticket-root;19470">#19470</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[ken] - Update to firefox-115.9.0 (Security Update).  Fixes
-          <ulink url="&blfs-ticket-root;19499">#19499</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to nss-3.99.  Fixes
-          <ulink url="&blfs-ticket-root;19467">#19467</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to vala-0.56.16.  Fixes
-          <ulink url="&blfs-ticket-root;19465">#19465</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libaom-3.8.2.  Fixes
-          <ulink url="&blfs-ticket-root;19461">#19461</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to libpaper-2.2.3.  Fixes
-          <ulink url="&blfs-ticket-root;19445">#19445</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to tcsh-6.24.11.  Fixes
-          <ulink url="&blfs-ticket-root;19457">#19457</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to jasper-4.2.2.  Fixes
-          <ulink url="&blfs-ticket-root;19454">#19454</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libqalculate-5.0.0.  Fixes
-          <ulink url="&blfs-ticket-root;19453">#19453</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 18th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to xapian-core-1.4.25.  Fixes
-          <ulink url="&blfs-ticket-root;19427">#19427</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to iceauth-1.0.10 (Xorg app).  Fixes
-          <ulink url="&blfs-ticket-root;19450">#19450</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libXaw-1.0.16 (Xorg library).  Fixes
-          <ulink url="&blfs-ticket-root;19451">#19451</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to packaging-24.0 (Python module).  Fixes
-          <ulink url="&blfs-ticket-root;19448">#19448</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to pygobject3-3.48.1 (Python module).  Fixes
-          <ulink url="&blfs-ticket-root;19440">#19440</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to pytest-8.1.1 (Python module).  Fixes
-          <ulink url="&blfs-ticket-root;19443">#19443</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Update to gvfs-1.54.0.  Fixes
-          <ulink url="&blfs-ticket-root;19483">#19483</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to HTML-Parser-3.82 (Perl module).  Fixes
-          <ulink url="&blfs-ticket-root;19458">#19458</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libwww-perl-6.77 (Perl module).  Fixes
-          <ulink url="&blfs-ticket-root;19447">#19447</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to LWP-Protocol-https-6.14 (Perl module).  Fixes
-          <ulink url="&blfs-ticket-root;19446">#19446</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to asciidoctor-2.0.22.  Fixes
-          <ulink url="&blfs-ticket-root;19437">#19437</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to shadow-4.15.0.  Fixes
-          <ulink url="&blfs-ticket-root;19432">#19432</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to glslang-14.1.0.  Fixes
-          <ulink url="&blfs-ticket-root;19435">#19435</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to php-8.3.4.  Fixes
-          <ulink url="&blfs-ticket-root;19466">#19466</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to wget-1.24.5.  Fixes
-          <ulink url="&blfs-ticket-root;19449">#19449</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to at-spi2-core-2.50.2.  Fixes
-          <ulink url="&blfs-ticket-root;19471">#19471</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 17th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to sddm-0.21.0.  Fixes
-          <ulink url="&blfs-ticket-root;19360">#19360</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Add xdotool-3.20211022.1 in support of plasma6. Addresses
-          <ulink url="&blfs-ticket-root;19373">#19373</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Add libdisplay-info-0.1.1 in support of plasma6. Addresses
-          <ulink url="&blfs-ticket-root;19373">#19373</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Add hwdata-0.380 in support of plasma6. Addresses
-          <ulink url="&blfs-ticket-root;19373">#19373</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Add kirigami-addons-1.0.1 in support of plasma6. Addresses
-          <ulink url="&blfs-ticket-root;19373">#19373</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Add qcoro-0.10.0 in support of plasma6. Addresses 
-          <ulink url="&blfs-ticket-root;19373">#19373</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to libxml2-2.12.6.  Fixes
-          <ulink url="&blfs-ticket-root;19468">#19468</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Archive wpebackend-fdo and libwpe.  Fixes
-          <ulink url="&blfs-ticket-root;19478">#19478</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Update to WebKitGTK-2.44.0.  Fixes
-          <ulink url="&blfs-ticket-root;18460">#18460</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 16th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[timtas] - Update to mesa-24.0.3.  Fixes
-          <ulink url="&blfs-ticket-root;19459">#19459</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 15th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[rahul] - Update to icewm-3.4.6. Fixes
-          <ulink url="&blfs-ticket-root;19430">#19430</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[rahul] - Update to unbound-1.19.3 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19429">#19429</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[rahul] - Update to bluez-5.73. Fixes
-          <ulink url="&blfs-ticket-root;19428">#19428</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[rahul] - Update to gnupg-2.4.5. Fixes
-          <ulink url="&blfs-ticket-root;19426">#19426</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Upgrade to sqlite-3.45.2. Fixes
-          <ulink url="&blfs-ticket-root;19456">#19456</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 14th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[xry111] - Add dtc-1.7.0 for supporting qemu-8.2.2.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 12th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[ken] - Update to mutt-2.2.13. Fixes
-          <ulink url="&blfs-ticket-root;19441">#19441</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to openssh-9.7p1, ssh-askpass-9.7p1. Fixes
-          <ulink url="&blfs-ticket-root;19452">#19452</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 10th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[ken] - Update to asymptote-2.88. Fixes
-          <ulink url="&blfs-ticket-root;19372">#19372</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Update to glib-2.80.0.  Fixes
-          <ulink url="&blfs-ticket-root;19444">#19444</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Update to gobject-introspection-1.80.0.  Fixes
-          <ulink url="&blfs-ticket-root;19439">#19439</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Combine gobject-introspection into glib page to
-          better handle the circular dependency between these two
-          packages.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 9th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[ken] - Update to dvisvgm-3.2.2. Fixes
-          <ulink url="&blfs-ticket-root;19384">#19384</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[ken] - Update to ghostscript-10.03.0 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19423">#19423</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Upgrade to postfix-3.9.0. Fixes
-          <ulink url="&blfs-ticket-root;19436">#19436</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Upgrade to libxfce4ui-4.18.6. Fixes
-          <ulink url="&blfs-ticket-root;19436">#19436</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 7th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Revert to pytest-8.0.2 (Python Module). Fixes
-          <ulink url="&blfs-ticket-root;19417">#19417</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to pyparsing-3.1.2 (Python Module). Fixes
-          <ulink url="&blfs-ticket-root;19416">#19416</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to libassuan-2.5.7. Fixes
-          <ulink url="&blfs-ticket-root;19415">#19415</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to SDL2-2.30.1. Fixes
-          <ulink url="&blfs-ticket-root;19412">#19412</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to umockdev-0.18.0. Fixes
-          <ulink url="&blfs-ticket-root;19399">#19399</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to opus-1.5.1. Fixes
-          <ulink url="&blfs-ticket-root;19409">#19409</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to uhttpmock-0.10.0. Fixes
-          <ulink url="&blfs-ticket-root;19406">#19406</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to vala-0.56.15. Fixes
-          <ulink url="&blfs-ticket-root;19405">#19405</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to mkfontscale-1.2.3, xauth-1.1.3, xev-1.2.6,
-          xmessage-1.0.7, xpr-1.2.0, and xrefresh-1.1.0 (Xorg Applications).
-          Fixes <ulink url="&blfs-ticket-root;19402">#19402</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gdb-14.2. Fixes
-          <ulink url="&blfs-ticket-root;19398">#19398</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 6th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[xry111] - Update to SeaMonkey-2.53.18.1 (Security Update).
-          Fixes <ulink url="&blfs-ticket-root;19420">#19420</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Update to LLVM-18.1.0.  Fixes
-          <ulink url="&blfs-ticket-root;19413">#19413</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to thunderbird-115.8.1 (Security Update).
-          Fixes <ulink url="&blfs-ticket-root;19411">#19411</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to xf86-input-wacom-1.2.1 (Xorg Driver).
-          Fixes <ulink url="&blfs-ticket-root;19403">#19403</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gtk-doc-1.34.0. Fixes
-          <ulink url="&blfs-ticket-root;19410">#19410</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gnome-maps-45.5. Fixes
-          <ulink url="&blfs-ticket-root;19397">#19397</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to gcr-4.2.1. Fixes
-          <ulink url="&blfs-ticket-root;19396">#19396</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to libadwaita-1.4.4. Fixes
-          <ulink url="&blfs-ticket-root;19395">#19395</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to pytest-8.1.0 (Python Module). Fixes
-          <ulink url="&blfs-ticket-root;19401">#19401</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Finish updating to kf6-apps. Fixes
-          <ulink url="&blfs-ticket-root;19375">#19375</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Archive PCRE1.  Fixes
-          <ulink url="&blfs-ticket-root;18893">#18893</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 5th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to libreoffice-24.2.1.2. Fixes
-          <ulink url="&blfs-ticket-root;19382">#19382</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Update to qemu-8.2.2. Fixes
-          <ulink url="&blfs-ticket-root;19404">#19404</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 4th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to poppler-24.03.0. Fixes
-          <ulink url="&blfs-ticket-root;19400">#19400</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 4th, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to kImageAnnotator-0.7.1. Fixes
-          <ulink url="&blfs-ticket-root;19388">#19388</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to kColorPicker-0.3.1. Fixes
-          <ulink url="&blfs-ticket-root;19387">#19387</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Preliminary update to kf6-6.0.0.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 3rd, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Update to encodings-1.1.0 (Xorg Font). Fixes
-          <ulink url="&blfs-ticket-root;19393">#19393</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libXcursor-1.2.2 (Xorg Library) and
-          libfontenc-1.1.8 (Xorg Library). Fixes
-          <ulink url="&blfs-ticket-root;19392">#19392</ulink> and
-          <ulink url="&blfs-ticket-root;19389">#19389</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libxcb-1.16.1. Fixes
-          <ulink url="&blfs-ticket-root;19391">#19391</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libXdmcp-1.1.5. Fixes
-          <ulink url="&blfs-ticket-root;19394">#19394</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to nghttp2-1.60.0. Fixes
-          <ulink url="&blfs-ticket-root;19386">#19386</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mdadm-4.3. Fixes
-          <ulink url="&blfs-ticket-root;19377">#19377</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to pixman-0.43.4. Fixes
-          <ulink url="&blfs-ticket-root;19376">#19376</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mesa-24.0.2.  Fixes
-          <ulink url="&blfs-ticket-root;19374">#19374</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to a52dec-0.8.0.  Fixes
-          <ulink url="&blfs-ticket-root;19368">#19368</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to swig-4.2.1.  Fixes
-          <ulink url="&blfs-ticket-root;19365">#19365</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to qpdf-11.9.0.  Fixes
-          <ulink url="&blfs-ticket-root;19363">#19363</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libunistring-1.2.  Fixes
-          <ulink url="&blfs-ticket-root;19361">#19361</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libpng-1.6.43.  Fixes
-          <ulink url="&blfs-ticket-root;19354">#19354</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mupdf-1.23.11.  Fixes
-          <ulink url="&blfs-ticket-root;19347">#19347</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to polkit-qt-1-0.200.0.  Fixes
-          <ulink url="&blfs-ticket-root;19345">#19345</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to python-dbusmock-0.31.1 (Python module).  Fixes
-          <ulink url="&blfs-ticket-root;19356">#19356</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to npth-1.7.  Fixes
-          <ulink url="&blfs-ticket-root;19353">#19353</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libksba-1.6.6.  Fixes
-          <ulink url="&blfs-ticket-root;19352">#19352</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to libgpg-error-1.48.  Fixes
-          <ulink url="&blfs-ticket-root;19351">#19351</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[thomas] - Update to pciutils-3.11.1.  Fixes
-          <ulink url="&blfs-ticket-root;19364">#19364</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[xry111] - Update to shadow-4.14.6.  Fixes
-          <ulink url="&blfs-ticket-root;19385">#19385</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 2nd, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[renodr] - Update to epiphany-45.3. Fixes
-          <ulink url="&blfs-ticket-root;19381">#19381</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to glib-networking-2.78.1. Fixes
-          <ulink url="&blfs-ticket-root;19378">#19378</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to AppStream-1.0.2. Fixes
-          <ulink url="&blfs-ticket-root;19362">#19362</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to libsecret-0.21.4. Fixes
-          <ulink url="&blfs-ticket-root;19358">#19358</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to glm-1.0.1. Fixes
-          <ulink url="&blfs-ticket-root;19369">#19369</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to OpenJPEG-2.5.2 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19370">#19370</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to c-ares-1.27.0 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19357">#19357</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to NetworkManager-1.46.0. Fixes
-          <ulink url="&blfs-ticket-root;19350">#19350</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to Spidermonkey-115.8.0. Fixes
-          <ulink url="&blfs-ticket-root;19344">#19344</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to asciidoctor-2.0.21. Fixes
-          <ulink url="&blfs-ticket-root;19341">#19341</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to mpg123-1.32.5. Fixes
-          <ulink url="&blfs-ticket-root;19328">#19328</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to pytest-8.0.2 (Python module). Fixes
-          <ulink url="&blfs-ticket-root;19326">#19326</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to pcre2-10.43. Fixes
-          <ulink url="&blfs-ticket-root;19062">#19062</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Enable support for Vulkan in ffmpeg again. Fixes
-          <ulink url="&blfs-ticket-root;19390">#19390</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to jasper-4.2.1. Fixes
-          <ulink url="&blfs-ticket-root;19340">#19340</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to Vulkan-Headers and Vulkan-Loader 1.3.279.
-          Fixes <ulink url="&blfs-ticket-root;19327">#19327</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[renodr] - Update to giflib-5.2.2 (Security Update). Fixes
-          <ulink url="&blfs-ticket-root;19335">#19335</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[bdubbs] - Update to unrar-7.0.7. Fixes
-          <ulink url="&blfs-ticket-root;18768">#18768</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Update to xfce4-panel-4.18.6. Fixes
-          <ulink url="&blfs-ticket-root;19379">#19379</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Update to xarchiver-0.5.4.23. Fixes
-          <ulink url="&blfs-ticket-root;19383">#19383</ulink>.</para>
-        </listitem>
-        <listitem>
-          <para>[timtas] - Update to xfce4-terminal-1.1.3. Fixes
-          <ulink url="&blfs-ticket-root;19380">#19380</ulink>.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-    <listitem>
-      <para>March 1st, 2024</para>
-      <itemizedlist>
-        <listitem>
-          <para>[bdubbs] - Release of BLFS-12.1.</para>
-        </listitem>
-      </itemizedlist>
-    </listitem>
-
-  </itemizedlist>
+<sect1 id="intro-welcome-changelog">
+<?dbhtml filename="changelog.html" dir="introduction"?>
+<title>Changelog</title>
+
+<para>Please note that the changelog only lists which editor was
+responsible for putting the changes into CVS; please read the Credits
+page in Chapter 1 for details on who wrote what.</para>
+
+<para>&version; - &releasedate;</para>
+
+<itemizedlist>
+
+<listitem><para>July 4, 2002 [bdubbs]: Various typo and 
+grammer changes.</para></listitem>
+
+<listitem><para>July 4, 2002 [bdubbs]: KDE section - updated 
+koffice patch instruction and added a backslash to kdelibs
+build commands. Successfully rebuilt kde 3.0.2 with current
+instructions.</para></listitem>
+
+<listitem><para>July 3, 2002 [bdubbs]: KDE section - updated 
+koffice and changed to kde 3.0.2.</para></listitem>
+
+<listitem><para>July 2, 2002 [bdubbs]: KDE section - updated 
+kdeutils, kdeedu, kdeartwork, kdetoys, and kdeaddons.</para></listitem>
+
+<listitem><para>July 2, 2002 [bdubbs]: Updated 
+link location in libungif and added a note to remove a possible
+compilation error.</para></listitem>
+
+<listitem><para>July 1, 2002 [bdubbs]: KDE section - updated 
+kdegraphics, kdeadmin, and kdegames sections.  Updated imlib
+to correct an error in configure with gcc 3.1.  Changed download
+locations to links in libtiff and libungif</para></listitem>
+
+<listitem><para>June 30, 2002 [bdubbs]: KDE section - updated 
+kedmultimedia, kdenetwork and kdepim sections.</para></listitem>
+
+<listitem><para>June 29, 2002 [larry]: Chapter 5 - updated to
+alsa-0.9.0rc2 and moved gnome intro.</para></listitem>
+
+<listitem><para>June 28, 2002 [bdubbs]: QT section -  Added note to allow
+not building examples and tutorials.</para></listitem>
+
+<listitem><para>June 28, 2002 [larry]: Chapter 4 - Added GTK+-1.2.10,
+GLib-1.2.10, gdk-0.11.0, libxml-1.8.17.</para></listitem>
+
+<listitem><para>June 27, 2002 [larry]: Chapter 12 - Started adding
+GNOME-1.4.1.</para></listitem>
+
+<listitem><para>June 26, 2002 [larry]: Chapter 4 - Added
+GTK+-2.0.5, Chapter 9 - Updated to OpenSSH-3.4p1.</para></listitem>
+
+<listitem><para>June 24, 2002 [larry]: Chapter 9 - Updated to
+OpenSSH-3.3p1, with modifications to set up priviledged/unpriviledged
+operations which is now the default. Chapter 4 - Added GLib-2.0.4,
+Pango-1.0.3 and ATK-1.0.2</para></listitem>
+
+<listitem><para>June 22, 2002 [larry]: Chapter 20 - Added kernel
+configuration and additional reading links to
+introduction.</para></listitem>
+
+<listitem><para>June 21, 2002 [larry]: Chapter 04 - Added
+pkgconfig-0.12.0.</para></listitem>
+
+<listitem><para>June 15th, 2002 [larry]: Chapter 08 - Modified config
+sed command for a change in main.cf after version 1.1.9 on
+myhostname.</para></listitem>
+
+<listitem><para>June 14th, 2002 [larry]: Chapter 07 - Update to curl-7.9.8.
+</para></listitem>
+
+<listitem><para>June 7th, 2002 [markh]: Chapter 02 - Update daemontools
+and daemontools-man packages; patch from Sal Gonzalez.</para></listitem>
+
+<listitem><para>June 7th, 2002 [markh]: Chapter 05 - Update db link
+location.</para></listitem>
+
+<listitem><para>June 7th, 2002 [markh]: Chapter 13 - Update objprelink
+download location and slightly modify build command to match new
+file.</para></listitem>
+
+<listitem><para>June 7th, 2002 [markh]: Chapter 07 - Update to
+links-0.97.</para></listitem>
+
+<listitem><para>June 7th, 2002 [markh]: Chapter 05 - Update to
+hdparm-5.2.</para></listitem>
+
+<listitem><para>June 7th, 2002 [markh]: Chapter 04 - Finally applied the
+fix for libmng to make it use lcms properly.</para></listitem>
+
+<listitem><para>May 31st, 2002 [larry]: Update to
+postfix-1.1.11, modified fcron script.</para></listitem>
+
+<listitem><para>May 31st, 2002 [markh]: Chapter 06 - Update to
+wvstreams-3.70 and wvdial-1.53.</para></listitem>
+
+<listitem><para>May 31st, 2002 [bdubbs]: Add comment about 
+<filename>/lib/libmisc.la</filename> to kdebase instructions.</para></listitem>
+
+<listitem><para>May 30th, 2002 [larry]: Update to libxml2-1.4.22 and
+libxslt-1.0.18.</para></listitem>
+
+<listitem><para>May 29th, 2002 [markh]: Chapter 04 - Update openssl
+instructions to install man pages in /usr/share/man.  We get around the
+passwd man page problem by renaming the source file to openssl-passwd.
+Thanks to Jesse for suggesting this.</para></listitem>
+
+<listitem><para>May 28th, 2002 [bdubbs]: Change structure of kde xml
+and begin KDE Intro.</para></listitem>
+
+<listitem><para>May 28th, 2002 [bdubbs]: Remove extra line feed
+in qt configure instructions for man.conf.</para></listitem>
+
+<listitem><para>May 24th, 2002 [bdubbs]: Updated to openssl
+to version 0.9.6d and updated configure instruction.</para></listitem>
+
+<listitem><para>May 23rd, 2002 [larry]: Updated to libpng
+1.2.3 and OpenSSH 3.2.3p1.</para></listitem>
+
+<listitem><para>May20th, 2002 [larry]: Added pccts 133MR33 to chapter
+04 and cdrdao 1.1.5 to chapter 20.</para></listitem>
+
+<listitem><para>May19th, 2002 [larry]: Updated to OpenSSH 
+3.2.2p1.</para></listitem>
+
+<listitem><para>May 19th, 2002 [bdubbs]: Updated cvs version to 
+1.11.2.</para></listitem>
+
+<listitem><para>May 18th, 2002 [larry]: Updated to postfix
+1.1.9.</para></listitem>
+
+<listitem><para>May 17th, 2002 [bdubbs]: Chapter 11 - Inserted 
+text about Window Mangers.  Chapter 13 - Added stubs for KDE.
+Updated links for QT and objprelink.</para></listitem>
+
+<listitem><para>May 17th, 2002 [bdubbs]: Chapter 10 - Updated
+XFree86 sections. Corrected kernel make commands and changed 
+url references to links.</para></listitem>
+
+<listitem><para>May 16th, 2002 [bdubbs]: Chapter 10 - Added
+XFree86. Updated data for objprelink.</para></listitem>
+
+<listitem><para>May 16th, 2002 [larry]: Chapter 05 - Added
+unzip-5.50.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 02 - Fix up formatting
+in traceroute section.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 06 and 09.  Update to
+dhcp-3.0pl1.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 04 - Update to
+libpng-1.2.2 and fix imlib so it works with this libpng
+version.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 08 - Update to
+postfix-1.1.8.  Chapter 13 - Update to qt-3.0.4.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 04 - Add libxml2 and
+libxslt (from Larry).</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 17 - SDL (to 1.2.4) and
+XMMS (to 1.2.7) update from Jeroen.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 13 - Add objprelink and
+update QT instructions to match.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 06 - Firewalling.
+Changed references to <filename>/etc/init.d</filename> --&gt;
+<filename>/etc/rc.d/init.d</filename>.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 06 - DHCP.  Fixed
+extraneous line in dhclient.conf creation command.</para></listitem>
+
+<listitem><para>May 15th, 2002 [markh]: Chapter 05 - Alsa.  Fixed typo
+in chmod command.  Added note about manually creating
+<filename>/etc/asound.conf</filename> so that alsactl doesn't baulk on
+first startup.</para></listitem>
+
+<listitem><para>April 29th, 2002 [markh]: Chapter 06 - Add DHCP_STOP
+variable to DHCP scripts.</para></listitem>
+
+<listitem><para>April 28th, 2002 [markh]: Chapter 04 - Add
+imlib.</para></listitem>
+
+<listitem><para>April 28th, 2002 [markh]: Chapter 02, 04, 08 - Minor fixes
+to daemontools, libpng, libmng and postfix instructions.</para></listitem>
+
+<listitem><para>April 28th, 2002 [markh]: Chapter 05 - Fix to alsa
+install instructions (added a missing 's' and \).</para></listitem>
+
+<listitem><para>April 20th, 2002 [markh]: Chapter 20 - Add
+cdrtools-1.10.</para></listitem>
+
+<listitem><para>April 20th, 2002 [markh]: Chapter 09 - Add DHCP server
+instructions.</para></listitem>
+
+<listitem><para>April 20th, 2002 [markh]: Chapter 06 - We now have DHCP
+client configuration instructions.</para></listitem>
+
+<listitem><para>April 20th, 2002 [markh]: Chapter 08 and Appendix A -
+Update to postfix-1.1.7 and keep runlevels list in sync with LFS-1.9
+(from Larry).</para></listitem>
+
+<listitem><para>April 7th, 2002 [markh]: Chapter 07 - Added curl.
+Chapter 18 - Added vorbistools.</para></listitem>
+
+<listitem><para>April 7th, 2002 [markh]: Chapter 17 - Added libao,
+libogg, libvorbis.</para></listitem>
+
+<listitem><para>April 7th, 2002 [markh]: Chapter 08 - Postfix update
+from Larry and fix script to use spaces instead of
+tabs.</para></listitem>
+
+<listitem><para>April 7th, 2002 [markh]: Chapter 05 - Applied fcron
+updates (two of them) from Larry.  Moves to fcron-2.9.0 with a few
+fixes.</para></listitem>
+
+<listitem><para>April 7th, 2002 [markh]: Daemontools - moved to using
+<userinput>telinit -Q</userinput> instead of <userinput>kill -HUP
+1</userinput> following user comments on blfs-dev.</para></listitem>
+
+<listitem><para>April 7th, 2002 [markh]: Chapter 17 - Add
+audiofile-0.2.3.</para></listitem>
+
+<listitem><para>March 28th, 2002 [markh]: Chapter 08 - Add postfix-1.1.5
+instructions.</para></listitem>
+
+<listitem><para>March 28th, 2002 [markh]: Chapter 13 - Update to
+QT-3.0.3.</para></listitem>
+
+<listitem><para>March 27th, 2002 [markh]: Chapter 07 and 09 - Added
+dhcp package instructions.</para></listitem>
+
+<listitem><para>March 26th, 2002 [markh]: Chapter 04 - Add pcre-3.9
+instructions.</para></listitem>
+
+<listitem><para>March 26th, 2002 [markh]: Chapter 13 - Added initial set
+of qt instructions.</para></listitem>
+
+<listitem><para>March 26th, 2002 [markh]: Chapter 05 - Fcron update to
+2.1.0 and a few miscellaneous fixes from Larry.</para></listitem>
+
+<listitem><para>March 25th, 2002 [markh]: Chapter 05 - Fix the mistake
+whereby we tried to add lines to <filename
+class="directory">/etc/sysconfig</filename> instead of
+<filename>/etc/syslog.conf</filename>.</para></listitem>
+
+<listitem><para>March 25th, 2002 [markh]: Appendix A and other sections
+- Add the initial tables of rc?.d symlinks.  At the same time, make sure
+scripts are set to 755 (to be executable) and sort out the numbering of
+the scripts (some were still using three digits from the old-style
+links).</para></listitem>
+
+<listitem><para>March 25th, 2002 [markh]: Chapter 05 - Added the
+"which" page.</para></listitem>
+
+<listitem><para>March 20th, 2002 [markh]: Moved all homeless packages to
+a new temporary place in Chapter 02 until homes are found for them.
+This leaves appendix A empty for the symlink list.</para></listitem>
+
+<listitem><para>March 20th, 2002 [markh]: Chapter 03 - Added random
+script instructions.</para></listitem>
+
+<listitem><para>March 15th, 2002 [markh]: Chapter 05 - Small update to
+fcron instructions.  Chapter 09 - Small update to OpenSSH
+instructions.</para></listitem>
+
+<listitem><para>March 11th, 2002 [markh]: Chapter 09 - Add OpenSSH-3.1p1
+install instructions.  Chapter 07 - Add reference about installing
+OpenSSH client.</para></listitem>
+
+<listitem><para>March 11th, 2002 [markh]: Chapter 05 - Update fcron
+instructions (syslog related changes).</para></listitem>
+
+<listitem><para>March 11th, 2002 [markh]: Chapter 02 - Add comment about
+using bootscripts with LFS-3.2 and later.  Chapter 05 - Change gpm and
+alsa scripts to work with LFS-3.2 and later.</para></listitem>
+
+<listitem><para>March 11th, 2002 [markh]: Chapter 04 - Update to
+zlib-1.1.4.</para></listitem>
+
+<listitem><para>March 2nd, 2002 [markh]: Chapter 1 - Credits - Modify
+credits list so that each author is only listed once with a complete
+list of what they did (it makes the list smaller).</para></listitem>
+
+<listitem><para>March 2nd, 2002 [markh]: Chapter 5 - Add fcron-2.0.0
+instructions from Larry Lawrence.</para></listitem>
+
+<listitem><para>February 24th, 2002 [markh]: Chapter 5 - Update to
+gpm-1.20.0.</para></listitem>
+
+<listitem><para>February 21st, 2002 [markh]: Argh.. I've been writing
+the wrong date all day!  Changed all Feb 20th entries to Feb
+21st and corrected the book's date.</para></listitem>
+
+<listitem><para>February 21st, 2002 [markh]: Chapter 7 - Update to
+ncftp-3.1.2.</para></listitem>
+
+<listitem><para>February 21st, 2002 [markh]: Chapter 5 - Update to
+db-4.0.14.</para></listitem>
+
+<listitem><para>February 21st, 2002 [markh]: Chapter 4 - Update to
+lcms-1.08, libpng-1.2.1 and libtiff-3.5.7.</para></listitem>
+
+<listitem><para>February 21st, 2002 [markh]: Add chapters 18-20 as
+placeholders for multimedia section and move SDL into ch1 and
+cdparanoia, mpg123 and XMMS into ch18.</para></listitem>
+
+<listitem><para>February 21st, 2002 [markh]: Chapter 5 - Move cvs and db 
+to here from appendix a.</para></listitem>
+
+<listitem><para>February 19th, 2002 [markh]: Chapter 6 - Update to
+hdparm-4.6 and move it here from appendix a.</para></listitem>
+
+<listitem><para>February 19th, 2002 [markh]: Chapter 6 - Update to 
+wvdial-1.50 and add wvstreams-3.64 which is required by the new
+version of wvdial.</para></listitem>
+
+<listitem><para>February 19th, 2002 [markh]: Chapter 6 - Add 
+ppp.</para></listitem>
+
+<listitem><para>February 19th, 2002 [markh]: Chapter 6 - Move wvdial to
+here from appendix A.</para></listitem>
+
+<listitem><para>February 15th, 2002 [markh]: Chapter 6 - DHCP - Added
+initial DHCP section.</para></listitem>
+
+<listitem><para>February 14th, 2002 [markh]: Chapter 6 - Firewalling
+update from Henning.</para></listitem>
+
+<listitem><para>January 3rd, 2002 [markh]: Changed alsa instructions to
+include --with-kernel= for robustness.</para></listitem>
+
+<listitem><para>January 1st, 2002 [markh]: Started large rearrangement
+of book.  Many modifications made.  Fixed up quite a few things.  Happy New 
+Year to you all!</para></listitem>
+
+<listitem><para>December 31st, 2001 [markh]: Gpm - Fixed symlink
+creation so it actually works.</para></listitem>
+
+<listitem><para>December 22nd, 2001 [markh]: Zlib - Added instructions
+to copy manual page as it isn't installed by default.</para></listitem>
+
+<listitem><para>December 20th, 2001 [markh]: Chapter 3 - Added the vimrc
+page.</para></listitem>
+
+<listitem><para>December 20th, 2001 [markh]: Appendix A - Added alsa
+instructions by Alex Kloss.</para></listitem>
+
+<listitem><para>December 20th, 2001 [markh]: Chapter 2 - More text
+added.</para></listitem>
+
+<listitem><para>December 1st, 2001 [markh]: Chapter 3 - Added some
+corrections to the inputrc page regarding the role of /etc/inputrc and
+~/.inputrc.</para></listitem>
+
+<listitem><para>November 30th, 2001 [markh]: Appendix A - Added
+fetchmail instructions by Paul Campbell.</para></listitem>
+
+<listitem><para>November 26th, 2001 [markh]: General - Added
+&lt;&amp;dbhtml&gt; tags all over the place to divide generated HTML
+into directories.</para></listitem>
+
+<listitem><para>November 26th, 2001 [markh]: Chapter 3 - Added
+/etc/inputrc details by Chris Lynn and /etc/issue details by
+me.</para></listitem>
+
+<listitem><para>November 5th, 2001 [markh]: Appendix A - Added gpm
+recommendation to links instructions.</para></listitem>
+
+<listitem><para>October 25th, 2001 [markh]: Chapter 6 - Firewalling
+section added to book.</para></listitem>
+
+<listitem><para>October 25th, 2001 [markh]: Appendix A - wvdial-1.41
+added.</para></listitem>
+
+<listitem><para>October 20th, 2001 [markh]: Appendix A - hdparm-4.2
+added.</para></listitem>
+
+<listitem><para>October 20th, 2001 [markh]: Appendix B removed.  Credits
+moved to a page in Chapter 1.</para></listitem>
+
+<listitem><para>October 20th, 2001 [markh]: Appendix A - All current
+sets of installation instructions changed to install items in /usr
+instead of /usr/local.</para></listitem>
+
+<listitem><para>October 20th, 2001 [markh]: Chapter 2 - Added the /usr
+versus /usr/local debate section.</para></listitem>
+
+<listitem><para>October 14th, 2001 [markh]: Chapter 1 - Added lots of
+text.</para></listitem>
+
+<listitem><para>September 20th, 2001 [markh]: Appendix A - Small
+formatting fix to db instructions so they copy and paste
+properly.</para></listitem>
+
+<listitem><para>September 20th, 2001 [markh]: Appendix A - Updated to
+libmng-1.0.3 and libpng-1.2.0.</para></listitem>
+
+<listitem><para>September 20th, 2001 [markh]: Appendix A - Fixed lcms
+instructions so that they actually work...</para></listitem>
+
+<listitem><para>September 14th, 2001 [markh]: Appendix A - Links
+installation instructions added.</para></listitem>
+
+<listitem><para>September 14th, 2001 [markh]: Appendix A - Lynx
+installation instructions added.</para></listitem>
+
+<listitem><para>September 14th, 2001 [markh]: Appendix A - Finished off
+openssl instructions.</para></listitem>
+
+<listitem><para>September 6th, 2001 [markh]: Appendix A - Added
+daemontools</para></listitem>
+
+<listitem><para>September 4th, 2001 [markh]: General - lots and lots of
+things - setting up xml structure, adding instructions etc.</para></listitem>
+
+</itemizedlist>
+
 </sect1>
+
Index: introduction/welcome/contact.xml
===================================================================
--- introduction/welcome/contact.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/contact.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,22 +1,14 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-welcome-contactinfo">
+<?dbhtml filename="contactinfo.html" dir="introduction"?>
+<title>Contact information</title>
 
-<sect1 id="contactinfo">
-  <?dbhtml filename="contactinfo.html"?>
+<para>Please direct your emails to one of the BLFS mailing lists. See
+<xref linkend="intro-welcome-maillists"/> for more information on the
+available mailing lists.</para>
 
-
-  <title>Contact Information</title>
-
-  <para>Please direct your emails to one of the BLFS mailing lists. See
-  <xref linkend="maillists"/> for more information on
-  the available mailing lists.</para>
-<!--
-  <para>The current BLFS maintainer is &maintainer-fullname;.
-  If you need to reach &maintainer-firstname;, send an email to
-  <ulink url="mailto:&maintainer-address;">&maintainer-address;</ulink>.</para> -->
+<para>The current BLFS maintainer is &maintainer-fullname;.  If you need
+to reach &maintainer-firstname;, send an email to
+<ulink url="mailto:&maintainer-address">&maintainer-address;</ulink>.</para>
 
 </sect1>
+
Index: introduction/welcome/conventions-kernel.xml
===================================================================
--- introduction/welcome/conventions-kernel.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,15 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE note PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
-<!-- Automatically generated by kernel-config.py
-     DO NOT EDIT! -->
-<screen>M<emphasis role='blue'>a</emphasis>ster section ---&gt;
-  <emphasis role='blue'>S</emphasis>ubsection ---&gt;
-    [*]     <emphasis role='blue'>R</emphasis>equired parameter                                        [REQU_PAR]
-    &lt;*&gt;     <emphasis role='blue'>R</emphasis>equired parameter (not as module)                   [REQU_PAR_NMOD]
-    &lt;*/M&gt;   <emphasis role='blue'>R</emphasis>equired parameter (could be a module)                [REQU_PAR_MOD]
-    &lt;M&gt;     <emphasis role='blue'>R</emphasis>equired parameter (as a module)                 [REQU_PAR_MOD_ONLY]
-    &lt; /*/M&gt; <emphasis role='blue'>O</emphasis>ptional parameter                                         [OPT_PAR]
-    &lt; /M&gt;   <emphasis role='blue'>O</emphasis>ptional parameter (as a module if enabled)       [OPT_PAR_MOD_ONLY]
-    [ ]     <emphasis role='blue'>I</emphasis>ncompatible parameter                                  [INCOMP_PAR]
-    &lt; &gt;     <emphasis role='blue'>I</emphasis>ncompatible parameter (even as module)             [INCOMP_PAR_MOD]</screen>
Index: introduction/welcome/conventions.xml
===================================================================
--- introduction/welcome/conventions.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/conventions.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,297 +1,49 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-welcome-conventions">
+<?dbhtml filename="conventions.html" dir="introduction"?>
+<title>Conventions used in this book</title>
 
-<sect1 id="conventions">
-  <?dbhtml filename="conventions.html"?>
+<para>To make things easy to follow, there are a number of conventions used
+throughout the book.  Following are some examples:</para>
 
+<para><userinput>./configure --prefix=/usr</userinput></para>
 
-  <title>Conventions Used in this Book</title>
+<blockquote><para>This form of text is designed to be typed exactly 
+as seen unless otherwise noted in the surrounding text.  It is also used 
+in the explanation sections to identify which of the commands is being 
+referred to.</para></blockquote>
 
-  <sect2>
-  <title>Typographical Conventions</title>
-  <para>To make things easy to follow, a number of conventions are used
-  throughout the book.  Here are some examples:</para>
+<para><filename>install-info: unknown option 
+`--dir-file=/mnt/lfs/usr/info/dir'</filename></para>
 
-<screen><userinput>./configure --prefix=/usr</userinput></screen>
+<blockquote><para>This form of text (fixed width text) is showing screen 
+output, probably as the result of commands issued and is also used to 
+show filenames such as <filename>/etc/lilo.conf</filename></para></blockquote>
 
-  <blockquote>
-    <para>This form of text should be typed exactly as shown unless
-    otherwise noted in the surrounding text. It is also used to identify
-    references to specific commands.</para>
-  </blockquote>
+<para><emphasis>Emphasis</emphasis></para>
 
-<screen><computeroutput>install-info: unknown option
-`--dir-file=/mnt/lfs/usr/info/dir'</computeroutput></screen>
+<blockquote><para>This form of text is used for several purposes in the 
+book but mainly to emphasize important points or to give examples as to 
+what to type.</para></blockquote>
 
-  <blockquote>
-    <para>This form of text (fixed width font) shows screen
-    output, probably the result of issuing a command. It is also used to
-    show filenames such as <filename>/boot/grub/grub.conf</filename></para>
-  </blockquote>
+<para><ulink url="http://www.linuxfromscratch.org/">http://www.linuxfromscratch.org/</ulink></para>
 
-  <note>
-    <para>Please configure your browser to display fixed-width text with
-    a good monospaced font, with which you can distinguish the glyphs of
-    <literal>Il1</literal> or <literal>O0</literal> clearly.</para>
-  </note>
+<blockquote><para>This form of text is used for hyperlinks, both within the 
+book and to external pages such as HowTo's, download locations,
+websites, etc.</para></blockquote>
 
-  <para><emphasis>Emphasis</emphasis></para>
+<para><screen><userinput>cat &gt; $LFS/etc/group &lt;&lt; "EOF"</userinput>
+	root:x:0:
+	bin:x:1:
+	......
+<userinput>EOF</userinput>
+</screen>
+</para>
 
-  <blockquote>
-    <para>This form of text is used for several purposes,
-    but mainly to emphasize important points, or to give examples of
-    what to type.</para>
-  </blockquote>
-
-  <para><ulink url="https://www.&lfs-domainname;/"/></para>
-
-  <blockquote>
-    <para>This form of text is used for hypertext links external to
-    the book, such as HowTos, download locations, websites, etc.</para>
-  </blockquote>
-
-  <para><xref linkend="seamonkey"/></para>
-
-  <blockquote>
-    <para>This form of text is used for links internal to
-    the book, such as another section describing a different package.</para>
-  </blockquote>
-
-<screen><userinput>cat &gt; $LFS/etc/group &lt;&lt; "EOF"
-<literal>root:x:0:
-bin:x:1:
-......</literal>
-EOF</userinput></screen>
-
-  <blockquote>
-    <para>This style is mainly used when creating configuration
-    files.  The first command (in bold) tells the system to create
-    the file <filename>$LFS/etc/group</filename> from whatever is typed on the
-    following lines, until the sequence EOF is encountered.
-    Therefore, this whole section is usually typed exactly as shown.
-    Remember, copy and paste is your friend!</para>
-  </blockquote>
-
-  <para><replaceable>&lt;REPLACED TEXT&gt;</replaceable></para>
-
-  <blockquote>
-    <para>This form of text is used to encapsulate text that should be
-    modified, and is not to be typed as shown, or copied and pasted.
-    The angle brackets are not part of the literal text; they are part of the
-    substitution.</para>
-  </blockquote>
-
-  <para><systemitem class='username'>root</systemitem></para>
-
-  <blockquote>
-    <para>This form of text is used to show a specific system user or group
-    reference in the instructions.</para>
-  </blockquote>
-
-  <para>&nbsp;</para> <!-- add extra white space to improve readability -->
-  </sect2>
-
-  <sect2>
-  <title>Conventions Used for Package Dependencies</title>
-
-    <para>When new packages are created, the software's authors depend on prior work.  In
-    order to build a package in BLFS, these dependencies must be built before
-    the desired package can be compiled.  For each package, prerequisites are listed
-    in one or more separate sections:  Required, Recommended, and Optional.</para>
-
-    <bridgehead renderas="sect3">Required Dependencies</bridgehead>
-
-    <para>These dependencies are the bare minimum needed to
-    build the package.  Packages in LFS, and the required
-    dependencies of these required packages, are omitted from this list.
-    Always remember to check for nested dependencies. If a dependency is
-    said to be <quote>runtime</quote>, then it is not needed for building
-    the package, but only to use it after installation.</para>
-
-    <bridgehead renderas="sect3">Recommended Dependencies</bridgehead>
-
-    <para>These are dependencies the BLFS editors have determined
-    are important to give the package reasonable capabilities.  If a
-    recommended dependency is not said to be <quote>runtime</quote>, package
-    installation instructions assume it is installed.  If it
-    is not installed, the instructions may require modification, to
-    accommodate the missing package. A recommended <quote>runtime</quote>
-    dependency does not need to be installed before building the package, but
-    must be built afterwards for running the package with reasonable
-    capabilities.</para>
-
-    <bridgehead renderas="sect3">Optional Dependencies</bridgehead>
-
-    <para>These are dependencies the package <emphasis>may</emphasis> use.  Integration
-    of optional dependencies may be automatic by the package, or
-    additional steps not presented by BLFS may be necessary.  Optional dependencies are
-    sometimes listed without explicit BLFS instructions.  In this case you must
-    determine how to perform the installation yourself.</para>
-
-    <para>&nbsp;</para> <!-- add extra white space to improve readability -->
-  </sect2>
-
-  <sect2>
-  <title>Conventions Used for Kernel Configuration Options</title>
-
-    <para>Some packages require specific kernel configuration options.
-    The general layout for these looks like this:</para>
-
-    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-      href="conventions-kernel.xml"/>
-
-    <para>[...] on the right gives the symbolic name of the option, so you
-    can easily check whether it is set in your <filename>.config</filename>
-    file. Note that the <filename>.config</filename> file contains a
-    <literal>CONFIG_</literal> prefix before all symbolic names.  The
-    meaning of the various entries is:
-
-    <blockquote>
-    <informaltable frame='none'><tgroup cols="2">
-      <colspec align="left"/><colspec align="left"/><tbody>
-      <row>
-        <entry><emphasis role="bold">Master section</emphasis></entry>
-        <entry>top level menu item</entry>
-      </row>
-      <row>
-        <entry><emphasis role="bold">Subsection</emphasis></entry>
-        <entry>submenu item</entry>
-      </row>
-      <row>
-        <entry>
-          <emphasis role="bold">Required parameter</emphasis></entry>
-        <entry>
-          the option can either be built-in, or not selected: it must be
-          selected
-        </entry>
-      </row>
-      <row>
-        <entry>
-          <emphasis role="bold">Required parameter (not as
-          module)</emphasis>
-        </entry>
-        <entry>
-          the option can be built-in, a module, or not selected (tri-state):
-          it must be selected as built-in
-        </entry>
-      </row>
-      <row>
-        <entry>
-          <emphasis role="bold">Required parameter (could be
-          a module)</emphasis>
-        </entry>
-        <entry>
-          the option can be built-in, a module, or not selected:
-          it must be selected, either as built-in or as a module
-        </entry>
-      </row>
-      <row>
-        <entry>
-          <emphasis role="bold">Required parameter (as
-          a module)</emphasis>
-        </entry>
-        <entry>
-          the option can be built-in, a module, or not selected:
-          it must be selected as a module; selecting it as built-in
-          may cause unwanted effects
-        </entry>
-      </row>
-      <row>
-        <entry>
-          <emphasis role="bold">Optional parameter</emphasis>
-        </entry>
-        <entry>
-          the option can be built-in, a module, or not
-          selected: it may be selected as a module or built-in if you
-          need it for driving the hardware or optional kernel features
-        </entry>
-      </row>
-      <row>
-        <entry>
-          <emphasis role="bold">Optional parameter (as a module
-          if enabled)</emphasis>
-        </entry>
-        <entry>
-          the option can be built-in, a module, or not
-          selected: it may be selected as a module if you need it
-          for driving the hardware or optional kernel features, but
-          selecting it as built-in may cause unwanted effects
-        </entry>
-      </row>
-      <row>
-        <entry>
-          <emphasis role="bold">Incompatible parameter</emphasis>
-        </entry>
-        <entry>
-          the option can either be built-in or not selected: it must
-          <emphasis>not</emphasis> be selected
-        </entry>
-      </row>
-      <row>
-        <entry>
-          <emphasis role="bold">Incompatible parameter (even as module)</emphasis>
-        </entry>
-        <entry>
-          the option can be built-in, a module, or not selected:
-          it must <emphasis>not</emphasis> be selected
-        </entry>
-      </row>
-    </tbody></tgroup></informaltable>
-    </blockquote>
-    </para>
-
-    <para>Note that, depending on other selections, the angle brackets
-    (&lt;&gt;) in the configuration menu may appear as braces ({}) if the option cannot be unselected,
-    or even as dashes (-*- or -M-), when the choice is imposed.
-    The help text describing the option specifies the other selections on which this
-    option relies, and how those other selections are set.</para>
-
-    <para>
-      The letter in <emphasis role='blue'>blue</emphasis> is the hotkey
-      for this option.  If you are running
-      <command>make menuconfig</command>, you can press a key to quickly
-      traverse all the options with this key as the hotkey on the screen.
-    </para>
-
-    <para>&nbsp;</para> <!-- add extra white space to improve readability -->
-  </sect2>
-
-  <sect2>
-  <title>SBU values in BLFS</title>
-
-    <para>As in LFS, each package in BLFS has a build time listed in Standard
-    Build Units (SBUs).   These times are relative to the time it took to build
-    binutils in LFS, and are intended to provide some insight into how long it
-    will take to build a package. Most times listed are for a single processor
-    or core to build the package. In some cases, large, long running builds
-    tested on multi-core systems have SBU times listed with comments such
-    as '(parallelism=4)'.  These values indicate testing was done using
-    multiple cores.  Note that while this speeds up the build on systems with
-    the appropriate hardware, the speedup is not linear and to some extent
-    depends on the individual package and the specific hardware used.  </para>
-
-    <para>For packages which use ninja (i.e., anything using meson) or rust, by
-    default all cores are used; similar comments will be seen on such packages
-    even when the build time is minimal.</para>
-
-    <para>Where even a parallel build takes more than 15 SBU, on certain
-    machines the time may be considerably greater even when the build does not
-    use swap. In particular, different micro-architectures will build some
-    files at different relative speeds, and this can introduce delays when
-    certain make targets wait for another file to be created. Where a large
-    build uses a lot of C++ files, processors with Simultaneous Multi Threading
-    will share the Floating Point Unit and can take 45% longer than when using
-    four 'prime' cores (measured on an intel i7 using taskset and keeping the
-    other cores idle).</para>
-
-    <para>Some packages do not support parallel builds; for these, the
-    make command must specify -j1.  Packages that are known to impose such limits are
-    so marked in the text.</para>
-
-  </sect2>
+<blockquote><para>This type of section is used mainly when creating 
+configuration files.  The first command (in bold) tells the system to create 
+the file $LFS/etc/group from whatever is typed on the following lines until 
+the sequence EOF is encountered. Therefore, this whole section is generally 
+typed as seen.</para></blockquote>
 
 </sect1>
+
Index: introduction/welcome/credits.xml
===================================================================
--- introduction/welcome/credits.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/credits.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,119 +1,136 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-welcome-credits">
+<?dbhtml filename="credits.html" dir="introduction"?>
+<title>Credits</title>
 
-<sect1 id="credits" xreflabel="Credits">
-  <?dbhtml filename="credits.html"?>
+<para>Many people have contributed both directly and indirectly to BLFS.
+This page lists all of those we can think of.  We may well have
+missed people out and if you feel this is the case, drop us line.  Many
+thanks to all of the LFS community for their assistance with this
+project.  If you are in the list and wish to have your email address
+included, again please drop us a line to &maintainer-address; and we'll
+be happy to add it.  We don't include email addresses by default so if
+you want it included, please state so when you contact us.</para>
 
+<sect2>
+<title>Editors</title>
+<itemizedlist>
 
-  <title>Credits</title>
+<listitem><para><emphasis>Editor:</emphasis> Mark
+Hymers <ulink
+url="mailto:&maintainer-address;">&lt;&maintainer-address;&gt;</ulink></para></listitem>
 
-  <para>Many people have contributed both directly and indirectly to
-  BLFS. This page lists all of those we can think of.  We may well have
-  left people out and if you feel this is the case, drop us a line.  Many
-  thanks to all of the LFS community for their assistance with
-  this project. </para>
+<listitem><para><emphasis>Co-Editors:</emphasis> Bruce 
+Dubbs and Larry Lawrence</para></listitem>
 
-  <sect2>
-    <title>Current Editors</title>
+</itemizedlist>
+</sect2>
 
-    <itemizedlist>
+<sect2>
+<title>Text Authors</title>
+<itemizedlist>
 
-      <listitem><para>Rahul Chandra          </para></listitem>
-      <listitem><para>Bruce Dubbs            </para></listitem>
-      <listitem><para>Pierre Labastie        </para></listitem>
-      <listitem><para>Ken Moffat             </para></listitem>
-      <listitem><para>Douglas Reno           </para></listitem>
-      <listitem><para>Xi Ruoyao              </para></listitem>
-      <listitem><para>Thomas Trepl           </para></listitem>
+<listitem><para>Chapter 01.  Based on the LFS introductory text by
+<emphasis>Gerard Beekmans</emphasis>, modified by <emphasis>Mark
+Hymers</emphasis> for BLFS.</para></listitem>
 
-    </itemizedlist>
-  </sect2>
+<listitem><para>Chapter 02: The /usr versus /usr/local
+debate: <emphasis>Andrew McMurry</emphasis>.</para></listitem>
 
-  <sect2>
-    <title>Contributors and Past Editors</title>
+<listitem><para>Chapter 03: /etc/inputrc: <emphasis>Chris
+Lynn</emphasis>.</para></listitem>
 
-    <para>The list of contributors is far too large to provide detailed
-    information about the contributions for each contributor.  Over the years,
-    the following individuals have provided significant inputs to the
-    book:</para>
+<listitem><para>Chapter 03: Customising your logon &amp; vimrc: <emphasis>Mark
+Hymers</emphasis>.</para></listitem>
 
-    <itemizedlist>
+<listitem><para>Chapter 03: Random number script <emphasis>Larry
+Lawrence</emphasis>.</para></listitem>
 
-      <listitem><para>Timothy Bauscher    </para></listitem>
-      <listitem><para>Daniel Bauman       </para></listitem>
-      <listitem><para>Jeff Bauman         </para></listitem>
-      <listitem><para>Andy Benton         </para></listitem>
-      <listitem><para>Wayne Blaszczyk     </para></listitem>
-      <listitem><para>Paul Campbell       </para></listitem>
-      <listitem><para>Nathan Coulson      </para></listitem>
-      <listitem><para>Jeroen Coumans      </para></listitem>
-      <listitem><para>Guy Dalziel         </para></listitem>
-      <listitem><para>Robert Daniels      </para></listitem>
-      <listitem><para>Richard Downing     </para></listitem>
-      <listitem><para>Manuel Canales Esparcia </para></listitem>
-      <listitem><para>Jim Gifford         </para></listitem>
-      <listitem><para>Manfred Glombowski  </para></listitem>
-      <listitem><para>Ag Hatzimanikas     </para></listitem>
-      <listitem><para>Mark Hymers         </para></listitem>
-      <listitem><para>James Iwanek        </para></listitem>
-      <listitem><para>David Jensen        </para></listitem>
-      <listitem><para>Jeremy Jones        </para></listitem>
-      <listitem><para>Seth Klein          </para></listitem>
-      <listitem><para>Alex Kloss          </para></listitem>
-      <listitem><para>Eric Konopka        </para></listitem>
-      <listitem><para>Larry Lawrence      </para></listitem>
-      <listitem><para>D-J Lucas           </para></listitem>
-      <listitem><para>Chris Lynn          </para></listitem>
-      <listitem><para>Andrew McMurry      </para></listitem>
-      <listitem><para>Randy McMurchy      </para></listitem>
-      <listitem><para>Denis Mugnier       </para></listitem>
-      <listitem><para>Billy O'Connor      </para></listitem>
-      <listitem><para>Fernando de Oliveira</para></listitem>
-      <listitem><para>Alexander Patrakov  </para></listitem>
-      <listitem><para>Olivier Peres       </para></listitem>
-      <listitem><para>Andreas Pedersen    </para></listitem>
-      <listitem><para>Henning Rohde       </para></listitem>
-      <listitem><para>Matt Rogers         </para></listitem>
-      <listitem><para>James Robertson     </para></listitem>
-      <listitem><para>Henning Rohde       </para></listitem>
-      <listitem><para>Chris Staub         </para></listitem>
-      <listitem><para>Jesse Tie-Ten-Quee  </para></listitem>
-      <listitem><para>Ragnar Thomsen      </para></listitem>
-      <listitem><para>Tushar Teredesai    </para></listitem>
-      <listitem><para>Jeremy Utley        </para></listitem>
-      <listitem><para>Zack Winkles        </para></listitem>
-      <listitem><para>Christian Wurst     </para></listitem>
-      <listitem><para>Igor Živković       </para></listitem>
+<listitem><para>Chapter 05: Which <emphasis>Mark Hymers</emphasis> with
+many thanks to <emphasis>Seth Klein</emphasis> and <emphasis>Jesse 
+Tie-Ten-Quee</emphasis>.</para></listitem>
 
-    </itemizedlist>
+<listitem><para>Chapter 06: <!--<xref
+linkend="ch06-firewall"/>-->Firewalling: <emphasis>Henning
+Rohde with thanks to Jeff Bauman</emphasis>.</para></listitem>
 
-  </sect2>
+<listitem><para>Chapter 10: XFree86 <emphasis>Bruce Dubbs</emphasis>.</para></listitem>
 
-  <sect2>
-    <title>General Acknowledgments</title>
+<listitem><para>Chapter 11: Intro to Window Managers 
+<emphasis>Bruce Dubbs</emphasis>.</para></listitem>
 
-    <itemizedlist>
+<listitem><para>Chapter 12: GNOME: <emphasis>James Iwanek</emphasis></para></listitem>
 
-      <listitem><para>Fernando Arbeiza    </para></listitem>
-      <listitem><para>Miguel Bazdresch    </para></listitem>
-      <listitem><para>Gerard Beekmans     </para></listitem>
-      <listitem><para>Oliver Brakmann     </para></listitem>
-      <listitem><para>Jeremy Byron        </para></listitem>
-      <listitem><para>Ian Chilton         </para></listitem>
-      <listitem><para>David Ciecierski    </para></listitem>
-      <listitem><para>Jim Harris          </para></listitem>
-      <listitem><para>Lee Harris          </para></listitem>
-      <listitem><para>Marc Heerdink       </para></listitem>
-      <listitem><para>Steffen Knollmann   </para></listitem>
-      <listitem><para>Eric Konopka        </para></listitem>
-      <listitem><para>Scot McPherson      </para></listitem>
-      <listitem><para>Ted Riley           </para></listitem>
+<listitem><para>Chapter 13: QT: <emphasis>Larry Lawrence</emphasis>
+objprelink and KDE: <emphasis>Bruce Dubbs</emphasis>.</para>
+</listitem>
 
-    </itemizedlist>
-  </sect2>
+</itemizedlist>
+</sect2>
+
+<sect2>
+<title>Installation Instruction Authors</title>
+<itemizedlist>
+
+<listitem><para>Alsa: <emphasis>Alex Kloss</emphasis></para></listitem>
+
+<listitem><para>ATK, audiofile, cdrdao, cdrtools, curl, dhcp, fcron, imlib,
+GLib2, GTK+2, libao, libogg, libvorbis, libxml2, libxslt, OpenSSH, Pango, pccts, pcre, pkgconfig, postfix, QT, unzip and vorbis-tools: <emphasis>Larry Lawrence</emphasis></para></listitem>
+
+<listitem><para>CDParanoia, mpg123, SDL and XMMS: <emphasis>Jeroen
+Coumans</emphasis></para></listitem>
+
+<listitem><para>cvs, gpm, hdparm, libjpeg, mng, png, tiff and ungif,
+links, lynx, openssl, which and zlib: <emphasis>Mark 
+Hymers</emphasis></para></listitem>
+
+<listitem><para>daemontools, traceroute and ucspi-tcp: <emphasis>Jeff
+Bauman</emphasis></para></listitem>
+
+<listitem><para>db and lcms: <emphasis>Jeremy Jones and Mark
+Hymers</emphasis></para></listitem>
+
+<listitem><para>fetchmail and wvdial: <emphasis>Paul
+Campbell</emphasis></para></listitem>
+
+<listitem><para>gdk, GLib, GTK+ and libxml: <emphasis>James
+Iwanek</emphasis></para></listitem>
+
+<listitem><para><!--<xref linkend="iptables"/>-->iptables: <emphasis>Henning
+Rohde</emphasis></para></listitem>
+
+</itemizedlist>
+</sect2>
+
+<sect2>
+<title>General Acknowledgments</title>
+
+<itemizedlist>
+
+<listitem><para><emphasis>Gerard Beekmans</emphasis> for generally
+putting up with us and for running the whole LFS project.</para></listitem>
+
+<listitem><para><emphasis>Bruce Dubbs</emphasis> for writing the kde.txt
+hint from which we gathered much useful information.</para></listitem>
+
+<listitem><para><emphasis>Lee Harris</emphasis> for writing the gpm.txt
+hint on which our gpm instructions are based</para></listitem>
+
+<listitem><para><emphasis>Marc Heerdink</emphasis> for writing the
+gpm2.txt hint on which our gpm instruction are based.</para></listitem>
+
+<listitem><para><emphasis>Jeremy Jones</emphasis> (otherwise known as
+<emphasis>mca</emphasis>) for hacking Makefiles and general
+assistance.</para></listitem>
+
+<listitem><para><emphasis>J_Man</emphasis> for submitting a
+gpm-1.19.3.diff file on which our gpm instructions are
+based.</para></listitem>
+
+<listitem><para><emphasis>Scot Mc Pherson</emphasis> for writing the gnome-1.4.txt
+hint on which chapter 12 is closely based</para></listitem>
+
+</itemizedlist>
+</sect2>
 
 </sect1>
+
Index: introduction/welcome/maillists.xml
===================================================================
--- introduction/welcome/maillists.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/maillists.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,22 +1,266 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="maillists" xreflabel="Mailing lists">
-  <?dbhtml filename="maillists.html"?>
-
-
-  <title>Mailing Lists</title>
-
-  <para>The &lfs-domainname; server is hosting a number of mailing
-  lists that are used for the development of the BLFS book. These lists include,
-  among others, the main development and support lists.</para>
-
-  <para>For more information regarding which lists are available, how to
-  subscribe to them, archive locations, etc., visit
-  <ulink url="https://www.&lfs-domainname;/mail.html"/>.</para>
+<sect1 id="intro-welcome-maillists" xreflabel="Mailing lists and archives">
+<?dbhtml filename="maillists.html" dir="introduction"?>
+<title>Mailing lists and archives</title>
+
+<para>The linuxfromscratch.org server is hosting the following publicly 
+accessible mailing lists:</para>
+
+<itemizedlist>
+
+<listitem><para>blfs-dev</para></listitem>
+
+<listitem><para>blfs-book</para></listitem>
+
+<listitem><para>blfs-support</para></listitem>
+
+<listitem><para>lfs-support</para></listitem>
+
+<listitem><para>lfs-dev</para></listitem>
+
+<listitem><para>lfs-announce</para></listitem>
+
+<listitem><para>lfs-security</para></listitem>
+
+<listitem><para>lfs-book</para></listitem>
+
+<listitem><para>alfs-discuss</para></listitem>
+
+</itemizedlist>
+
+<sect2>
+<title>blfs-book</title>
+
+<para>The blfs-book list is used by the BLFS-BOOK editors
+to co-ordinate blfs-book's maintenance, like XML issues and the like.
+Actual discussion on what should be added and removed should take place
+on blfs-dev.</para>
+
+</sect2>
+
+<sect2>
+<title>blfs-dev</title>
+
+<para>The blfs-dev mailing list discusses matters related to the
+BLFS-BOOK (Beyond LFS).  If problems with the book come up, a bug
+or two need to be
+reported, or suggestions to improve the book (such as suggestions as to
+installation instructions to add) are to be made, this mailing list
+is the right one.</para>
+
+<para>Requests for help with programs beyond the base LFS setup (not
+just those in BLFS) should go to blfs-support.</para>
+
+</sect2>
+
+<sect2>
+<title>blfs-support</title>
+
+<para>The blfs-support list deals with support requests for any software
+not installed in the LFS book.  The list is not just for help with
+software explicitly mentioned in the BLFS book, any software beyond that
+installed as part of the base LFS system can be discussed here.</para>
+
+</sect2>
+
+<sect2>
+<title>lfs-support</title>
+
+<para>The lfs-support mailing list provides support to users building an
+LFS system as far as the end of the main book.  Requests for help with
+installing software beyond the base system should go to the blfs-support
+list.</para>
+
+</sect2>
+
+<sect2>
+<title>lfs-dev</title>
+
+<para>The lfs-dev mailing list discusses matters strictly related to the
+LFS-BOOK. If problems with the book come up, a bug or two need to be
+reported, or suggestions to improve the book should be made,
+this mailing list is the right one.</para>
+
+<para>Requests for help should go to lfs-support or blfs-support.</para>
+
+</sect2>
+
+<sect2>
+<title>lfs-announce</title>
+
+<para>The lfs-announce list is a moderated list. It can be subscribed
+to, but
+you can't post any messages to this list. This list is used to announce
+new stable releases. The lfs-dev list will carry information about
+development releases as well. If a user is already on the lfs-dev
+list, there's little use subscribing to
+this list as well because everything that is posted to the lfs-announce
+list will be posted to the lfs-dev list as well.</para>
+
+</sect2>
+
+<sect2>
+<title>lfs-security</title>
+
+<para>The lfs-security mailing list discusses security-related matters.
+Security concerns or security problems with a package used by LFS,
+should be addressed on this list.</para>
+
+</sect2>
+
+<sect2>
+<title>lfs-book</title>
+
+<para>The lfs-book list is used by the LFS-BOOK editors to co-ordinate
+lfs-book's maintenance, like XML issues and the like. Actual discussion
+on what should be added and removed take place on lfs-dev.</para>
+
+</sect2>
+
+<sect2>
+<title>alfs-discuss</title>
+
+<para>The alfs-discuss list discusses the development of ALFS, which
+stands for
+Automated Linux From Scratch. The goal of this project is to develop an
+installation tool that can install an LFS system automatically.
+It's main goal is to speed up compilation by taking away the need to
+manually enter the commands to configure, compile, and install
+packages.</para>
+
+</sect2>
+
+<sect2>
+<title>Mail archives</title>
+
+<para>All these lists are archived and can be viewed online at
+<ulink url="http://archive.linuxfromscratch.org/mail-archives"/> or downloaded
+from <ulink url="&ftp-root;/mail-archives"/>.</para>
+
+</sect2>
+
+<sect2>
+<title>How to subscribe?</title>
+
+<para>Any of the above-mentioned mailinglists can be subscribed to by
+sending an email to <ulink 
+url="mailto:listar@linuxfromscratch.org">listar@linuxfromscratch.org</ulink>
+and writing <emphasis>subscribe listname</emphasis> as the subject
+header of the message.</para>
+
+<para>Multiple lists at the same time can be subscribed to by using
+one email. This is done by leaving the subject blank and putting all the
+commands in the body of the email. The email will look like:</para>
+
+<blockquote><literallayout>To: listar@linuxfromscratch.org
+Subject:
+
+subscribe lfs-dev
+subscribe blfs-support
+subscribe alfs-discuss</literallayout></blockquote>
+
+<para>After the email is sent, the Listar program will reply with an
+email requesting a confirmation of the subscription request. After
+this confirmation email is sent back, Listar will send an
+email again with the message that the user has been subscribed to the
+list(s) along with an introduction message for that particular
+list.</para>
+
+</sect2>
+
+<sect2>
+<title>How to unsubscribe?</title>
+
+<para>To unsubscribe from a list, send an email 
+to <ulink url="mailto:listar@linuxfromscratch.org"/> and 
+write <emphasis>unsubscribe listname</emphasis> as the subject header of 
+the message.</para>
+
+<para>Multiple lists can be unsubscribed at the same time
+using one email. This is done by leaving the subject header blank and
+putting all the commands in the body of the email. The email will look
+like: </para>
+
+<blockquote><literallayout>To: listar@linuxfromscratch.org
+Subject:
+
+unsubscribe lfs-dev
+unsubscribe blfs-support
+unsubscribe alfs-discuss</literallayout></blockquote>
+
+<para>After the email is sent, the Listar program will reply with an
+email requesting a confirmation of the unsubscription
+request. After this confirmation email is sent back, Listar will
+send an email again with the message that the user has been unsubscribed
+from the list(s).</para>
+
+</sect2>
+
+<sect2>
+<title>Other list modes</title>
+
+<para>The modes that can be set by a user require sending an email to
+<ulink
+url="mailto:listar@linuxfromscratch.org">listar@linuxfromscratch.org</ulink>.
+The modes themselves are set by writing
+the appropriate commands in the subject header of the message.</para>
+
+<para>As the name implies, the <emphasis>Set command</emphasis> tells
+what
+to write to set a mode. The <emphasis>Unset command</emphasis> tells
+what to write to unset a mode.</para>
+
+<para>The listname in the example subject headers should be replaced
+with the
+listname to which
+the mode is going to be applied to. If more than one mode is to be set
+(to
+the same list or multiple lists) with one email, this can be done by
+leaving the subject header blank and writing all the commands in the
+body of
+the message instead.</para>
+
+</sect2>
+
+<sect2>
+<title>Digests</title>
+
+<literallayout>
+Set command: <emphasis>set listname digest</emphasis>
+Unset command: <emphasis>unset listname digest</emphasis>
+</literallayout>
+
+<para>All lists have the digest mode available which can be set after a
+user
+has subscribed to a list. Being in digest mode will
+cause you to stop receiving individual messages as they are posted to
+the list and instead receive one email a day containing all
+the messages posted to the list during that day.</para>
+
+<para>There is a second digest mode called digest2. When a user is set
+to this
+mode he will receive the daily digests but will also continue to
+receive the individual messages to the lists as they are posted. To
+set this mode, substitute <emphasis>digest</emphasis> for
+<emphasis>digest2</emphasis> in the command.</para>
+
+</sect2>
+
+<sect2>
+<title>Vacation</title>
+
+<literallayout>
+Set command: <emphasis>set listname vacation</emphasis>
+Unset command: <emphasis>unset listname vacation</emphasis>
+</literallayout>
+
+<para>If a user is going to be away for a while or wishes to stop
+receiving
+messages from the lists but doesn't want to unsubscribe, he can change
+to vacation mode. This has the same effect as unsubscribing,
+but without having to go through the unsubscribe process and
+then later through the subscribe process again.</para>
+
+</sect2>
 
 </sect1>
+
Index: introduction/welcome/mirrors.xml
===================================================================
--- introduction/welcome/mirrors.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,19 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="mirrors" xreflabel="Mirrors">
-  <?dbhtml filename="mirrors.html"?>
-
-
-  <title>Mirror Sites</title>
-
-  <para>The BLFS project has a number of mirrors set up world-wide to make it
-  easier and more convenient for you to access the website. Please visit the
-  <ulink url="https://www.&lfs-domainname;/mirrors.html"/> website for the
-  list of current mirrors.</para>
-
-</sect1>
Index: introduction/welcome/newsserver.xml
===================================================================
--- introduction/welcome/newsserver.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/newsserver.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,24 +1,12 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-welcome-newsserver">
+<?dbhtml filename="newsserver.html" dir="introduction"?>
+<title>News server</title>
 
-<sect1 id="intro-welcome-newsserver">
-  <?dbhtml filename="newsserver.html"?>
+<para>All the mailing lists hosted at linuxfromscratch.org are also 
+accessible via the NNTP server. All messages posted to a mailing list 
+will be copied to it's correspondent newsgroup, and vice versa.</para>
 
-
-  <title>News Server</title>
-
-  <para>All the mailing lists hosted at &lfs-domainname; are also
-  accessible via the NNTP server. All messages posted to a mailing
-  list will be copied to its correspondent newsgroup. Note, however,
-  that as this is written, it is not possible to write to the mailing
-  lists via the NNTP service.</para>
-
-
-  <para>The news server can be reached at <ulink
-  url="news:news.&lfs-domainname;">news.&lfs-domainname;</ulink>.</para>
+<para>The news server can be reached at <ulink
+url="news:news.linuxfromscratch.org"/>.</para>
 
 </sect1>
Index: introduction/welcome/packages.xml
===================================================================
--- introduction/welcome/packages.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,39 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="packages" xreflabel="Getting the Source Packages">
-  <?dbhtml filename="packages.html"?>
-
-
-  <title>Getting the Source Packages</title>
-
-  <para>Within the BLFS instructions, each package has two references for
-  finding the source files for the package&mdash;an HTTP link and an FTP link
-  (some packages may only list one of these links). Every effort has been made
-  to ensure that these links are accurate. However, the World Wide Web is in
-  continuous flux. Packages are sometimes moved or updated and the exact URL
-  specified is not always available.</para>
-
-  <para>To overcome this problem, the BLFS Team, with the assistance of Oregon
-  State University Open Source Lab, has made an HTTP/FTP site available through
-  world wide mirrors.  See <ulink
-  url="https://www.linuxfromscratch.org/blfs/download.html#sources">
-  https://www.linuxfromscratch.org/blfs/download.html#sources</ulink> for a
-  list.  These sites have all the sources of the exact versions of the packages
-  used in BLFS.  If you can't find the BLFS package you need at the listed
-  addresses, get it from these sites.</para>
-
-  <para>We would like to ask a favor, however.  Although this is a public
-  resource for you to use, please do not abuse it.  We have already had one
-  unthinking individual download over 3 GB of data, including multiple copies of
-  the same files that are placed at different locations (via symlinks) to make
-  finding the right package easier.  This person clearly did not know what files
-  he needed and downloaded everything.  The best place to download files
-  is the site or sites set up by the source code developer.  Please try
-  there first.</para>
-
-</sect1>
Index: introduction/welcome/version.xml
===================================================================
--- introduction/welcome/version.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/version.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,28 +1,48 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-welcome-version" xreflabel="Book Version">
+<?dbhtml filename="version.html" dir="introduction"?>
+<title>Book version</title>
 
-<sect1 id="version" xreflabel="Book Version">
-  <?dbhtml filename="version.html"?>
+<para>This is BLFS-BOOK version &version; dated &releasedate;. If this 
+version is older than a month a newer version is probably already available 
+for download. Check one of the mirror sites below for updated
+versions.</para>
 
+<para>Below is a list of our current HTTP and FTP mirror sites as
+of October 14th 2001. This list might not be accurate anymore. 
+The latest info can be found on our website at
+<ulink url="http://beyond.linuxfromscratch.org">http://beyond.linuxfromscratch.org</ulink>.</para>
 
-  <title>Book Version</title>
+<sect2>
+<title>HTTP Mirrors</title>
 
-  <para>This is BLFS-BOOK version &version; dated &releasedate;. This is the
-  &blfs-version; branch of the BLFS book, currently targeting the LFS
-  &lfs-version; book. For development versions, if this version is older than a
-  month, it's likely that your mirror hasn't been synchronized recently and a
-  newer version is probably available for download or viewing. Check one of the
-  mirror sites at <ulink url="https://www.&lfs-domainname;/mirrors.html"/> for
-  an updated version.</para>
+<sect3>
+<title>North America</title>
 
-  <!-- This is here only for production releases. Omit the stuff above and
-       then uncomment below as needed
+<itemizedlist>
 
-  <para>This is BLFS-BOOK version &version; dated &releasedate;. This version
-  is intended as the complement to the LFS-&lfs-version; book.</para> -->
+<listitem><para>Fremont, California, USA [100 Mbit] - <ulink
+url="http://beyond.linuxfromscratch.org/blfs/intro.shtml">http://beyond.linuxfromscratch.org/blfs/intro.shtml</ulink></para></listitem>
+
+<listitem><para>Columbus, Ohio, USA [1 Mbit] - <ulink
+url="http://beyond.us.linuxfromscratch.org/blfs/intro.shtml">http://beyond.us.linuxfromscratch.org/blfs/intro.shtml</ulink></para></listitem>
+
+</itemizedlist>
+
+</sect3>
+
+<sect3>
+<title>Europe</title>
+
+<itemizedlist>
+
+<listitem><para>Teeside, United Kingdom [256 Kbit] - <ulink
+url="http://beyond.linuxfromscratch.co.uk/blfs/intro.shtml">http://beyond.linuxfromscratch.co.uk/blfs/intro.shtml</ulink></para></listitem>
+
+</itemizedlist>
+
+</sect3>
+
+</sect2>
 
 </sect1>
+
Index: introduction/welcome/welcome.xml
===================================================================
--- introduction/welcome/welcome.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/welcome.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,35 +1,23 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<chapter id="intro-welcome" xreflabel="Welcome to BLFS">
+<?dbhtml filename="welcome.html" dir="introduction"?>
+<title>Welcome to BLFS</title>
+<para>The Beyond LinuxFromScratch book is designed to carry on from
+where the LFS book leaves off.  Unlike the LFS book, it isn't designed
+to be followed straight through.  Reading the <xref
+linkend="intro-welcome-whichsections"/> part of this chapter should
+help guide you through the book.</para>
 
-<chapter id="welcome">
-  <?dbhtml filename="welcome.html"?>
+<para>Please read most of this part of the book carefully as it explains
+quite a few of the conventions we use throughout the book.</para>
 
-  <title>Welcome to BLFS</title>
-
-  <para>The Beyond Linux From Scratch book is designed to carry on from where
-  the LFS book leaves off. But unlike the LFS book, it isn't designed to be
-  followed straight through.  Reading the <xref linkend="whichsections"/>
-  part of this chapter should help guide you through the book.</para>
-
-  <para>Please read most of this part of the book carefully as it explains
-  quite a few of the conventions used throughout the book.</para>
-
-<!--  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="acknowledgments.xml"/> -->
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="which.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="conventions.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="version.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="mirrors.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="packages.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="changelog.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="maillists.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="wiki.xml"/>
-  <!--   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="newsserver.xml"/> -->
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="askhelp.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="credits.xml"/>
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="contact.xml"/>
-
+&intro-welcome-conventions;
+&intro-welcome-version;
+&intro-welcome-acks;
+&intro-welcome-credits;
+&intro-welcome-changelog;
+&intro-welcome-whichsect;
+&intro-welcome-mailinglists;
+&intro-welcome-newsserver;
+&intro-welcome-contact;
+&intro-welcome-askhelp;
 </chapter>
Index: introduction/welcome/which.xml
===================================================================
--- introduction/welcome/which.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ introduction/welcome/which.xml	(revision f45b195302d36939467202524156f38e0369b4f2)
@@ -1,80 +1,50 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
+<sect1 id="intro-welcome-whichsections" xreflabel="Which sections of the book?">
+<?dbhtml filename="which.html" dir="introduction"?>
+<title>Which sections of the book do I want?</title>
 
-<sect1 id="whichsections" xreflabel="Which sections of the book?">
-  <?dbhtml filename="which.html"?>
+<para>Unlike the LinuxFromScratch book, BLFS isn't designed to be
+followed in a linear manner.  This is because LFS provides instructions
+on how to create a base system which is capable of turning into anything 
+from a web server to a multimedia desktop system.  BLFS is where we try
+to guide you through going from the base system to your intended
+destination and so choice is very much involved.</para>
 
+<para>MUCH OF THIS PAGE HAS TO BE RE-WRITTEN TO FIT THE NEW LAYOUT.  THE
+OLD TEXT IS STILL IN THE XML SOURCE AND THE NEW TEXT CAN BE BASED ON
+IT.</para>
 
-  <title>Which Sections of the Book Do I Want?</title>
+<!-- THIS NEEDS REWRITING TO FIT THE NEW LAYOUT
+<para>Everyone who reads the book will want to read certain sections.
+<xref linkend="part1"/> which you are reading now contains generic
+information.  Especially take note of the information 
+in <xref linkend="chapter02"/> as this chapter contains comments about 
+how to unpack software and various other aspects which apply 
+throughout the book.</para>
 
-  <para>Unlike the Linux From Scratch book, BLFS isn't designed to be
-  followed in a linear manner. LFS provides instructions
-  on how to create a base system which can become anything
-  from a web server to a multimedia desktop system. BLFS attempts
-  to guide you in the process of going from the base system to your intended
-  destination. Choice is very much involved.</para>
+<para>Most people will want to at least browse through <xref
+linkend="part2"/> as this contains information on general post-LFS
+configuration issues and information on various libraries which are
+needed by many packages.  Note that you don't have to install all of
+these libraries to start with, each BLFS install procedure tells you
+which packages it depends upon so you can choose the program you want
+to install and see what it needs.</para>
 
-  <para>Everyone who reads this book will want to read certain sections.  The
-  <xref linkend="introduction"/>, which you are currently reading,
-  contains generic information.  Take special note of the information in
-  <xref linkend="important"/>, as this contains comments about how to
-  unpack software, issues related to the use of different locales, and various other
-  considerations which apply throughout the book.</para>
+<para>Likewise, most people will probably want to look at <xref
+linkend="chapter06"/> to deal with connecting to the Internet or your local
+LAN.  The basic LFS book deals with setting up a static-ip based
+ethernet connection, all other configurations such as DHCP and dial-up
+internet connections are dealt with in this part of BLFS.</para>
 
-  <para>The part on <xref linkend="postlfs"/> is where most people will want
-  to turn next.  This deals not only with configuration, but also with Security
-  (<xref linkend="postlfs-security"/>), File Systems (<xref
-  linkend="postlfs-filesystems"/> -- including GRUB for UEFI), Text Editors (<xref
-  linkend="postlfs-editors"/>), and Shells (<xref linkend="postlfs-shells"/>).
-  Indeed, you may wish to reference some parts of this chapter (especially
-  the sections on Text Editors and File Systems) while building your LFS
-  system.</para>
+<para>Once you have dealt with these basics, you may wish to configure
+network services such as mail.  All of this is dealt with in the
+remainder of <xref linkend="part3"/>.  Those wanting to build servers
+should find enough information to give them a good starting point here.</para>
 
-  <para>Following these basic items, most people will want to at least browse
-  through the <xref linkend="general"/> part of the book.  This contains
-  information on many items which are prerequisites for other sections of the
-  book, as well as some items (such as <xref linkend="general-prog"/>)
-  which are useful in their own right.  You don't have to install all
-  of the libraries and packages found in this part; each
-  BLFS installation procedure tells you which other packages this one
-  depends upon. You can choose the program you want to install, and see
-  what it needs. (Don't forget to check for nested dependencies!)</para>
+<para>Those creating desktop systems will want to look at the next three
+parts of the book: <xref linkend="part4"/>, <xref linkend="part5"/> and
+<xref linkend="part6"/>.</para>-->
 
-  <para>Likewise, most people will probably want to look at the
-  <xref linkend="basicnet"/> section.  It deals with connecting to the Internet
-  or your LAN (<xref linkend="basicnet-connect"/>)
-  using a variety of methods such as DHCP and PPP, and with items
-  such as Networking Libraries (<xref linkend="basicnet-netlibs"/>), plus various
-  basic networking programs and utilities.</para>
-
-  <para>Once you have dealt with these basics, you may wish to configure
-  more advanced network services.  These are dealt with in the <xref
-  linkend="server"/> part of the book.  Those wanting to build servers
-  should find a good starting point there.  Note that this section
-  also contains information on several database packages.</para>
-
-  <para>The next twelve chapters deal with desktop systems.  This
-  portion of the book starts with a part talking about <xref linkend="x"/>. This
-  part also deals with some generic X-based libraries (<xref linkend="x-lib"/>).
-  After that, <xref linkend="kde"/>, <xref linkend="gnome"/>,
-  <xref linkend="xfce"/>, and <xref linkend="lxqt"/> are given their
-  own parts, followed by one on <xref linkend="xsoft"/>.</para>
-
-  <para>The book then moves on to deal with <xref linkend="multimedia"/>
-  packages. Note that many people may want to use the <xref linkend="alsa"/>
-  instructions from this chapter when first starting their BLFS
-  journey; the instructions are placed here because it is the most logical
-  place for them.</para>
-
-  <para>The final part of the main BLFS book deals with <xref
-  linkend="pst"/>.  This is useful for most people with desktop systems, but
-  even those who are creating dedicated server systems may find it useful.</para>
-
-  <para>We hope you enjoy using BLFS. May you realize your dream of building
-  the perfectly personalized Linux system!</para>
+<para>We hope you enjoy using BLFS and find it useful.</para>
 
 </sect1>
+
Index: introduction/welcome/wiki.xml
===================================================================
--- introduction/welcome/wiki.xml	(revision 11863c1ddd637517e67aa24c4112af4203ff7e88)
+++ 	(revision )
@@ -1,67 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-]>
-
-<sect1 id="wiki" xreflabel="wiki">
-  <?dbhtml filename="wiki.html"?>
-
-
-  <title>Editor Notes</title>
-
-  <para>The BLFS Project has created a Wiki for editors to comment
-  on pages and instructions at <ulink url='&blfs-wiki;'/>.</para>
-
-  <para>When <emphasis>editor notes</emphasis> are present, a link
-  appears in the form <literal>&blfs-wiki;/pkgname</literal> right
-  below the dependency list. The idea behind the editor notes is to
-  give additional information about the package and/or its build
-  instructions, common pitfalls or maybe even more sophisticated
-  configuration for special cases of use.</para>
-
-  <para>The vast majority of the packages do not have editor notes.</para>
-
-  <note>
-    <para>
-      The <emphasis>editor notes</emphasis> might be outdated. Even
-      though the pages should be reviewed when a package is updated,
-      it might happen that there are notes referring to an obsolete
-      version and therefore, the notes might be out of date. Always
-      check the date of the notes and more importantly, the version
-      of the package the notes refer to.
-    </para>
-  </note>
-
-<!--
-  <para>The following are the rules for posting:
-
-    <itemizedlist>
-      <listitem>
-        <para>Due to excessive spamming, the commenting function is
-        restricted to authenticated users (editors) only.</para>
-      </listitem>
-      <listitem>
-        <para>Suggestions to change the book should be made by creating a new ticket,
-        <emphasis>not</emphasis> by making comments in the Wiki.</para>
-      </listitem>
-      <listitem>
-        <para>Questions with your specific installation problems should be made
-        by subscribing and mailing to the BLFS Support Mailing List at <ulink
-        url='mailto:blfs-support@&lfs-domainname;'/>.</para>
-      </listitem>
-      <listitem>
-        <para>Discussions of build instructions should be made by subscribing
-        and mailing to the BLFS Development List at <ulink
-        url='mailto:blfs-dev@&lfs-domainname;'/>.</para>
-      </listitem>
-      <listitem>
-        <para>Inappropriate material will be removed.</para>
-      </listitem>
-    </itemizedlist>
-
-  </para>
--->
-
-</sect1>
