1
0
Эх сурвалжийг харах

Separate standards page and rationale page
and reformat. Provided more information about packages
needed to satisfy LSB.

Also fixed a couple of typos.



git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9120 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

Bruce Dubbs 15 жил өмнө
parent
commit
a26951eac5

+ 12 - 0
chapter01/changelog.xml

@@ -37,6 +37,18 @@
 
 -->
 
+    <listitem>
+      <para>2009-11-24</para>
+      <itemizedlist>
+        <listitem>
+          <para>[bdubbs] Separate standards page and rationale page
+          and reformat.  Provided more information about packages
+          needed to satisfy LSB.
+          </para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
     <listitem>
       <para>2009-11-23</para>
       <itemizedlist>

+ 2 - 2
chapter06/ncurses.xml

@@ -139,8 +139,8 @@ cp -v -R doc/* /usr/share/doc/ncurses-&ncurses-version;</userinput></screen>
       <para>The instructions above don't create non-wide-character Ncurses
       libraries since no package installed by compiling from sources would
       link against them at runtime. If you must have such libraries because
-      of some binary-only application, build them with the following
-      commands:</para>
+      of some binary-only application or to be compliant with LSB, build 
+      the package again with the following commands:</para>
 
 <screen role="nodump"><userinput>make distclean
 ./configure --prefix=/usr --with-shared --without-normal \

+ 1 - 1
chapter08/grub.xml

@@ -183,7 +183,7 @@ grub> boot</userinput></screen>
      <title>Updating the Master Boot Record</title>
 
      <para>If you tested the GRUB configuration as specified above, re-enter
-     the <command>chroot</command> envronment.</para>
+     the <command>chroot</command> environment.</para>
 
     <warning>
       <para>The following command will overwrite the current boot loader. Do not

+ 2 - 2
general.ent

@@ -1,5 +1,5 @@
-<!ENTITY version "SVN-20091123">
-<!ENTITY releasedate "November 23, 2009">
+<!ENTITY version "SVN-20091124">
+<!ENTITY releasedate "November 24, 2009">
 <!ENTITY copyrightdate "1999-2009"><!-- jhalfs needs a literal dash, not &ndash; -->
 <!ENTITY milestone "7.0">
 <!ENTITY generic-version "development"> <!-- Use "development", "testing", or "x.y[-pre{x}]" -->

+ 1 - 0
prologue/preface.xml

@@ -15,6 +15,7 @@
   <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="audience.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="architecture.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="standards.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="why.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="prerequisites.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="hostreqs.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="typography.xml"/>

+ 157 - 467
prologue/standards.xml

@@ -10,8 +10,8 @@
 
   <title>LFS and Standards</title>
 
-  <sect2>
-    <title/>
+  <!--<sect2>
+    <title/> -->
 
      <para>The structure of LFS follows Linux standards as closely as 
      possible.  The primary standards are:</para>
@@ -51,471 +51,161 @@
     that are beyond the scope of LFS.  Most of these additional packages have
     intallation instructions in BLFS. </para> 
 
-  </sect2>
-
-  <sect2>
-    <title>Why is each package in the book?</title>
-
-    <para>As stated earlier, the goal of LFS is to build a complete and usable 
-    foundation-level system.  This includes all packages needed to replicate 
-    itself while providing a relativly minimal base from which to customize
-    a more complete system based on the choices of the user.  This does not
-    mean that LFS is the smallest system possible.  Several important packages
-    are included that are not strictly required.  The lists below document the
-    rationale for each package int he book.</para>
-
-
-    <itemizedlist>
-
-      <listitem>
-        <para>Autoconf</para>
-
-        <para>This package contains programs for producing shell scripts that
-        can automatically configure source code from a developer's
-        template. It is often needed to rebuild a package after updates
-        to the build procedures.</para>
-      </listitem>
-
-      <listitem>
-        <para>Automake</para>
-
-        <para>This package contains programs for generating Make files from
-        a template. It is often needed to rebuild a package after updates
-        to the build procedures.</para>
-      </listitem>
-
-      <listitem>
-        <para>Bash</para>
-
-        <para>This package satisfies an LSB core requirement to provide
-        a Bourne Shell interface to the system.  It was chosen over
-        other shell packages because of its common usage and extensive
-        capabilities beyond basic shell functions. </para>
-      </listitem>
-
-      <listitem>
-        <para>Binutils</para>
-
-        <para>This package package contains a linker, an assembler, and other 
-        tools for handling object files.  It contains programs required by
-        LSB core. 
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Bison</para>
-
-        <para>This package contains the GNU version of yacc (Yet Another
-        Compiler Compiler) needed to build several other LFS  programs.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Bzip2</para>
-
-        <para>This package contains programs for compressing and decompressing 
-        files.  It is required to decompress many LFS packages.</para>
-      </listitem>
-
-      <listitem>
-        <para>Coreutils</para>
-
-        <para>This package contains a number of essential programs for viewing 
-        and manipulating files and directories.  It also contains programs 
-        required by LSB core.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>DejaGNU</para>
-
-        <para>This package contains a framework for testing other programs.
-        It is only installed in the temporary toolchain.</para>
-      </listitem>
-
-      <listitem>
-        <para>Diffutils</para>
-
-        <para>This package contains programs that show the differences 
-        between files or directories.  It contains programs required by
-        LSB core.</para>
-      </listitem>
-
-      <listitem>
-        <para>Expect</para>
-
-        <para>This package contains a program for carrying out scripted 
-        dialogues with other interactive programs.  It is commonly used
-        for testing other packages.  It is only installed in the temporary 
-        toolchain.</para>
-      </listitem>
-
-      <listitem>
-        <para>E2fsprogs</para>
-
-        <para>This package contains the utilities for handling the ext2, ext3
-        and ext4 file systems.  These are the most common and thouroughly
-        tested file systems that Linux supports.</para>
-      </listitem>
-
-      <listitem>
-        <para>File</para>
-
-        <para>This package contains a utility for determining the type of a 
-        given file or files.  It is required by LSB core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Findutils</para>
-
-        <para>This package contains programs to find files in a file system.
-        They are required by LSB core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Flex</para>
-
-        <para>This package contains a utility for generating programs that 
-        recognize patterns in text.  It is the GNU version of the lex 
-        (lexical analyzer) program.  It is required to build several 
-        LFS packages. </para>
-      </listitem>
-
-      <listitem>
-        <para>Gawk</para>
-
-        <para>This package contains programs for manipulating text files.
-        It is the GNU version of awk (Aho-Weinberg-Kernighan) that
-        is required by LSB core.</para>
-      </listitem>
-
-      <listitem>
-        <para>Gcc</para>
-
-        <para>This package is the Gnu Compiler Collection.  It contains the 
-        C and C++ compilers as well as several others not built by LFS.  It
-        also contains the standard C++ libraries required by the LSB
-        C++ standard.</para>
-      </listitem>
-
-      <listitem>
-        <para>GDBM</para>
-
-        <para>This package contains the GNU Database Manager library.  It
-        is used by one other LFS packages.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Gettext</para>
-
-        <para>This package contains utilities and libraries for 
-        internationalization and localization of numerous packages.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Glibc</para>
-
-        <para>This package contains the main C library.  Linux programs would
-        not run without it. </para>
-      </listitem>
-
-      <listitem>
-        <para>GMP</para>
-
-        <para>This package package contains math libraries and have
-        useful functions for arbitrary precision arithmetic.  It
-        is required to build Gcc. </para>
-      </listitem>
-
-      <listitem>
-        <para>Grep</para>
-
-        <para>This package contains programs for searching through files.
-        It is required by LSB core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Groff</para>
-
-        <para>This package contains programs for processing and formatting text.
-        One important function of these programs is to format man pages.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>GRUB</para>
-
-        <para>This package is the Grand Unified Boot Loader.  It is one 
-        of several boot loaders available, but is the most flexible.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Gzip</para>
-
-        <para>This package contains programs for compressing and 
-        decompressing files.  It is required by LSB core.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Iana-etc</para>
-
-        <para>This package provides data for network services and protocols.
-        It is needed to enable proper networking capabilities.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Inetutils</para>
-
-        <para>This package contains programs for basic network 
-        administration.  
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>IProute2</para>
-
-        <para>This package contains programs for basic and advanced IPv4 and
-        IPv6 networking.  It was chosen over the other common network
-        tools package (net-tools) for its IPv6 capabilities.  </para>
-      </listitem>
-
-      <listitem>
-        <para>Kbd</para>
-
-        <para>This package contains key-table files and keyboard utilities
-        for non-US keyboards. </para>
-      </listitem>
-
-      <listitem>
-        <para>Less</para>
-
-        <para>This package contains a very nice text file viewer that
-        allows scolling up or down when viewing a file.   
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Libtool</para>
-
-        <para>This package contains the GNU generic library support 
-        script. It wraps the complexity of using shared libraries in a 
-        consistent, portable interface.  It is needed by the test
-        suites in other LFS packages.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Linux Kernel</para>
-
-        <para>This package is the Operating System.  It is the Linux in
-        the GNU/Linux environment.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>M4</para>
-
-        <para>This package contains a general text macro processor. It is 
-        required by LSB core.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Make</para>
-
-        <para>This package contains a program for directing the building
-        of packages.  It is required by almost every package in LFS.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Man-DB</para>
-
-        <para>This package contains programs for finding and viewing man pages.
-        It was chosen instead of the <application>man</application> package
-        due to superior internationalization capabilities.  It supplies
-        the man program required by LSB core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Man-pages</para>
-
-        <para>This package contains the actual contents of the basic
-        Linux man pages. </para>
-      </listitem>
-
-      <listitem>
-        <para>Module-Init-Tools</para>
-
-        <para>This package contains programs needed to administer Linux
-        kernel modules.  </para>
-      </listitem>
-
-      <listitem>
-        <para>MPFR</para>
-
-        <para>This package contains functions for multiple precision 
-        arithmetic.  It is required by Gcc.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Ncurses</para>
-
-        <para>This package contains libraries for terminal-independent 
-        handling of character screens.  It is often used to provide 
-        cursor control for a menuing system.  It provides libraries required
-        by LSB core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Patch</para>
-
-        <para>This package a program for modifying or creating files by 
-        applying a <emphasis>patch</emphasis> file typically created 
-        by the <application>diff</application> program.  It is needed by
-        the build procedure for several LFS packages. </para>
-      </listitem>
-
-      <listitem>
-        <para>Perl</para>
-
-        <para>This package is an interpreter for the runtime language
-        PERL.  It is required by the LSB Runtime Languages standard.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Pkg-config</para>
-
-        <para>This package contains a tool for passing the include path 
-        and/or library paths to build tools during the configure and make 
-        processes.  It is needed by many LFS packages. </para>
-      </listitem>
-
-      <listitem>
-        <para>Procps</para>
-
-        <para>This package contains programs for monitoring processes.
-        It contains programs required by LSB core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Psmisc</para>
-
-        <para>This package contains programs for displaying information 
-        about running processes.  It contains programs required by LSB 
-        core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Readline</para>
-
-        <para>This package is a set of libraries that offers command-line 
-        editing and history capabilities.  It is used by Bash. </para>
-      </listitem>
-
-      <listitem>
-        <para>Sed</para>
-
-        <para>This package allows editing of text without opening it in a 
-        text editor. It is also needed by most LFS packages' configure 
-        scripts. It is required by LSB core.</para>
-      </listitem>
-
-      <listitem>
-        <para>Shadow</para>
-
-        <para>This package contains programs for handling passwords 
-        in a secure way.  It provides programs required by LSB core.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Sysklogd</para>
-
-        <para>This package contains programs for logging system messages, 
-        such as those given by the kernel or daemon processes when unusual 
-        events occur.  
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Sysvinit</para>
-
-        <para>This package provides the <application>init</application>
-        program which it the parent of all other processes on the Linux
-        system. </para>
-      </listitem>
-
-      <listitem>
-        <para>Tar</para>
-
-        <para>This package provides archiving and extraction capabilities
-        of virtually all packages used in LFS.  It is required by
-        LSB core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Tcl</para>
-
-        <para>This package contains the Tool Command Language used
-        in many testsuites in LFS packages.  It is only installed in 
-        the temporary toolchain. </para>
-      </listitem>
-
-      <listitem>
-        <para>Texinfo</para>
-
-        <para>This package contains programs for reading, writing, and 
-        converting info pages.  It is used in the installation 
-        procedures of many LFS packages. </para>
-      </listitem>
-
-      <listitem>
-        <para>Udev</para>
-
-        <para>This package contains programs for dynamic creation of 
-        device nodes.  It is an alternative to creating thousands of
-        static devices in the /dev directory.  
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Util-linux-ng</para>
-
-        <para>This package contains miscellaneous utility programs. 
-        Among them are utilities for handling file systems, consoles, 
-        partitions, and messages.  It contains programs required by
-        LSB core. </para>
-      </listitem>
-
-      <listitem>
-        <para>Vim</para>
-
-        <para>This package an editor.  It was chosen because its compatibility
-        with the classic vi editor and its huge number of powerful
-        capabilities.  An editor is a very personal choice for
-        many users and any other editor could be substituted if desired.
-        </para>
-      </listitem>
-
-      <listitem>
-        <para>Zlib</para>
-
-        <para>This package contains compression and decompression routines 
-        used by some programs.  It is required by LSB core.
-        </para>
-      </listitem>
-
-    </itemizedlist>
-
-  </sect2>
+    <variablelist>
+      <bridgehead renderas="sect3">Packages supplied by LFS needed to
+          satisfy LSB Requirements</bridgehead>
+      <?dbfo list-presentation="list"?>
+      <?dbhtml list-presentation="table"?>
+
+      <varlistentry>
+        <term><emphasis>LSB Core:</emphasis></term>
+        <listitem>
+          <para>Bash, Binutils, Coreutils, Diffutils, File, Findutils, Gawk,
+                Grep, Gzip, M4, Man-DB, Ncurses, Procps, Psmisc, Sed,
+                Shadow, Tar, Util-linux-ng, Zlib</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB C++:</emphasis></term>
+        <listitem>
+          <para>Gcc</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Desktop</emphasis></term>
+        <listitem>
+          <para>None</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Runtime Languages</emphasis></term>
+        <listitem>
+          <para>Perl</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Printing</emphasis></term>
+        <listitem>
+          <para>None</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Multimeda:</emphasis></term>
+        <listitem>
+          <para>None</para>
+        </listitem>
+      </varlistentry>
+
+    </variablelist>
+
+    <variablelist> 
+      <bridgehead renderas="sect3">Packages supplied by BLFS needed to
+          satisfy LSB Requirements</bridgehead>
+      <?dbfo list-presentation="list"?>
+      <?dbhtml list-presentation="table"?> 
+
+      <varlistentry>
+        <term><emphasis>LSB Core:</emphasis></term>
+        <listitem>
+          <para>Bc, Cpio, Ed, Fcrontab, PAM, Sendmail (or Postfix or Exim)
+          </para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB C++:</emphasis></term>
+        <listitem>
+          <para>None</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Desktop</emphasis></term>
+        <listitem>
+          <para>ATK, Cairo, Desktop-file-utils, Freetype, Fontconfig,
+                Glib2, GTK+2, Icon-naming-utils, Libjpeg, Libpng, Libxml2,
+                MesaLib, Pango, Qt3, Qt4, Xorg</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Runtime Languages</emphasis></term>
+        <listitem>
+          <para>Python</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Printing</emphasis></term>
+        <listitem>
+          <para>CUPS</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Multimeda:</emphasis></term>
+        <listitem>
+          <para>Alsa Libraries, NSPR, NSS, OpenSSL, Java</para>
+        </listitem>
+      </varlistentry>
+
+    </variablelist>
+
+    <variablelist> 
+      <bridgehead renderas="sect3">Packages not supplied by LFS or BLFS 
+      needed to satisfy LSB Requirements</bridgehead>
+      <?dbfo list-presentation="list"?>
+      <?dbhtml list-presentation="table"?> 
+
+      <varlistentry>
+        <term><emphasis>LSB Core:</emphasis></term>
+        <listitem>
+          <para>At, Batch, Install_initd, Lsb_release, Remove_initd, Test
+          </para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB C++:</emphasis></term>
+        <listitem>
+          <para>None</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Desktop</emphasis></term>
+        <listitem>
+          <para>None</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Runtime Languages</emphasis></term>
+        <listitem>
+          <para>None</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Printing</emphasis></term>
+        <listitem>
+          <para>None</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><emphasis>LSB Multimeda:</emphasis></term>
+        <listitem>
+          <para>Xdg-utils</para>
+        </listitem>
+      </varlistentry>
+
+    </variablelist>
 
 </sect1>
 

+ 457 - 0
prologue/why.xml

@@ -0,0 +1,457 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!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="pre-why">
+  <?dbhtml filename="package-choices.html"?>
+
+  <title>Rationale for Packages in the Book</title>
+
+    <para>As stated earlier, the goal of LFS is to build a complete and usable 
+    foundation-level system.  This includes all packages needed to replicate 
+    itself while providing a relativly minimal base from which to customize
+    a more complete system based on the choices of the user.  This does not
+    mean that LFS is the smallest system possible.  Several important packages
+    are included that are not strictly required.  The lists below document the
+    rationale for each package in the book.</para>
+
+    <itemizedlist>
+
+      <listitem>
+        <para>Autoconf</para>
+
+        <para>This package contains programs for producing shell scripts that
+        can automatically configure source code from a developer's
+        template. It is often needed to rebuild a package after updates
+        to the build procedures.</para>
+      </listitem>
+
+      <listitem>
+        <para>Automake</para>
+
+        <para>This package contains programs for generating Make files from
+        a template. It is often needed to rebuild a package after updates
+        to the build procedures.</para>
+      </listitem>
+
+      <listitem>
+        <para>Bash</para>
+
+        <para>This package satisfies an LSB core requirement to provide
+        a Bourne Shell interface to the system.  It was chosen over
+        other shell packages because of its common usage and extensive
+        capabilities beyond basic shell functions. </para>
+      </listitem>
+
+      <listitem>
+        <para>Binutils</para>
+
+        <para>This package package contains a linker, an assembler, and other 
+        tools for handling object files.  </para>
+      </listitem>
+
+      <listitem>
+        <para>Bison</para>
+
+        <para>This package contains the GNU version of yacc (Yet Another
+        Compiler Compiler) needed to build several other LFS  programs.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Bzip2</para>
+
+        <para>This package contains programs for compressing and decompressing 
+        files.  It is required to decompress many LFS packages.</para>
+      </listitem>
+
+      <listitem>
+        <para>Coreutils</para>
+
+        <para>This package contains a number of essential programs for viewing 
+        and manipulating files and directories. </para>
+      </listitem>
+
+      <listitem>
+        <para>DejaGNU</para>
+
+        <para>This package contains a framework for testing other programs.
+        It is only installed in the temporary toolchain.</para>
+      </listitem>
+
+      <listitem>
+        <para>Diffutils</para>
+
+        <para>This package contains programs that show the differences 
+        between files or directories. </para>
+      </listitem>
+
+      <listitem>
+        <para>Expect</para>
+
+        <para>This package contains a program for carrying out scripted 
+        dialogues with other interactive programs.  It is commonly used
+        for testing other packages.  It is only installed in the temporary 
+        toolchain.</para>
+      </listitem>
+
+      <listitem>
+        <para>E2fsprogs</para>
+
+        <para>This package contains the utilities for handling the ext2, ext3
+        and ext4 file systems.  These are the most common and thouroughly
+        tested file systems that Linux supports.</para>
+      </listitem>
+
+      <listitem>
+        <para>File</para>
+
+        <para>This package contains a utility for determining the type of a 
+        given file or files.</para>
+      </listitem>
+
+      <listitem>
+        <para>Findutils</para>
+
+        <para>This package contains programs to find files in a file system.</para>
+      </listitem>
+
+      <listitem>
+        <para>Flex</para>
+
+        <para>This package contains a utility for generating programs that 
+        recognize patterns in text.  It is the GNU version of the lex 
+        (lexical analyzer) program.  It is required to build several 
+        LFS packages. </para>
+      </listitem>
+
+      <listitem>
+        <para>Gawk</para>
+
+        <para>This package contains programs for manipulating text files.
+        It is the GNU version of awk (Aho-Weinberg-Kernighan). </para>
+      </listitem>
+
+      <listitem>
+        <para>Gcc</para>
+
+        <para>This package is the Gnu Compiler Collection.  It contains the 
+        C and C++ compilers as well as several others not built by LFS.  
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>GDBM</para>
+
+        <para>This package contains the GNU Database Manager library.  It
+        is used by one other LFS package, Man-DB.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Gettext</para>
+
+        <para>This package contains utilities and libraries for 
+        internationalization and localization of numerous packages.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Glibc</para>
+
+        <para>This package contains the main C library.  Linux programs would
+        not run without it. </para>
+      </listitem>
+
+      <listitem>
+        <para>GMP</para>
+
+        <para>This package package contains math libraries and have
+        useful functions for arbitrary precision arithmetic.  It
+        is required to build Gcc. </para>
+      </listitem>
+
+      <listitem>
+        <para>Grep</para>
+
+        <para>This package contains programs for searching through files.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Groff</para>
+
+        <para>This package contains programs for processing and formatting text.
+        One important function of these programs is to format man pages.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>GRUB</para>
+
+        <para>This package is the Grand Unified Boot Loader.  It is one 
+        of several boot loaders available, but is the most flexible.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Gzip</para>
+
+        <para>This package contains programs for compressing and 
+        decompressing files. </para>
+      </listitem>
+
+      <listitem>
+        <para>Iana-etc</para>
+
+        <para>This package provides data for network services and protocols.
+        It is needed to enable proper networking capabilities.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Inetutils</para>
+
+        <para>This package contains programs for basic network 
+        administration.  
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>IProute2</para>
+
+        <para>This package contains programs for basic and advanced IPv4 and
+        IPv6 networking.  It was chosen over the other common network
+        tools package (net-tools) for its IPv6 capabilities.  </para>
+      </listitem>
+
+      <listitem>
+        <para>Kbd</para>
+
+        <para>This package contains key-table files and keyboard utilities
+        for non-US keyboards. </para>
+      </listitem>
+
+      <listitem>
+        <para>Less</para>
+
+        <para>This package contains a very nice text file viewer that
+        allows scolling up or down when viewing a file.   
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Libtool</para>
+
+        <para>This package contains the GNU generic library support 
+        script. It wraps the complexity of using shared libraries in a 
+        consistent, portable interface.  It is needed by the test
+        suites in other LFS packages.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Linux Kernel</para>
+
+        <para>This package is the Operating System.  It is the Linux in
+        the GNU/Linux environment.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>M4</para>
+
+        <para>This package contains a general text macro processor useful
+        as a build tool for other programs. 
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Make</para>
+
+        <para>This package contains a program for directing the building
+        of packages.  It is required by almost every package in LFS.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Man-DB</para>
+
+        <para>This package contains programs for finding and viewing man pages.
+        It was chosen instead of the <application>man</application> package
+        due to superior internationalization capabilities.  It supplies
+        the man program. </para>
+      </listitem>
+
+      <listitem>
+        <para>Man-pages</para>
+
+        <para>This package contains the actual contents of the basic
+        Linux man pages. </para>
+      </listitem>
+
+      <listitem>
+        <para>Module-Init-Tools</para>
+
+        <para>This package contains programs needed to administer Linux
+        kernel modules.</para>
+      </listitem>
+
+      <listitem>
+        <para>MPFR</para>
+
+        <para>This package contains functions for multiple precision 
+        arithmetic.  It is required by Gcc.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Ncurses</para>
+
+        <para>This package contains libraries for terminal-independent 
+        handling of character screens.  It is often used to provide 
+        cursor control for a menuing system.  </para>
+      </listitem>
+
+      <listitem>
+        <para>Patch</para>
+
+        <para>This package a program for modifying or creating files by 
+        applying a <emphasis>patch</emphasis> file typically created 
+        by the <application>diff</application> program.  It is needed by
+        the build procedure for several LFS packages. </para>
+      </listitem>
+
+      <listitem>
+        <para>Perl</para>
+
+        <para>This package is an interpreter for the runtime language
+        PERL.  </para>
+      </listitem>
+
+      <listitem>
+        <para>Pkg-config</para>
+
+        <para>This package contains a tool for passing the include path 
+        and/or library paths to build tools during the configure and make 
+        processes.  It is needed by many LFS packages. </para>
+      </listitem>
+
+      <listitem>
+        <para>Procps</para>
+
+        <para>This package contains programs for monitoring processes.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Psmisc</para>
+
+        <para>This package contains programs for displaying information 
+        about running processes. </para>
+      </listitem>
+
+      <listitem>
+        <para>Readline</para>
+
+        <para>This package is a set of libraries that offers command-line 
+        editing and history capabilities.  It is used by Bash. </para>
+      </listitem>
+
+      <listitem>
+        <para>Sed</para>
+
+        <para>This package allows editing of text without opening it in a 
+        text editor. It is also needed by most LFS packages' configure 
+        scripts. </para>
+      </listitem>
+
+      <listitem>
+        <para>Shadow</para>
+
+        <para>This package contains programs for handling passwords 
+        in a secure way.</para>
+      </listitem>
+
+      <listitem>
+        <para>Sysklogd</para>
+
+        <para>This package contains programs for logging system messages, 
+        such as those given by the kernel or daemon processes when unusual 
+        events occur.  
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Sysvinit</para>
+
+        <para>This package provides the <application>init</application>
+        program which it the parent of all other processes on the Linux
+        system. </para>
+      </listitem>
+
+      <listitem>
+        <para>Tar</para>
+
+        <para>This package provides archiving and extraction capabilities
+        of virtually all packages used in LFS.  </para>
+      </listitem>
+
+      <listitem>
+        <para>Tcl</para>
+
+        <para>This package contains the Tool Command Language used
+        in many testsuites in LFS packages.  It is only installed in 
+        the temporary toolchain. </para>
+      </listitem>
+
+      <listitem>
+        <para>Texinfo</para>
+
+        <para>This package contains programs for reading, writing, and 
+        converting info pages.  It is used in the installation 
+        procedures of many LFS packages. </para>
+      </listitem>
+
+      <listitem>
+        <para>Udev</para>
+
+        <para>This package contains programs for dynamic creation of 
+        device nodes.  It is an alternative to creating thousands of
+        static devices in the /dev directory.  
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Util-linux-ng</para>
+
+        <para>This package contains miscellaneous utility programs. 
+        Among them are utilities for handling file systems, consoles, 
+        partitions, and messages. </para>
+      </listitem>
+
+      <listitem>
+        <para>Vim</para>
+
+        <para>This package an editor.  It was chosen because its compatibility
+        with the classic vi editor and its huge number of powerful
+        capabilities.  An editor is a very personal choice for
+        many users and any other editor could be substituted if desired.
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>Zlib</para>
+
+        <para>This package contains compression and decompression routines 
+        used by some programs. 
+        </para>
+      </listitem>
+
+    </itemizedlist>
+
+</sect1>
+