Changes in / [648f145:328eb6f]
- Files:
-
- 1 deleted
- 68 edited
Legend:
- Unmodified
- Added
- Removed
-
Makefile
r648f145 r328eb6f 1 1 # vim:ts=3 2 #BASEDIR = ~/lfs-book3 #SYSDDIR = ~/lfs-systemd4 #DUMPDIR = ~/lfs-commands5 2 RENDERTMP = $(HOME)/tmp 6 3 CHUNK_QUIET = 1 … … 25 22 26 23 ifeq ($(REV), sysv) 27 BASEDIR ?= ~/public_html/lfs-book24 BASEDIR ?= $(HOME)/public_html/lfs-book 28 25 PDF_OUTPUT ?= LFS-BOOK.pdf 29 26 NOCHUNKS_OUTPUT ?= LFS-BOOK.html 30 DUMPDIR ?= ~/lfs-commands27 DUMPDIR ?= $(HOME)/lfs-commands 31 28 else 32 BASEDIR ?= ~/public_html/lfs-systemd29 BASEDIR ?= $(HOME)/public_html/lfs-systemd 33 30 PDF_OUTPUT ?= LFS-SYSD-BOOK.pdf 34 31 NOCHUNKS_OUTPUT ?= LFS-SYSD-BOOK.html 35 DUMPDIR ?= ~/lfs-sysd-commands32 DUMPDIR ?= $(HOME)/lfs-sysd-commands 36 33 endif 37 34 … … 48 45 $(Q)mkdir -p $(BASEDIR)/stylesheets 49 46 $(Q)cp stylesheets/lfs-xsl/*.css $(BASEDIR)/stylesheets 50 $(Q)sed -i 's|../stylesheet|stylesheet|' $(BASEDIR)/index.html 47 $(Q)sed -e 's|../stylesheet|stylesheet|' \ 48 -i $(BASEDIR)/index.html 51 49 52 50 $(Q)mkdir -p $(BASEDIR)/images … … 56 54 $(Q)for filename in `find $(BASEDIR) -name "*.html"`; do \ 57 55 tidy -config tidy.conf $$filename; \ 58 true; \59 56 /bin/bash obfuscate.sh $$filename; \ 60 sed -e "s @text/html@application/xhtml+xml@g" \57 sed -e "s|text/html|application/xhtml+xml|g" \ 61 58 -i $$filename; \ 62 done;59 done 63 60 64 61 $(Q)$(MAKE) --no-print-directory wget-list md5sums … … 99 96 stylesheets/lfs-nochunks.xsl \ 100 97 $(RENDERTMP)/lfs-html.xml 101 # $(RENDERTMP)/lfs-html2.xml102 98 103 99 @echo "Running Tidy..." 104 $(Q)tidy -config tidy.conf $(BASEDIR)/$(NOCHUNKS_OUTPUT) || t rue100 $(Q)tidy -config tidy.conf $(BASEDIR)/$(NOCHUNKS_OUTPUT) || test $$? -le 1 105 101 106 102 @echo "Running obfuscate.sh..." 107 $(Q)bash obfuscate.sh $(BASEDIR)/$(NOCHUNKS_OUTPUT) 108 $(Q)sed -i -e "s@text/html@application/xhtml+xml@g" $(BASEDIR)/$(NOCHUNKS_OUTPUT) 109 $(Q)sed -i -e "s@../wget-list@wget-list@" $(BASEDIR)/$(NOCHUNKS_OUTPUT) 110 $(Q)sed -i -e "s@../md5sums@md5sums@" $(BASEDIR)/$(NOCHUNKS_OUTPUT) 103 $(Q)bash obfuscate.sh $(BASEDIR)/$(NOCHUNKS_OUTPUT) 104 $(Q)sed -e "s|text/html|application/xhtml+xml|g" \ 105 -e "s|../wget-list|wget-list|" \ 106 -e "s|../md5sums|md5sums|" \ 107 -i $(BASEDIR)/$(NOCHUNKS_OUTPUT) 111 108 112 109 @echo "Output at $(BASEDIR)/$(NOCHUNKS_OUTPUT)" … … 127 124 $(Q)xsltproc --nonet \ 128 125 --xinclude \ 126 --stringparam profile.revision $(REV) \ 129 127 --output $(RENDERTMP)/lfs-html2.xml \ 130 --stringparam profile.revision $(REV) \131 128 stylesheets/lfs-xsl/profile.xsl \ 132 129 index.xml 133 130 134 131 @echo "Validating the book..." 135 $(Q)xmllint --nonet \136 -- noent\137 --postvalid \138 - o$(RENDERTMP)/lfs-full.xml \132 $(Q)xmllint --nonet \ 133 --encode UTF-8 \ 134 --postvalid \ 135 --output $(RENDERTMP)/lfs-full.xml \ 139 136 $(RENDERTMP)/lfs-html2.xml 140 137 … … 158 155 @echo "Generating consolidated wget list at $(BASEDIR)/wget-list ..." 159 156 $(Q)mkdir -p $(BASEDIR) 160 $(Q)xsltproc --xinclude --nonet \ 157 $(Q)xsltproc --nonet \ 158 --xinclude \ 161 159 --output $(BASEDIR)/wget-list \ 162 160 stylesheets/wget-list.xsl \ … … 164 162 165 163 $(BASEDIR)/wget-list-$(REV): stylesheets/wget-list.xsl $(DOWNLOADS_DEP) 166 $(Q)xsltproc --nonet --xinclude \ 164 $(Q)xsltproc --nonet \ 165 --xinclude \ 167 166 --stringparam profile.revision $(REV) \ 168 167 --output $(RENDERTMP)/wget-list.xml \ 169 168 stylesheets/lfs-xsl/profile.xsl \ 170 169 chapter03/chapter03.xml 171 $(Q)xsltproc --xinclude --nonet \ 170 171 $(Q)xsltproc --nonet \ 172 172 --output $(BASEDIR)/wget-list-$(REV) \ 173 173 stylesheets/wget-list.xsl \ … … 179 179 $(Q)mkdir -p $(BASEDIR) 180 180 181 $(Q)xsltproc --nonet --xinclude \ 181 $(Q)xsltproc --nonet \ 182 --xinclude \ 182 183 --stringparam profile.revision $(REV) \ 183 184 --output $(RENDERTMP)/md5sum.xml \ … … 185 186 chapter03/chapter03.xml 186 187 187 $(Q)xsltproc -- xinclude --nonet\188 $(Q)xsltproc --nonet \ 188 189 --output $(BASEDIR)/md5sums \ 189 190 stylesheets/md5sum.xsl \ -
appendices/dependencies.xml
r648f145 r328eb6f 1048 1048 <segtitle>&external;</segtitle> 1049 1049 <seglistitem> 1050 <seg>None</seg> 1050 <seg> 1051 <ulink url='&blfs-book;general/libunistring.html'> 1052 libunistring 1053 </ulink> 1054 and 1055 <ulink url='&blfs-book;general/libxml2.html'> 1056 libxml2 1057 </ulink> 1058 </seg> 1051 1059 </seglistitem> 1052 1060 </segmentedlist> … … 1567 1575 <segtitle>&external;</segtitle> 1568 1576 <seglistitem> 1569 <seg>None</seg> 1577 <seg> 1578 <ulink url="&blfs-book;postlfs/linux-pam.html">Linux-PAM</ulink> 1579 </seg> 1570 1580 </seglistitem> 1571 1581 </segmentedlist> … … 2471 2481 <segtitle>&testsuites;</segtitle> 2472 2482 <seglistitem> 2473 <seg>Iana-Etc, Less .and Procps-ng</seg>2483 <seg>Iana-Etc, Less, and Procps-ng</seg> 2474 2484 </seglistitem> 2475 2485 </segmentedlist> -
chapter01/changelog.xml
r648f145 r328eb6f 42 42 43 43 <listitem> 44 <para>2024-02-14</para> 45 <itemizedlist> 46 <listitem> 47 <para>[bdubbs] - Update to meson-1.3.2. Fixes 48 <ulink url='&lfs-ticket-root;5442'>#5442</ulink>.</para> 49 </listitem> 50 </itemizedlist> 51 </listitem> 52 53 <listitem> 54 <para>2024-02-12</para> 55 <itemizedlist> 56 <listitem> 57 <para>[bdubbs] - Update to shadow-4.14.5. Fixes 58 <ulink url='&lfs-ticket-root;5437'>#5437</ulink>.</para> 59 </listitem> 60 <listitem> 61 <para>[bdubbs] - Update to setuptools-69.1.0 (Python module). Fixes 62 <ulink url='&lfs-ticket-root;5439'>#5439</ulink>.</para> 63 </listitem> 64 <listitem> 65 <para>[bdubbs] - Update to python-3.12.2. Fixes 66 <ulink url='&lfs-ticket-root;5434'>#5434</ulink>.</para> 67 </listitem> 68 <listitem> 69 <para>[bdubbs] - Update to pkgconf-2.1.1. Fixes 70 <ulink url='&lfs-ticket-root;5432'>#5432</ulink>.</para> 71 </listitem> 72 <listitem> 73 <para>[bdubbs] - Update to MarkupSafe-2.1.5 (Python module). Fixes 74 <ulink url='&lfs-ticket-root;5431'>#5431</ulink>.</para> 75 </listitem> 76 <listitem> 77 <para>[bdubbs] - Update to man-pages-6.06. Fixes 78 <ulink url='&lfs-ticket-root;5438'>#5438</ulink>.</para> 79 </listitem> 80 <listitem> 81 <para>[bdubbs] - Update to expat-2.6.0. Fixes 82 <ulink url='&lfs-ticket-root;5435'>#5435</ulink>.</para> 83 </listitem> 84 <listitem> 85 <para>[bdubbs] - Update to linux-6.7.4. Fixes 86 <ulink url='&lfs-ticket-root;5433'>#5433</ulink>.</para> 87 </listitem> 88 </itemizedlist> 89 </listitem> 90 91 <listitem revision='systemd'> 92 <para>2024-02-10</para> 93 <itemizedlist> 94 <listitem> 95 <para>[xry111] - Fix a bug in systemd breaking running 96 systemd-analyze on an instantiated systemd unit.</para> 97 </listitem> 98 </itemizedlist> 99 </listitem> 100 101 <listitem> 102 <para>2024-02-02</para> 103 <itemizedlist> 104 <listitem> 105 <para>[xry111] - Update to tzdata-2024a. Fixes 106 <ulink url='&lfs-ticket-root;5428'>#5428</ulink>.</para> 107 </listitem> 108 <listitem> 109 <para>[xry111] - Update to glibc-2.39 (security fix). Fixes 110 <ulink url='&lfs-ticket-root;5426'>#5426</ulink>.</para> 111 </listitem> 112 <listitem> 113 <para>[xry111] - Update to linux-6.7.3. Fixes 114 <ulink url='&lfs-ticket-root;5427'>#5427</ulink>.</para> 115 </listitem> 116 </itemizedlist> 117 </listitem> 118 119 <listitem> 120 <para>2024-02-01</para> 121 <itemizedlist> 122 <listitem> 123 <para>[bdubbs] - Update to openssl-3.2.1 (security fix). Fixes 124 <ulink url='&lfs-ticket-root;5425'>#5425</ulink>.</para> 125 </listitem> 126 <listitem> 127 <para>[bdubbs] - Update to zlib-1.3.1. Fixes 128 <ulink url='&lfs-ticket-root;5419'>#5419</ulink>.</para> 129 </listitem> 130 <listitem> 131 <para>[bdubbs] - Update to xz-5.4.6. Fixes 132 <ulink url='&lfs-ticket-root;5423'>#5423</ulink>.</para> 133 </listitem> 134 <listitem> 135 <para>[bdubbs] - Update to linux-6.7.2. Fixes 136 <ulink url='&lfs-ticket-root;5422'>#5422</ulink>.</para> 137 </listitem> 138 <listitem> 139 <para>[bdubbs] - Update to iana-etc-20240125. Addresses 140 <ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para> 141 </listitem> 142 <listitem> 143 <para>[bdubbs] - Update to binutils-2.42. Fixes 144 <ulink url='&lfs-ticket-root;5424'>#5424</ulink>.</para> 145 </listitem> 146 <listitem> 147 <para>[bdubbs] - Update to acl-2.3.2. Fixes 148 <ulink url='&lfs-ticket-root;5421'>#5421</ulink>.</para> 149 </listitem> 150 <listitem> 151 <para>[bdubbs] - Update upstream fixes for readline-8.2. Fixes 152 <ulink url='&lfs-ticket-root;5420'>#5420</ulink>.</para> 153 </listitem> 154 <listitem> 155 <para>[bdubbs] - Apply upstream fix for bash-5.2.21. Fixes 156 <ulink url='&lfs-ticket-root;5420'>#5420</ulink>.</para> 157 </listitem> 158 </itemizedlist> 159 </listitem> 160 161 <listitem> 44 162 <para>2024-01-21</para> 45 163 <itemizedlist> … … 580 698 </listitem> 581 699 <listitem> 582 <para>[bdubbs] - Update to procps-ng-4.0.4. Fixes 700 <para>[bdubbs] - Update to procps-ng-4.0.4 (security fix 701 for 32-bit systems). Fixes 583 702 <ulink url='&lfs-ticket-root;5335'>#5335</ulink>.</para> 584 703 </listitem> -
chapter01/whatsnew.xml
r648f145 r328eb6f 27 27 <para>None</para> 28 28 </listitem>--> 29 < !--<listitem>29 <listitem> 30 30 <para>Acl-&acl-version;</para> 31 </listitem> -->31 </listitem> 32 32 <listitem> 33 33 <para>Attr-&attr-version;</para> … … 45 45 <para>Bc-&bc-version;</para> 46 46 </listitem> 47 < !--<listitem>47 <listitem> 48 48 <para>Binutils-&binutils-version;</para> 49 </listitem> -->49 </listitem> 50 50 <!--<listitem> 51 51 <para>Bison-&bison-version;</para> … … 72 72 <para>E2fsprogs-&e2fsprogs-version;</para> 73 73 </listitem>--> 74 < !--<listitem>74 <listitem> 75 75 <para>Expat-&expat-version;</para> 76 </listitem> -->76 </listitem> 77 77 <!--<listitem> 78 78 <para>Expect-&expect-version;</para> … … 102 102 <para>Gettext-&gettext-version;</para> 103 103 </listitem> 104 < !--<listitem>104 <listitem> 105 105 <para>Glibc-&glibc-version;</para> 106 </listitem> -->106 </listitem> 107 107 <!--<listitem> 108 108 <para>GMP-&gmp-version;</para> … … 177 177 <para>Man-DB-&man-db-version;</para> 178 178 </listitem> 179 < !--<listitem>179 <listitem> 180 180 <para>Man-pages-&man-pages-version;</para> 181 </listitem> -->181 </listitem> 182 182 <listitem> 183 183 <para>MarkupSafe-&markupsafe-version;</para> … … 225 225 <para>Sed-&sed-version;</para> 226 226 </listitem>--> 227 < !--<listitem> After version 12.1 release - see Added227 <listitem> <!-- After version 12.1 release - see Added --> 228 228 <para>Setuptools-&setuptools-version;</para> 229 </listitem> -->229 </listitem> 230 230 <listitem> 231 231 <para>Shadow-&shadow-version;</para> … … 292 292 293 293 <listitem> 294 <para>&bash-upstream-fixes-patch;</para> 295 </listitem> 296 297 <listitem> 298 <para>&readline-fixes-patch;</para> 299 </listitem> 300 301 <listitem> 294 302 <para>setuptools-&setuptools-version;</para> 295 303 </listitem> 296 304 297 305 <listitem> 298 <para>&glibc-upstream-fixes-patch;</para> 299 </listitem> 300 301 <listitem> 302 <para>&pkgconf-upstream-fix-patch;</para> 303 </listitem> 304 305 <listitem> 306 <para>&readline-fixes-patch;</para> 306 <para>&systemd-upstream-patch;</para> 307 307 </listitem> 308 308 -
chapter02/creatingpartition.xml
r648f145 r328eb6f 41 41 disk drive. Create a Linux native partition and a 42 42 <systemitem class="filesystem">swap</systemitem> partition, if needed. Please 43 refer to <filename>cfdisk(8)</filename> or <filename>fdisk(8)</filename> if 43 refer to <ulink role='man' url='&man;cfdisk.8'>cfdisk(8)</ulink> or 44 <ulink role='man' url='&man;fdisk.8'>fdisk(8)</ulink> if 44 45 you do not yet know how to use the programs.</para> 45 46 -
chapter02/hostreqs.xml
r648f145 r328eb6f 30 30 modern Linux distributions. Also note that many distributions will 31 31 place software headers into separate packages, often in the form of 32 <quote><package-name>-devel</quote> or 33 <quote><package-name>-dev</quote>. Be sure to install those if 34 your distribution provides them.</para> 32 <literal><replaceable><package-name></replaceable>-devel</literal> 33 or 34 <literal><replaceable><package-name></replaceable>-dev</literal>. 35 Be sure to install those if your distribution provides them.</para> 35 36 36 37 <para>Earlier versions of the listed software packages may work, but have … … 100 101 older kernels are not enabled and the compiled 101 102 <application>glibc</application> is slightly faster and smaller. 102 As at June 2023, &min-kernel; is the oldest kernel release still 103 supported by the kernel developers.</para> 103 As at Feb 2024, &min-kernel; is the oldest kernel release still 104 supported by the kernel developers. Some kernel releases older than 105 &min-kernel; may be still supported by third-party teams, but they 106 are not considered official upstream kernel releases; read 107 <ulink url='https://kernel.org/category/releases.html'/> for the 108 details.</para> 104 109 105 110 <para>If the host kernel is earlier than &min-kernel; you will need to replace -
chapter02/mounting.xml
r648f145 r328eb6f 17 17 </para> 18 18 19 <para>Strictly speaking, one cannot "mount a partition".One mounts the <emphasis>file19 <para>Strictly speaking, one cannot <quote>mount a partition.</quote> One mounts the <emphasis>file 20 20 system</emphasis> embedded in that partition. But since a single partition can't contain 21 21 more than one file system, people often speak of the partition and the -
chapter02/stages.xml
r648f145 r328eb6f 70 70 <listitem> 71 71 <para>A few operations, from <quote>Changing Ownership</quote> to 72 <quote>Entering the Chroot Environment </quote>,must be done as the72 <quote>Entering the Chroot Environment,</quote> must be done as the 73 73 <systemitem class="username">root</systemitem> user, with the LFS 74 74 environment variable set for the &root; user.</para> -
chapter03/patches.xml
r648f145 r328eb6f 28 28 --> 29 29 30 <!--<varlistentry>31 <term>Bash Upstream Fixes Patch - <token>&bash- fixes-patch-size;</token>:</term>30 <varlistentry> 31 <term>Bash Upstream Fixes Patch - <token>&bash-upstream-fixes-patch-size;</token>:</term> 32 32 <listitem> 33 <para>Download: <ulink url="&patches-root;&bash- fixes-patch;"/></para>34 <para>MD5 sum: <literal>&bash- fixes-patch-md5;</literal></para>33 <para>Download: <ulink url="&patches-root;&bash-upstream-fixes-patch;"/></para> 34 <para>MD5 sum: <literal>&bash-upstream-fixes-patch-md5;</literal></para> 35 35 </listitem> 36 36 </varlistentry> 37 --> 37 38 38 <!-- 39 39 <varlistentry> … … 77 77 </listitem> 78 78 </varlistentry> 79 --> 79 80 80 <varlistentry> 81 81 <term>Glibc Upstream Fixes Patch - <token>&glibc-upstream-fixes-patch-size;</token>:</term> … … 85 85 </listitem> 86 86 </varlistentry> 87 87 --> 88 88 <varlistentry> 89 89 <term>Glibc FHS Patch - <token>&glibc-fhs-patch-size;</token>:</term> … … 118 118 </varlistentry> 119 119 --> 120 120 <!-- 121 121 <varlistentry> 122 122 <term>Pkgconf Upstream Fix Patch - <token>&pkgconf-upstream-fix-patch-size;</token>:</term> … … 126 126 </listitem> 127 127 </varlistentry> 128 128 --> 129 129 <varlistentry> 130 130 <term>Readline Upstream Fix Patch - <token>&readline-fixes-patch-size;</token>:</term> … … 143 143 </varlistentry> 144 144 145 <!--146 145 <varlistentry revision="systemd"> 147 <term>Systemd Upstream Patch - <token>&systemd-upstream-patch-size;</token>:</term>146 <term>Systemd Upstream Fixes Patch - <token>&systemd-upstream-patch-size;</token>:</term> 148 147 <listitem> 149 148 <para>Download: <ulink url="&patches-root;&systemd-upstream-patch;"/></para> … … 151 150 </listitem> 152 151 </varlistentry> 153 -->154 152 <!-- 155 153 <varlistentry> -
chapter04/addinguser.xml
r648f145 r328eb6f 97 97 <command>su</command> to start a login shell as opposed to a non-login shell. 98 98 The difference between these two types of shells is described in detail in 99 <filename>bash(1)</filename> and <command>info bash</command>.</para> 99 <ulink role='man' url='&man;bash.1'>bash(1)</ulink> and <command>info 100 bash</command>.</para> 100 101 101 102 </sect1> -
chapter04/settingenviron.xml
r648f145 r328eb6f 80 80 created files and directories are only writable by their owner, but are 81 81 readable and executable by anyone (assuming default modes are used by the 82 < filename>open(2)</filename> system call, new files will end up with83 permission mode 644 and directories with mode 755).</para>82 <ulink role='man' url='&man;open.2'>open(2)</ulink> system call, new files 83 will end up with permission mode 644 and directories with mode 755).</para> 84 84 </listitem> 85 85 </varlistentry> -
chapter05/glibc.xml
r648f145 r328eb6f 138 138 139 139 <note><para>There have been reports that this package may fail when 140 building as a "parallel make".If that occurs, rerun the make command141 with the "-j1"option.</para></note>140 building as a <quote>parallel make.</quote> If that occurs, rerun the make command 141 with the <option>-j1</option> option.</para></note> 142 142 143 143 <para>Compile the package:</para> -
chapter06/file.xml
r648f145 r328eb6f 79 79 <screen><userinput remap="configure">./configure --prefix=/usr --host=$LFS_TGT --build=$(./config.guess)</userinput></screen> 80 80 81 <!-- devs: if using - -build here, the build system wants to compile82 the signature file with "file" on the build system, but stops if it is not83 the same version. One possibility would be to build "file" on the build84 system first, but it is simpler to have the system think it is not85 cross-compiling, and use the just built "file". -->86 81 <para>Compile the package:</para> 87 82 -
chapter07/creatingdirs.xml
r648f145 r328eb6f 55 55 class="directory">/var/tmp</filename> directories, but cannot remove 56 56 another user's files from them. The latter is prohibited by the so-called 57 <quote>sticky bit </quote>,the highest bit (1) in the 1777 bit mask.</para>57 <quote>sticky bit,</quote> the highest bit (1) in the 1777 bit mask.</para> 58 58 59 59 <sect2> -
chapter07/kernfs.xml
r648f145 r328eb6f 64 64 <para>Now mount the remaining virtual kernel file systems:</para> 65 65 66 <screen><userinput>mount -v --bind /dev/pts $LFS/dev/pts 66 <!-- Do not put any option after $LFS/${mountpoint} or jhalfs cannot 67 handle it! --> 68 69 <screen><userinput>mount -vt devpts devpts -o gid=5,mode=0620 $LFS/dev/pts 67 70 mount -vt proc proc $LFS/proc 68 71 mount -vt sysfs sysfs $LFS/sys 69 72 mount -vt tmpfs tmpfs $LFS/run</userinput></screen> 70 <!-- 73 71 74 <variablelist> 72 75 <title>The meaning of the mount options for devpts:</title> … … 96 99 97 100 </variablelist> 98 --> 101 99 102 <para>In some host systems, <filename>/dev/shm</filename> is a 100 symbolic link to <filename class="directory">/run/shm</filename>. 103 symbolic link to a directory, typically 104 <filename class="directory">/run/shm</filename>. 101 105 The /run tmpfs was mounted above so in this case only a 102 directory needs to be created .</para>106 directory needs to be created with the correct permissions.</para> 103 107 104 108 <para>In other host systems <filename>/dev/shm</filename> is a mount point … … 108 112 109 113 <screen><userinput>if [ -h $LFS/dev/shm ]; then 110 (cd $LFS/dev; mkdir $(readlink shm))114 install -v -d -m 1777 $LFS$(realpath /dev/shm) 111 115 else 112 116 mount -vt tmpfs -o nosuid,nodev tmpfs $LFS/dev/shm -
chapter07/python.xml
r648f145 r328eb6f 45 45 46 46 <note> 47 <para>There are two package files whose name starts with 48 <quote>python</quote> . The one to extract from is47 <para>There are two package files whose name starts with the 48 <quote>python</quote> prefix. The one to extract from is 49 49 <filename>Python-&python-version;.tar.xz</filename> (notice the 50 50 uppercase first letter).</para> … … 84 84 <para> 85 85 Some Python 3 modules can't be built now because the dependencies 86 are not installed yet. The building system still attempts to build87 them however, so the compilation of some files will fail and the88 compiler message may seem to indicate <quote>fatal error</quote>.86 are not installed yet. For the <filename>ssl</filename> module, 87 a message <computeroutput>Python requires a OpenSSL 1.1.1 or 88 newer</computeroutput> is outputted. 89 89 The message should be ignored. Just make sure the toplevel 90 90 <command>make</command> command has not failed. The optional -
chapter08/bash.xml
r648f145 r328eb6f 41 41 <title>Installation of Bash</title> 42 42 43 <para>First, fix some issues identified upstream:</para> 44 45 <screen><userinput remap="pre">patch -Np1 -i ../&bash-upstream-fixes-patch;</userinput></screen> 46 43 47 <para>Prepare Bash for compilation:</para> 44 48 … … 72 76 <para>To prepare the tests, ensure that the <systemitem class="username">tester</systemitem> user can write to the sources tree:</para> 73 77 74 <screen><userinput remap="test">chown -R vtester .</userinput></screen>78 <screen><userinput remap="test">chown -R tester .</userinput></screen> 75 79 76 80 <para>The test suite of this package is designed to be run as a non-&root; … … 80 84 class="username">tester</systemitem> user:</para> 81 85 82 <screen><userinput remap="test">su -s /usr/bin/expect tester << EOF86 <screen><userinput remap="test">su -s /usr/bin/expect tester << "EOF" 83 87 set timeout -1 84 88 spawn make tests -
chapter08/binutils.xml
r648f145 r328eb6f 136 136 <screen><userinput remap="test">grep '^FAIL:' $(find -name '*.log')</userinput></screen> 137 137 138 <para>Three tests in the gprofng suite are known to fail.</para>138 <!-- <para>Three tests in the gprofng suite are also known to fail.</para>--> 139 139 140 140 <para>Install the package:</para> -
chapter08/coreutils.xml
r648f145 r328eb6f 122 122 compile and run the tests:</para> 123 123 124 <screen><userinput remap="test">chown -R vtester . </userinput></screen>124 <screen><userinput remap="test">chown -R tester . </userinput></screen> 125 125 126 126 <para>Now run the tests:</para> … … 130 130 <!-- Sometimes skipped, but if not it may fail. 131 131 Please DO NOT remove or comment out this unless we can fully 132 understand it! -->132 understand it! 133 133 <para>The test-getlogin test may fail in the LFS chroot environment.</para> 134 20240226: Commented out as it seems the upstream has root-caused and 135 fixed the issue. I've checked the fix is in Coreutils 9.4 release 136 tarball: 137 138 https://lists.gnu.org/archive/html/bug-gnulib/2022-06/msg00079.html 139 --> 134 140 135 141 <para>Remove the temporary group:</para> … … 1262 1268 <term><command>yes</command></term> 1263 1269 <listitem> 1264 <para>Repeatedly outputs < quote>y</quote>, or a given string, until1265 killed</para>1270 <para>Repeatedly outputs <literal>y</literal> or a given string, 1271 until killed</para> 1266 1272 <indexterm zone="ch-system-coreutils yes"> 1267 1273 <primary sortas="b-yes">yes</primary> -
chapter08/e2fsprogs.xml
r648f145 r328eb6f 160 160 161 161 <para> 162 Read the man page <filename>mke2fs.conf(5)</filename> for details. 162 Read the man page <ulink role='man' 163 url='&man;mke2fs.conf.5'>mke2fs.conf(5)</ulink> for details. 163 164 </para> 164 165 </sect2> -
chapter08/expect.xml
r648f145 r328eb6f 49 49 <title>Installation of Expect</title> 50 50 51 <para>Expect needs PTYs to work. Verify that the PTYs are working 52 properly inside the chroot environment by performing a simple 53 test:</para> 54 55 <screen><userinput remap="test">python3 -c 'from pty import spawn; spawn(["echo", "ok"])'</userinput></screen> 56 57 <para>This command should output <computeroutput>ok</computeroutput>. 58 If, instead, the output includes <computeroutput>OSError: out of pty 59 devices</computeroutput>, then the environment is not set up for proper 60 PTY operation. You need to exit from the chroot environment, read 61 <xref linkend='ch-tools-kernfs'/> again, and ensure the 62 <systemitem class="filesystem">devpts</systemitem> file system (and 63 other virtual kernel file systems) mounted correctly. Then reenter 64 the chroot environment following <xref linkend='ch-tools-chroot'/>. 65 This issue needs to be resolved before continuing, or the test suites 66 requiring Expect (for example the test suites of Bash, Binutils, GCC, 67 GDBM, and of course Expect itself) will fail catastrophically, and other 68 subtle breakages may also happen.</para> 69 51 70 <para>Update two config scripts to allow building this package for 52 71 AArch64:</para> … … 89 108 <screen><userinput remap="make">make</userinput></screen> 90 109 91 <important>92 <para>The test suite for Expect is considered critical.93 Do not skip it under any circumstances.</para>94 </important>95 96 110 <para>To test the results, issue:</para> 97 111 98 112 <screen><userinput remap="test">make test</userinput></screen> 99 100 <para>If any test fails with the message101 <quote><computeroutput>The system has no more ptys. Ask your system102 administrator to create more</computeroutput></quote>, it indicates103 you've not mounted the104 <systemitem class="filesystem">devpts</systemitem> file system105 correctly. You need to exit from the chroot environment, read106 <xref linkend='ch-tools-kernfs'/> again, and ensure the107 <systemitem class="filesystem">devpts</systemitem> file system (and108 other virtual kernel file systems) mounted correctly. Then reenter109 the chroot environment following <xref linkend='ch-tools-chroot'/>.110 This issue needs to be resolved before continuing.</para>111 113 112 114 <para>Install the package:</para> -
chapter08/findutils.xml
r648f145 r328eb6f 83 83 <para>To test the results, issue:</para> 84 84 85 <screen><userinput remap="test">chown -R vtester .85 <screen><userinput remap="test">chown -R tester . 86 86 su tester -c "PATH=$PATH make check"</userinput></screen> 87 87 -
chapter08/gawk.xml
r648f145 r328eb6f 55 55 <para>To test the results, issue:</para> 56 56 57 <screen><userinput remap="test">chown -R vtester .57 <screen><userinput remap="test">chown -R tester . 58 58 su tester -c "PATH=$PATH make check"</userinput></screen> 59 59 -
chapter08/gcc.xml
r648f145 r328eb6f 155 155 <para>Test the results as a non-privileged user, but do not stop at errors:</para> 156 156 157 <screen><userinput remap="test">chown -R vtester .157 <screen><userinput remap="test">chown -R tester . 158 158 su tester -c "PATH=$PATH make -k check"</userinput></screen> 159 159 … … 171 171 <para> 172 172 <!-- https://gcc.gnu.org/PR107915 and https://gcc.gnu.org/PR109353 --> 173 Two tests named <filename>copy.cc</filename> and 174 <filename>contracts-tmpl-spec2.C</filename> are known to fail. 173 One test named <filename>contracts-tmpl-spec2.C</filename> is known to fail. 175 174 <!-- https://gcc.gnu.org/PR111224 --> 176 175 Some C++ module tests named <filename>xtreme-*</filename> are known to … … 182 181 183 182 <para> 184 With Glibc-2.38, the analyzer tests named 185 <filename>data-model-4.c</filename> and 186 <filename>conftest-1.c</filename> 187 are known to fail. 188 In the asan tests, several tests in <filename>asan_test.C</filename> 189 are known to fail. 190 The test named <filename>interception-malloc-test-1.C</filename> 191 is known to fail. 183 Eight gcc tests (out of over 185,000): 184 <!-- https://gcc.gnu.org/PR106375 --><filename>pr56837.c</filename> 185 and seven tests in the <filename class='directory'>analyzer</filename> 186 directory are known to fail. 187 188 <!-- https://gcc.gnu.org/PR109353 --> 189 One libstdc++ test (out of over 15000), <filename>copy.cc</filename>, is 190 known to fail. 191 192 For g++, 21 tests (out of approximately 250,000): 14 193 <quote>AddressSanitizer*</quote> 194 tests and 7 <filename>interception-malloc-test-1.C</filename> tests, are 195 known to fail. 192 196 </para> 193 197 … … 196 200 Unless the test results are vastly different from those at the above URL, 197 201 it is safe to continue.</para> 198 199 <!--note><para>200 On some combinations of kernel configuration and AMD processors201 there may be more than 1100 failures in the gcc.target/i386/mpx202 tests (which are designed to test the MPX option on recent203 Intel processors). These can safely be ignored on AMD204 processors. These tests will also fail on Intel processors if MPX support205 is not enabled in the kernel even though it is present on the CPU.206 </para></note-->207 202 208 203 <para>Install the package:</para> -
chapter08/glibc.xml
r648f145 r328eb6f 50 50 51 51 <screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen> 52 52 <!-- 53 53 <para>Now fix two security vulnerabilities and a regression causing the 54 54 posix_memalign() function very slow in some conditions:</para> 55 55 56 56 <screen><userinput remap="pre">patch -Np1 -i ../&glibc-upstream-fixes-patch;</userinput></screen> 57 57 --> 58 58 <para>The Glibc documentation recommends building Glibc 59 59 in a dedicated build directory:</para> … … 74 74 --enable-kernel=&min-kernel; \ 75 75 --enable-stack-protector=strong \ 76 --with-headers=/usr/include \77 76 --disable-nscd \ 78 77 libc_cv_slibdir=/usr/lib</userinput></screen> … … 104 103 <para>This option increases system security by adding 105 104 extra code to check for buffer overflows, such as stack 106 smashing attacks.</para> 107 </listitem> 108 </varlistentry> 109 <!-- do we need this one? --> 110 <varlistentry> 111 <term><parameter>--with-headers=/usr/include</parameter></term> 112 <listitem> 113 <para>This option tells the build system where to find the 114 kernel API headers.</para> 105 smashing attacks. Note that Glibc always explicitly overrides 106 the default of GCC, so this option is still needed even though 107 we've already specified <option>--enable-default-ssp</option> for 108 GCC.</para> 115 109 </listitem> 116 110 </varlistentry> … … 170 164 </listitem> 171 165 172 <!-- Did not fail with glibc-2.38173 <listitem>174 <para><emphasis>misc/tst-ttyname</emphasis>175 is known to fail in the LFS chroot environment.</para>176 </listitem>177 -->178 179 <!-- https://sourceware.org/pipermail/libc-alpha/2022-August/141567.html -->180 <listitem>181 <para>The <emphasis>stdlib/tst-arc4random-thread</emphasis>182 test is known to fail if the host kernel is relatively old.</para>183 </listitem>184 185 166 <listitem> 186 167 <para>Some tests, for example 187 <emphasis>nss/tst-nss-files-hosts-multi</emphasis>, 188 are known to fail on relatively slow systems due to an internal 189 timeout.</para> 168 <emphasis>nss/tst-nss-files-hosts-multi</emphasis> and 169 <emphasis>nptl/tst-thread-affinity*</emphasis> 170 are known to fail due to a timeout (especially when the system is 171 relatively slow and/or running the test suite with multiple 172 parallel make jobs). These tests can be identified with:</para> 173 174 <!-- TODO: Using nodump for freeze. Change it to role="test" after 175 12.1 release so jhalfs can list these in the log. --> 176 <screen role="nodump"><userinput>grep "Timed out" -l $(find -name \*.out)</userinput></screen> 177 178 <para>It's possible to re-run a single test with enlarged timeout 179 with 180 <command>TIMEOUTFACTOR=<replaceable><factor></replaceable> 181 make test t=<replaceable><test name></replaceable></command>. 182 For example, <command>TIMEOUTFACTOR=10 make test 183 t=nss/tst-nss-files-hosts-multi</command> will re-run 184 <emphasis>nss/tst-nss-files-hosts-multi</emphasis> with ten times 185 the original timeout.</para> 190 186 </listitem> 191 187 192 188 <listitem> 193 189 <para>Additionally, some tests may fail with a relatively old CPU 194 model or host kernel version.</para> 190 model (for example 191 <emphasis>elf/tst-cpu-features-cpuinfo</emphasis>) or host kernel 192 version (for example 193 <emphasis>stdlib/tst-arc4random-thread</emphasis>).</para> 195 194 </listitem> 196 195 </itemizedlist> … … 207 206 208 207 <screen><userinput remap="install">sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile</userinput></screen> 208 209 <important> 210 <para> 211 If upgrading Glibc to a new minor version (for example, from 212 Glibc-2.36 to Glibc-&glibc-version;) on a running LFS system, you 213 need to take some extra precautions to avoid breaking the system: 214 </para> 215 216 <itemizedlist> 217 <listitem> 218 <!-- There are two reasons we don't support this: 219 1. Upgrading on a system with separate /lib and /usr/lib is 220 tricky. 221 2. With Glibc prior to 2.34 libc.so.6 etc. are symlinks to 222 libc-2.33.so etc., again causing the upgradation tricky. 223 The Glibc NEWS file explicit states they no longer use 224 symlinks for the ABI names to avoid upgradation 225 issues. --> 226 <para> 227 Upgrading Glibc on a LFS system prior to 11.0 (exclusive) is 228 not supported. Rebuild LFS if you are running such an old LFS 229 system but you need a newer Glibc. 230 </para> 231 </listitem> 232 233 <!-- https://sourceware.org/pipermail/libc-alpha/2024-January/154095.html --> 234 <listitem> 235 <para> 236 If upgrading on a LFS system prior to 12.0 (exclusive), install 237 <application>Libxcrypt</application> following 238 <xref role='.' linkend='ch-system-libxcrypt'/> In addition to 239 a normal <application>Libxcrypt</application> installation, 240 <emphasis role='bold'>you MUST follow the note in Libxcrypt 241 section to install 242 <filename class='libraryfile'>libcrypt.so.1*</filename> 243 (replacing 244 <filename class='libraryfile'>libcrypt.so.1</filename> from the 245 prior Glibc installation)</emphasis>. 246 </para> 247 </listitem> 248 249 <!-- Otherwise on lfs-systemd nscd will fail to start on boot, 250 and on both lfs-sysv and lfs-systemd useradd etc. will try 251 to start nscd, then nscd will fail to start as well and 252 produce some spurious error message. --> 253 <listitem> 254 <para> 255 If upgrading on a LFS system prior to 12.1 (exclusive), 256 remove the <command>nscd</command> program: 257 </para> 258 259 <screen role='nodump'><userinput>rm -f /usr/sbin/nscd</userinput></screen> 260 261 <para revision='systemd'> 262 If this system (prior to LFS 12.1, exclusive) is based on 263 Systemd, it's also needed to disable and stop the 264 <command>nscd</command> service now: 265 </para> 266 267 <screen revision='systemd' role='nodump'><userinput>systemctl disable --now nscd</userinput></screen> 268 </listitem> 269 270 <listitem> 271 <para> 272 Upgrade the kernel and reboot if it's older than &min-kernel; 273 (check the current version with <command>uname -r</command>) 274 or if you want to upgrade it anyway, following 275 <xref linkend='ch-bootable-kernel' role='.'/> 276 </para> 277 </listitem> 278 279 <listitem> 280 <para> 281 Upgrade the kernel API headers if it's older than &min-kernel; 282 (check the current version with 283 <command>cat /usr/include/linux/version.h</command>) 284 or if you want to upgrade it anyway, following 285 <xref linkend='ch-tools-linux-headers'/> (but removing 286 <envar>$LFS</envar> from the <command>cp</command> command). 287 </para> 288 </listitem> 289 290 <!-- This is to ensure we don't start a process at the time point 291 where some Glibc shared libraries are updated but the others 292 are not. Such mismatches can cause programs crash on startup, 293 esp. a mismatch between ld-linux-x86-64.so.2 and 294 libc.so.6. Note that a crash in the installation process 295 will leave the system in a state with the mismatch forever, 296 unrecoverable without the help of another distro. --> 297 <listitem> 298 <para> 299 Perform a <envar>DESTDIR</envar> installation and upgrade 300 the Glibc shared libraries on the system using one single 301 <command>install</command> command: 302 </para> 303 304 <screen role='nodump'><userinput>make DESTDIR=$PWD/dest install 305 install -vm755 dest/usr/lib/*.so.* /usr/lib</userinput></screen> 306 </listitem> 307 </itemizedlist> 308 309 <para> 310 It's imperative to strictly follow these steps above unless you 311 completely understand what you are doing. 312 <emphasis role='bold'>Any unexpected deviation may render the 313 system completely unusable. YOU ARE WARNED.</emphasis> 314 </para> 315 316 <para> 317 Then continue to run the <command>make install</command> command, 318 the <command>sed</command> command against 319 <filename>/usr/bin/ldd</filename>, and the commands to install 320 the locales. Once they are finished, reboot the system 321 immediately. 322 </para> 323 </important> 209 324 210 325 <para>Install the package:</para> … … 421 536 <listitem> 422 537 <para>This creates the <filename>posixrules</filename> file. We use 423 New York because POSIX requires the daylight saving stime rules538 New York because POSIX requires the daylight saving time rules 424 539 to be in accordance with US rules.</para> 425 540 </listitem> -
chapter08/gmp.xml
r648f145 r328eb6f 50 50 51 51 <!-- To editors: the configure script says "the none host is obsolete, 52 use - -disable-assembly ",but don't believe it: with the latter52 use - -disable-assembly," but don't believe it: with the latter 53 53 CFLAGS is still automatically set to -march=something. --> 54 54 </note> … … 98 98 it is built. Occasionally, the code that detects the processor misidentifies 99 99 the system capabilities and there will be errors in the tests or other 100 applications using the gmp libraries with the message "Illegal 101 instruction". In this case, gmp should be reconfigured with the option 100 applications using the gmp libraries with the message 101 <computeroutput>Illegal instruction</computeroutput>. 102 In this case, gmp should be reconfigured with the option 102 103 <option>--host=none-linux-gnu</option> and rebuilt.</para></caution> 103 104 -
chapter08/libtool.xml
r648f145 r328eb6f 57 57 <para>Five tests are known to fail in the LFS build environment due 58 58 to a circular dependency, but these tests pass if rechecked after 59 automake has been installed. Additionally, with grep-3.8, two tests will 60 trigger a warning for non-POSIX regular expressions and fail.</para> 59 automake has been installed. Additionally, with grep-3.8 or newer, 60 two tests will trigger a warning for non-POSIX regular expressions and 61 fail.</para> 61 62 62 63 <para>Install the package:</para> -
chapter08/libxcrypt.xml
r648f145 r328eb6f 111 111 --disable-failure-tokens 112 112 make 113 cp -av .libs/libcrypt.so.1* /usr/lib</userinput></screen>113 cp -av --remove-destination .libs/libcrypt.so.1* /usr/lib</userinput></screen> 114 114 </note> 115 115 -
chapter08/make.xml
r648f145 r328eb6f 54 54 <para>To test the results, issue:</para> 55 55 56 <screen><userinput remap="test">chown -R vtester .56 <screen><userinput remap="test">chown -R tester . 57 57 su tester -c "PATH=$PATH make check"</userinput></screen> 58 58 -
chapter08/openssl.xml
r648f145 r328eb6f 164 164 of <application>OpenSSL</application>'s crypto library from the 165 165 shell. It can be used for various functions which are documented in 166 < filename>openssl(1)</filename>166 <ulink role='man' url='&man;openssl.1'>openssl(1)</ulink> 167 167 </para> 168 168 <indexterm zone="ch-system-openssl openssl-prog"> … … 196 196 implements the Transport Layer Security (TLS v1) protocol. 197 197 It provides a rich API, documentation 198 on which can be found in <filename>ssl(7)</filename> 198 on which can be found in <ulink role='man' 199 url='&man;ssl.7'>ssl(7)</ulink> 199 200 </para> 200 201 <indexterm zone="ch-system-openssl libssl"> -
chapter08/pkgconf.xml
r648f145 r328eb6f 44 44 45 45 <title>Installation of Pkgconf</title> 46 47 <!-- https://github.com/pkgconf/pkgconf/issues/317 -->48 <para>Fix a regression in pkgconf-2.1.0 breaking BLFS packages:</para>49 50 <screen><userinput remap="pre">patch -Np1 -i ../&pkgconf-upstream-fix-patch;</userinput></screen>51 46 52 47 <para>Prepare Pkgconf for compilation:</para> -
chapter08/pkgmgt.xml
r648f145 r328eb6f 57 57 The system will keep working fine thanks to the well-defined interface 58 58 between the kernel and userspace. Specifically, Linux API headers 59 need not be (and should not be, see the next item)upgraded59 need not be upgraded 60 60 along with the kernel. You will merely need to reboot your system to use the 61 61 upgraded kernel.</para> … … 63 63 64 64 <listitem> 65 <para>If the Linux API headers or Glibc need to be upgraded to a newer 66 version, (e.g., from Glibc-2.31 to Glibc-2.32), it is safer to 67 rebuild LFS. Though you <emphasis>may</emphasis> be able to rebuild 68 all the packages in their dependency order, we do not recommend 69 it. </para> 70 </listitem> 71 72 <listitem> 73 <para>Reinstalling the same version of Glibc (&glibc-version; for 74 this release of LFS) with patches should be safe when these patches 75 do not change ABI and API. When a security vulnerability is found 76 in Glibc, we often need to apply such a patch to fix the 77 vulnerability and reinstall Glibc. Consult 78 <ulink url='&lfs-root;lfs/advisories/'>LFS security 79 advisories</ulink> if you are alerted for a published Glibc security 80 vulnerability but unsure about the action to take.</para> 65 <para>If Glibc needs to be upgraded to a newer 66 version, (e.g., from Glibc-2.36 to Glibc-&glibc-version;), 67 some extra steps are needed to avoid breaking the system. 68 Read <xref linkend='ch-system-glibc'/> for details.</para> 81 69 </listitem> 82 70 -
chapter08/procps.xml
r648f145 r328eb6f 73 73 <para> To run the test suite, run:</para> 74 74 75 <screen><userinput remap="test">make check</userinput></screen> 75 <screen><userinput remap="test">make -k check</userinput></screen> 76 77 <para>One test named 78 <literal>ps with output flag bsdtime,cputime,etime,etimes</literal> 79 is known to fail if the host kernel is not built with 80 <literal>CONFIG_BSD_PROCESS_ACCT</literal> enabled. 81 <!-- These two tests just do not work as root but they seem to pass 82 in most time due to some internal hazards of Tcl/Expect/DejaGNU 83 framework. However the failures have been really observed. 84 TODO: run the test suite as tester after the freeze ends. --> 85 Two tests named 86 <literal>pmap X with unreachable process</literal> and 87 <literal>pmap XX with unreachable process</literal> are known to 88 fail occasionally.</para> 76 89 77 90 <para>Install the package:</para> -
chapter08/sed.xml
r648f145 r328eb6f 52 52 <para>To test the results, issue:</para> 53 53 54 <screen><userinput remap="test">chown -R vtester .54 <screen><userinput remap="test">chown -R tester . 55 55 su tester -c "PATH=$PATH make check"</userinput></screen> 56 56 -
chapter08/shadow.xml
r648f145 r328eb6f 204 204 parameter to <command>useradd</command>, or else change the setting of 205 205 <parameter>USERGROUPS_ENAB</parameter> in 206 <filename>/etc/login.defs</filename>. See < filename>useradd(8)</filename>207 for more information.</para>206 <filename>/etc/login.defs</filename>. See <ulink role='man' 207 url='&man;useradd.8'>useradd(8)</ulink> for more information.</para> 208 208 209 209 <para>Second, to change the default parameters, the file -
chapter08/stripping.xml
r648f145 r328eb6f 54 54 The construct below selects the 55 55 correct name for the current architecture, excluding anything ending 56 with < quote>g</quote>, in case the commands below have already been56 with <literal>g</literal>, in case the commands below have already been 57 57 run.</para></note> 58 58 -
chapter08/systemd.xml
r648f145 r328eb6f 51 51 <!-- https://github.com/systemd/systemd/pull/30549 --> 52 52 <para>Now fix a security vulnerability in the DNSSEC verification of 53 <command>systemd-resolved</command>:</para> 54 55 <screen><userinput remap='pre'>sed -e '/return FLAGS_SET.*AUTHENTICATED/s/(t/(dt/' \ 56 -i src/resolve/resolved-dns-transaction.c</userinput></screen> 53 <command>systemd-resolved</command> and a bug breaking running 54 <command>systemd-analyze verify</command> on an instantiated systemd 55 unit:</para> 56 57 <screen><userinput remap='pre'>patch -Np1 -i ../&systemd-upstream-patch;</userinput></screen> 57 58 58 59 <para>Prepare systemd for compilation:</para> -
chapter08/util-linux.xml
r648f145 r328eb6f 104 104 </warning> 105 105 106 <screen><userinput remap="test">chown -R vtester .106 <screen><userinput remap="test">chown -R tester . 107 107 su tester -c "make -k check"</userinput></screen> 108 108 … … 575 575 <listitem> 576 576 <para>Displays kernel interrupt counter information in 577 <filename>top(1)</filename> style view</para> 577 <ulink role='man' url='&man;top.1'>top(1)</ulink> style 578 view</para> 578 579 <indexterm zone="ch-system-util-linux irqtop"> 579 580 <primary sortas="b-irqtop">irqtop</primary> -
chapter08/vim.xml
r648f145 r328eb6f 67 67 to the source tree:</para> 68 68 69 <screen><userinput remap="test">chown -R vtester .</userinput></screen>69 <screen><userinput remap="test">chown -R tester .</userinput></screen> 70 70 71 71 <para>Now run the tests as user <systemitem 72 72 class="username">tester</systemitem>:</para> 73 73 74 <screen><userinput remap="test">su tester -c "LANG=en_US.UTF-8 make -j1 test" &> vim-test.log</userinput></screen> 74 <screen><userinput remap="test">su tester -c "TERM=xterm-256color LANG=en_US.UTF-8 make -j1 test" \ 75 &> vim-test.log</userinput></screen> 75 76 76 77 <para>The test suite outputs a lot of binary data to the screen. This can 77 cause issues with the settings of the current terminal. The problem can be 78 cause issues with the settings of the current terminal (especially while 79 we are overriding the <envar>TERM</envar> variable to satisify some 80 assumptions of the test suite). The problem can be 78 81 avoided by redirecting the output to a log file as shown above. A 79 successful test will result in the words "ALL DONE" in the log file80 at completion.</para>82 successful test will result in the words <computeroutput>ALL 83 DONE</computeroutput> in the log file at completion.</para> 81 84 82 85 <para>Install the package:</para> -
chapter09/chapter09.xml
r648f145 r328eb6f 27 27 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="network.xml"/> 28 28 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="usage.xml"/> 29 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="profile.xml"/>30 29 31 30 <!-- systemd --> 32 31 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="clock.xml"/> 33 32 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="consoled.xml"/> 34 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="locale.xml"/>35 33 36 34 <!-- common --> 35 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="locale.xml"/> 37 36 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="inputrc.xml"/> 38 37 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="etcshells.xml"/> -
chapter09/consoled.xml
r648f145 r328eb6f 31 31 32 32 <para>The <filename>/etc/vconsole.conf</filename> file should contain lines 33 of the form: VARIABLE="value". The following variables are recognized:</para>33 of the form: <envar>VARIABLE=value</envar>. The following variables are recognized:</para> 34 34 35 35 <variablelist> … … 74 74 75 75 </variablelist> 76 77 <para>We'll use <literal>C.UTF-8</literal> as the locale for interactive 78 sessions in the Linux console in <xref role='.' 79 linkend='ch-config-locale'/> The console fonts shipped by 80 the <application>Kbd</application> package containing the glyphs for 81 all characters from the program messages in the <literal>C.UTF-8</literal> 82 locale are <filename>LatArCyrHeb*.psfu.gz</filename>, 83 <filename>LatGrkCyr*.psfu.gz</filename>, 84 <filename>Lat2-Terminus16.psfu.gz</filename>, and 85 <filename>pancyrillic.f16.psfu.gz</filename> in 86 <filename class='directory'>/usr/share/consolefonts</filename> (the other 87 shipped console fonts lack glyphs of some characters like the Unicode 88 left/right quotation marks and the Unicode English dash). So set one of 89 them, for example <filename>Lat2-Terminus16.psfu.gz</filename> as the 90 default console font:</para> 91 92 <!-- We are using "nodump" for general settings, but not examples. This 93 is ironic, but needed for the compatibility with jhalfs! --> 94 <screen role='nodump'><userinput>echo <literal>FONT=Lat2-Terminus16</literal> > /etc/vconsole.conf</userinput></screen> 76 95 77 96 <para>An example for a German keyboard and console is given below:</para> -
chapter09/locale.xml
r648f145 r328eb6f 6 6 ]> 7 7 8 <sect1 id="ch-config-locale" revision="systemd">8 <sect1 id="ch-config-locale"> 9 9 <?dbhtml filename="locale.html"?> 10 10 … … 12 12 13 13 <indexterm zone="ch-config-locale"> 14 <primary sortas="e- etc-locale-conf">/etc/locale.conf</primary>14 <primary sortas="e-/etc/profile">/etc/profile</primary> 15 15 </indexterm> 16 16 17 <para>The <filename>/etc/locale.conf</filename> file below sets some 18 environment variables necessary for native language support. Setting 19 them properly results in:</para> 17 <indexterm zone="ch-config-locale" revision='systemd'> 18 <primary sortas="e-/etc/profile">/etc/locale.conf</primary> 19 </indexterm> 20 21 <para>Some environment variables are necessary for native language 22 support. Setting them properly results in:</para> 20 23 21 24 <itemizedlist> … … 40 43 41 44 <para>Replace <replaceable><ll></replaceable> below with the two-letter code 42 for your desired language (e.g., < quote>en</quote>) and45 for your desired language (e.g., <literal>en</literal>) and 43 46 <replaceable><CC></replaceable> with the two-letter code for the appropriate 44 country (e.g., < quote>GB</quote>). <replaceable><charmap></replaceable> should47 country (e.g., <literal>GB</literal>). <replaceable><charmap></replaceable> should 45 48 be replaced with the canonical charmap for your chosen locale. Optional 46 modifiers such as < quote>@euro</quote> may also be present.</para>49 modifiers such as <literal>@euro</literal> may also be present.</para> 47 50 48 51 <para>The list of all locales supported by Glibc can be obtained by running … … 51 54 <screen role="nodump"><userinput>locale -a</userinput></screen> 52 55 53 <para>Charmaps can have a number of aliases, e.g., <quote>ISO-8859-1</quote> 54 is also referred to as <quote>iso8859-1</quote> and <quote>iso88591</quote>. 56 <para>Charmaps can have a number of aliases, e.g., 57 <literal>ISO-8859-1</literal> is also referred to as 58 <literal>iso8859-1</literal> and <literal>iso88591</literal>. 55 59 Some applications cannot handle the various synonyms correctly (e.g., require 56 that < quote>UTF-8</quote> is written as <quote>UTF-8</quote>, not57 < quote>utf8</quote>), so it is the safest in most60 that <literal>UTF-8</literal> is written as <literal>UTF-8</literal>, not 61 <literal>utf8</literal>), so it is the safest in most 58 62 cases to choose the canonical name for a particular locale. To determine 59 63 the canonical name, run the following command, where <replaceable><locale 60 64 name></replaceable> is the output given by <command>locale -a</command> for 61 your preferred locale (<quote>en_GB.iso88591</quote> in our example).</para> 65 your preferred locale (<literal>en_GB.iso88591</literal> in our 66 example).</para> 62 67 63 68 <screen role="nodump"><userinput>LC_ALL=<replaceable><locale name></replaceable> locale charmap</userinput></screen> 64 69 65 <para>For the < quote>en_GB.iso88591</quote> locale, the above command70 <para>For the <literal>en_GB.iso88591</literal> locale, the above command 66 71 will print:</para> 67 72 68 73 <screen><computeroutput>ISO-8859-1</computeroutput></screen> 69 74 70 <para>This results in a final locale setting of < quote>en_GB.ISO-8859-1</quote>.75 <para>This results in a final locale setting of <literal>en_GB.ISO-8859-1</literal>. 71 76 It is important that the locale found using the heuristic above is tested prior 72 77 to it being added to the Bash startup files:</para> … … 91 96 Glibc.</para> 92 97 93 <!-- FIXME: the xlib example will become obsolete in the future.-->94 <para>Some packages beyond LFS may also lack support for your chosen locale. One95 example is the X library (part of the X Window System), which outputs the96 following error message if the locale does not exactly match one of the character97 map names in its internal files:</para>98 99 <screen><computeroutput>Warning: locale not supported by Xlib, locale set to C</computeroutput></screen>100 101 <para>In several cases Xlib expects that the character map will be listed in102 uppercase notation with canonical dashes. For instance, "ISO-8859-1" rather103 than "iso88591". It is also possible to find an appropriate specification by104 removing the charmap part of the locale specification. This can be checked105 by running the <command>locale charmap</command> command in both locales.106 For example, one would have to change "de_DE.ISO-8859-15@euro" to107 "de_DE@euro" in order to get this locale recognized by Xlib.</para>108 109 98 <para>Other packages can also function incorrectly (but may not necessarily 110 99 display any error messages) if the locale name does not meet their expectations. … … 112 101 might provide some useful information.</para> 113 102 114 <para >Once the proper locale settings have been determined, create the115 <filename>/etc/locale.conf</filename> file:</para>116 117 <screen ><userinput>cat > /etc/locale.conf << "EOF"103 <para revision='systemd'>Once the proper locale settings have been 104 determined, create the <filename>/etc/locale.conf</filename> file:</para> 105 106 <screen revision='systemd'><userinput>cat > /etc/locale.conf << "EOF" 118 107 <literal>LANG=<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable></literal> 119 108 EOF</userinput></screen> 120 109 121 <para>Note that you can modify <filename>/etc/locale.conf</filename> with the 110 <para>The shell program <command>/bin/bash</command> (here after referred 111 as <quote>the shell</quote>) uses a collection of startup files to help 112 create the environment to run in. Each file has a specific use and may 113 affect login and interactive environments differently. The files in the 114 <filename class="directory">/etc</filename> directory provide global 115 settings. If equivalent files exist in the home directory, they 116 may override the global settings.</para> 117 118 <para>An interactive login shell is started after a successful login, 119 using <command>/bin/login</command>, by reading the 120 <filename>/etc/passwd</filename> file. An interactive non-login shell is 121 started at the command-line (e.g. 122 <prompt>[prompt]$</prompt><command>/bin/bash</command>). A 123 non-interactive shell is usually present when a shell script is running. 124 It is non-interactive because it is processing a script and not waiting 125 for user input between commands.</para> 126 127 <para><phrase revision='systemd'>The login shells are often unaffected by 128 the settings in <filename>/etc/locale.conf</filename>. </phrase>Create the 129 <filename>/etc/profile</filename> 130 <phrase revision='sysv'>once the proper locale settings have been 131 determined to set the desired locale</phrase><phrase 132 revision='systemd'>to read the locale settings from 133 <filename>/etc/locale.conf</filename> and export them</phrase>, 134 but set the <literal>C.UTF-8</literal> locale instead if running in the Linux 135 console (to prevent programs from outputting characters that the Linux 136 console is unable to render):</para> 137 138 <screen revision="systemd"><userinput>cat > /etc/profile << "EOF" 139 <literal># Begin /etc/profile 140 141 for i in $(locale); do 142 unset ${i%=*} 143 done 144 145 if [[ "$TERM" = linux ]]; then 146 export LANG=C.UTF-8 147 else 148 source /etc/locale.conf 149 150 for i in $(locale); do 151 key=${i%=*} 152 if [[ -v $key ]]; then 153 export $key 154 fi 155 done 156 fi 157 158 # End /etc/profile</literal> 159 EOF</userinput></screen> 160 161 <screen revision="sysv"><userinput>cat > /etc/profile << "EOF" 162 <literal># Begin /etc/profile 163 164 for i in $(locale); do 165 unset ${i%=*} 166 done 167 168 if [[ "$TERM" = linux ]]; then 169 export LANG=C.UTF-8 170 else 171 export LANG=<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable> 172 fi 173 174 # End /etc/profile</literal> 175 EOF</userinput></screen> 176 177 <para revision='systemd'>Note that you can modify <filename>/etc/locale.conf</filename> with the 122 178 systemd <command>localectl</command> utility. To use 123 179 <command>localectl</command> for the example above, run:</para> 124 180 125 <screen role="nodump"><userinput>localectl set-locale LANG="<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable>"</userinput></screen> 126 127 <para>You can also specify other language specific environment variables such 128 as <envar>LANG</envar>, <envar>LC_CTYPE</envar>, <envar>LC_NUMERIC</envar> or 129 any other environment variable from <command>locale</command> output. Just 130 separate them with a space. An example where <envar>LANG</envar> is set as 181 <screen revision='systemd' role="nodump"><userinput>localectl set-locale LANG="<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable>"</userinput></screen> 182 183 <para revision='systemd'>You can also specify other language specific 184 environment variables such as <envar>LANG</envar>, 185 <envar>LC_CTYPE</envar>, <envar>LC_NUMERIC</envar> or any other 186 environment variable from <command>locale</command> output. Just separate 187 them with a space. An example where <envar>LANG</envar> is set as 131 188 en_US.UTF-8 but <envar>LC_CTYPE</envar> is set as just en_US is:</para> 132 189 133 <screen role="nodump"><userinput>localectl set-locale LANG="en_US.UTF-8" LC_CTYPE="en_US"</userinput></screen> 134 135 <note><para>Please note that the <command>localectl</command> command 136 doesn't work in the chroot environment. It can only 137 be used after the LFS system is booted with systemd.</para></note> 138 139 <para>The <quote>C</quote> (default) and <quote>en_US</quote> (the recommended 140 one for United States English users) locales are different. <quote>C</quote> 190 <screen revision='systemd' role="nodump"><userinput>localectl set-locale LANG="en_US.UTF-8" LC_CTYPE="en_US"</userinput></screen> 191 192 <note revision='systemd'><para>Please note that the 193 <command>localectl</command> command doesn't work in the chroot 194 environment. It can only be used after the LFS system is booted with 195 systemd.</para></note> 196 197 <para>The <literal>C</literal> (default) and <literal>en_US</literal> 198 (the recommended one for United States English users) locales are 199 different. <literal>C</literal> 141 200 uses the US-ASCII 7-bit character set, and treats bytes with the high bit set 142 201 as invalid characters. That's why, e.g., the <command>ls</command> command 143 202 substitutes them with question marks in that locale. Also, an attempt to send 144 203 mail with such characters from Mutt or Pine results in non-RFC-conforming 145 messages being sent (the charset in the outgoing mail is indicated as <quote>unknown 146 8-bit</quote>). It's suggested that you use the <quote>C</quote> locale only 204 messages being sent (the charset in the outgoing mail is indicated as 205 <computeroutput>unknown 8-bit</computeroutput>). It's suggested that you 206 use the <literal>C</literal> locale only 147 207 if you are certain that you will never need 8-bit characters.</para> 148 208 149 <!--150 <para>UTF-8 based locales are not supported well by many programs.151 Work is in progress to document and, if possible, fix such problems, see152 <ulink url="&blfs-book;introduction/locale-issues.html"/>.</para>153 -->154 155 209 </sect1> -
chapter09/network.xml
r648f145 r328eb6f 63 63 the interfaces up correctly.</para> 64 64 65 <para>If the <envar>ONBOOT</envar> variable is set to < quote>yes</quote> the65 <para>If the <envar>ONBOOT</envar> variable is set to <literal>yes</literal> the 66 66 System V network script will bring up the Network Interface Card (NIC) during 67 the system boot process. If set to anything besides < quote>yes</quote>, the NIC67 the system boot process. If set to anything besides <literal>yes</literal>, the NIC 68 68 will be ignored by the network script and will not be started automatically. 69 69 Interfaces can be manually started or stopped with the -
chapter09/networkd.xml
r648f145 r328eb6f 51 51 <filename class="extension">.network</filename> files. For detailed 52 52 descriptions and example contents of these configuration files, consult 53 the <filename>systemd-link(5)</filename>, 54 <filename>systemd-netdev(5)</filename> and 55 <filename>systemd-network(5)</filename> manual pages.</para> 53 the <ulink role='man' url='&man;systemd-link.5'>systemd-link(5)</ulink>, 54 <ulink role='man' url='&man;systemd-netdev.5'>systemd-netdev(5)</ulink>, 55 and <ulink role='man' 56 url='&man;systemd-network.5'>systemd-network(5)</ulink> manual 57 pages.</para> 56 58 57 59 <sect3 id="systemd-network-devices"> … … 90 92 <listitem> 91 93 <para> 92 Mask udev's .link file for the default policy: 94 Mask udev's <filename class='extension'>.link</filename> file 95 for the default policy: 93 96 <screen role="nodump"><userinput>ln -s /dev/null /etc/systemd/network/99-default.link</userinput></screen> 94 97 </para> … … 97 100 <listitem> 98 101 <para> 99 Create a manual naming scheme, for example by naming the 100 interfaces something like "internet0", "dmz0", or "lan0". 101 To do that, create .link files in /etc/systemd/network/ that 102 select an explicit name or a better naming scheme for your 103 network interfaces. For example: 102 Create a manual naming scheme, for example by naming the 103 interfaces something like <literal>internet0</literal>, 104 <literal>dmz0</literal>, or <literal>lan0</literal>. 105 To do that, create <filename class='extension'>.link</filename> 106 files in /etc/systemd/network/ that select an explicit name or a 107 better naming scheme for your network interfaces. For example: 104 108 </para> 105 109 … … 114 118 115 119 <para> 116 See < filename>systemd.link(5)</filename> for more information.120 See <ulink role='man' url='&man;systemd.link.5'>systemd.link(5)</ulink> for more information. 117 121 </para> 118 122 </listitem> … … 358 362 domain) because they are handled by the 359 363 <systemitem class='library'>myhostname</systemitem> NSS module, read 360 the man page <filename>nss-myhostname(8)</filename> for details.</para> 364 the man page <ulink role='man' 365 url='&man;nss-myhostname.8'>nss-myhostname(8)</ulink> for 366 details.</para> 361 367 362 368 <para>The ::1 entry is the IPv6 counterpart of 127.0.0.1 and represents -
chapter09/systemd-custom.xml
r648f145 r328eb6f 22 22 entries commented out with the default settings indicated. This file is 23 23 where the log level may be changed as well as some basic logging settings. 24 See the <filename>systemd-system.conf(5)</filename> manual page for details 25 on each configuration option.</para> 24 See the <ulink role='man' 25 url='&man;systemd-system.conf.5'>systemd-system.conf(5)</ulink> manual 26 page for details on each configuration option.</para> 26 27 27 28 </sect2> … … 90 91 files with the same name in 91 92 <filename class="directory">/usr/lib/tmpfiles.d</filename>. See 92 < filename>tmpfiles.d(5)</filename> manual page for file format93 details.</para>93 <ulink role='man' url='&man;tmpfiles.d.5'>tmpfiles.d(5)</ulink> manual 94 page for file format details.</para> 94 95 95 96 <para> … … 136 137 EOF</userinput></screen> 137 138 138 <para>See <filename>systemd.unit(5)</filename> manual page for more 139 <para>See <ulink role='man' 140 url='&man;systemd.unit.5'>systemd.unit(5)</ulink> manual page for more 139 141 information. After creating the configuration file, run 140 142 <userinput>systemctl daemon-reload</userinput> and <userinput>systemctl … … 252 254 EOF</userinput></screen> 253 255 254 <para>See the <filename>systemd-coredump(8)</filename>, 255 <filename>coredumpctl(1)</filename>, and 256 <filename>coredump.conf.d(5)</filename> manual pages for more 257 information.</para> 256 <para>See the <ulink role='man' url='&man;systemd-coredump.8'>systemd-coredump(8)</ulink>, 257 <ulink role='man' url='&man;coredumpctl.1'>coredumpctl(1)</ulink>, and 258 <ulink role='man' 259 url='&man;coredump.conf.d.5'>coredump.conf.d(5)</ulink> manual pages for 260 more information.</para> 258 261 </sect2> 259 262 -
chapter09/udev.xml
r648f145 r328eb6f 130 130 supported by a module. For example, the <emphasis>snd-fm801</emphasis> 131 131 driver supports PCI devices with vendor ID 0x1319 and device ID 0x0801, 132 and has an alias of < quote>pci:v00001319d00000801sv*sd*bc04sc01i*</quote>.132 and has an alias of <literal>pci:v00001319d00000801sv*sd*bc04sc01i*</literal>. 133 133 For most devices, the bus driver exports the alias of the driver that 134 134 would handle the device via <systemitem … … 136 136 <filename>/sys/bus/pci/devices/0000:00:0d.0/modalias</filename> file 137 137 might contain the string 138 < quote>pci:v00001319d00000801sv00001319sd00001319bc04sc01i00</quote>.138 <literal>pci:v00001319d00000801sv00001319sd00001319bc04sc01i00</literal>. 139 139 The default rules provided with udev will cause <command>udevd</command> 140 140 to call out to <command>/sbin/modprobe</command> with the contents of the … … 226 226 <literal>pre:</literal> dependencies, or a mixture of both 227 227 <literal>pre:</literal> and <literal>post:</literal> dependencies. See 228 the <filename>modprobe.d(5)</filename> manual page for more information 229 on <quote>softdep</quote> syntax and capabilities.</para> 228 the <ulink role='man' url='&man;modprobe.d.5'>modprobe.d(5)</ulink> 229 manual page for more information on <quote>softdep</quote> syntax and 230 capabilities.</para> 230 231 231 232 <para revision="sysv">If the module in question is not a wrapper and is … … 301 302 <para>This is due to the fact that udev, by design, handles uevents and 302 303 loads modules in parallel, and thus in an unpredictable order. This will 303 never be <quote>fixed </quote>.You should not rely upon the kernel device304 never be <quote>fixed.</quote> You should not rely upon the kernel device 304 305 names being stable. Instead, create your own rules that make symlinks with 305 306 stable names based on some stable attributes of the device, such as a -
chapter09/usage.xml
r648f145 r328eb6f 33 33 uses a run levels scheme. There are seven run levels, numbered 0 to 6. 34 34 (Actually, there are more run levels, but the others are for special cases and are 35 generally not used. See <filename>init(8)</filename> for more details.) 35 generally not used. See <ulink role='man' 36 url='&man;init.8'>init(8)</ulink> for more details.) 36 37 Each one of the seven corresponds to actions the computer is supposed to 37 38 perform when it starts up or shuts down. The default run level is 3. Here are the … … 48 49 <note> 49 50 <para> 50 Classically, run level 2 above was defined as51 "multi-user mode without networking",but this was only the case52 53 54 we now say it is "reserved".51 Classically, run level 2 above was defined as <quote>multi-user 52 mode without networking,</quote> but this was only the case 53 many years ago when multiple users could connect to a system via 54 serial ports. In today's environment it makes no sense, and 55 we now say it is <quote>reserved.</quote> 55 56 </para> 56 57 </note> … … 342 343 doubt, look in the <filename class="directory">/usr/share/keymaps</filename> 343 344 and <filename class="directory">/usr/share/consolefonts</filename> directories 344 for valid keymaps and screen fonts. Read the <filename>loadkeys(1)</filename> and 345 <filename>setfont(8)</filename> manual pages to determine the correct 346 arguments for these programs.</para> 345 for valid keymaps and screen fonts. Read the <ulink role='man' 346 url='&man;loadkeys.1'>loadkeys(1)</ulink> and <ulink role='man' 347 url='&man;setfont.8'>setfont(8)</ulink> manual pages to determine the 348 correct arguments for these programs.</para> 347 349 348 350 <para>The <filename>/etc/sysconfig/console</filename> file should contain lines 349 of the form: VARIABLE="value". The following variables are recognized:</para>351 of the form: <envar>VARIABLE=value</envar>. The following variables are recognized:</para> 350 352 <variablelist> 351 353 … … 355 357 <para>This variable specifies the log level for kernel messages sent 356 358 to the console as set by <command>dmesg -n</command>. Valid levels are 357 from "1" (no messages) to "8". The default level is "7".</para>359 from <literal>1</literal> (no messages) to <literal>8</literal>. The default level is <literal>7</literal>, which is quite verbose.</para> 358 360 </listitem> 359 361 </varlistentry> … … 364 366 <para>This variable specifies the arguments for the 365 367 <command>loadkeys</command> program, typically, the name of the keymap 366 to load, e.g., < quote>it</quote>. If this variable is not set, the368 to load, e.g., <literal>it</literal>. If this variable is not set, the 367 369 bootscript will not run the <command>loadkeys</command> program, 368 370 and the default kernel keymap will be used. Note that a few keymaps … … 383 385 is not completely satisfactory and a small adjustment has to be made. E.g., 384 386 to include the Euro sign into a keymap that normally doesn't have it, 385 set this variable to < quote>euro2</quote>.</para>387 set this variable to <literal>euro2</literal>.</para> 386 388 </listitem> 387 389 </varlistentry> … … 392 394 <para>This variable specifies the arguments for the 393 395 <command>setfont</command> program. Typically, this includes the font 394 name, < quote>-m</quote>, and the name of the application character396 name, <literal>-m</literal>, and the name of the application character 395 397 map to load. E.g., in order to load the <quote>lat1-16</quote> font 396 398 together with the <quote>8859-1</quote> application character map 397 399 (appropriate in the USA), 398 400 <!-- because of the copyright sign --> 399 set this variable to < quote>lat1-16 -m 8859-1</quote>.401 set this variable to <literal>lat1-16 -m 8859-1</literal>. 400 402 In UTF-8 mode, the kernel uses the application character map to 401 403 convert 8-bit key codes to UTF-8. Therefore … … 409 411 <term>UNICODE</term> 410 412 <listitem> 411 <para>Set this variable to < quote>1</quote>, <quote>yes</quote>, or412 < quote>true</quote> in order to put the413 <para>Set this variable to <literal>1</literal>, <literal>yes</literal>, or 414 <literal>true</literal> in order to put the 413 415 console into UTF-8 mode. This is useful in UTF-8 based locales and 414 416 harmful otherwise.</para> … … 431 433 432 434 <itemizedlist> 435 <listitem> 436 <para> 437 We'll use <literal>C.UTF-8</literal> as the locale for interactive 438 sessions in the Linux console in <xref role=',' 439 linkend='ch-config-locale'/> so we should set 440 <literal>UNICODE</literal> to <literal>1</literal>. And the console 441 fonts shipped by the <application>Kbd</application> package 442 containing the glyphs for all characters from the program messages 443 in the <literal>C.UTF-8</literal> locale are 444 <filename>LatArCyrHeb*.psfu.gz</filename>, 445 <filename>LatGrkCyr*.psfu.gz</filename>, 446 <filename>Lat2-Terminus16.psfu.gz</filename>, and 447 <filename>pancyrillic.f16.psfu.gz</filename> in 448 <filename class='directory'>/usr/share/consolefonts</filename> (the 449 other shipped console fonts lack glyphs of some characters like the 450 Unicode left/right quotation marks and the Unicode English dash). 451 So set one of them, for example 452 <filename>Lat2-Terminus16.psfu.gz</filename> as the default console 453 font: 454 </para> 455 456 <!-- We are using 'nodump' for the generic setting, but not for an 457 example (see below). This is deliberate to keep the 458 compatibility with jhalfs. --> 459 <screen role='nodump'><userinput>cat > /etc/sysconfig/console << "EOF" 460 <literal># Begin /etc/sysconfig/console 461 462 UNICODE="1" 463 FONT="Lat2-Terminus16" 464 465 # End /etc/sysconfig/console</literal> 466 EOF</userinput></screen> 467 468 </listitem> 433 469 434 470 <listitem> … … 525 561 characters, or two ASCII characters are composed together. However, in 526 562 UTF-8 mode it is a problem; e.g., for the Greek language, where one 527 sometimes needs to put an accent on the letter <quote>alpha</quote>.563 sometimes needs to put an accent on the letter α. 528 564 The solution is either to avoid the use of UTF-8, or to install the 529 565 X window system, which doesn't have this limitation, in its input -
chapter10/fstab.xml
r648f145 r328eb6f 57 57 class="partition">sda5</filename>, and <systemitem 58 58 class="filesystem">ext4</systemitem>. For details on the six 59 fields in this file, see < filename>fstab(5)</filename>.</para>59 fields in this file, see <ulink role='man' url='&man;fstab.5'>fstab(5)</ulink>.</para> 60 60 61 61 <para>Filesystems with MS-DOS or Windows origin (i.e. vfat, ntfs, smbfs, -
chapter10/grub.xml
r648f145 r328eb6f 191 191 </note> 192 192 193 <!-- This does not seem to be true any more194 <note><para><application>grub-install</application> is a script and calls another195 program, grub-probe, that may fail with a message "cannot stat `/dev/root'".196 If so, create a temporary symbolic link from your root partition to /dev/root:</para>197 198 <screen role="nodump"><userinput>ln -sv /dev/sda2 /dev/root</userinput></screen>199 200 <para>The symbolic link will only be present until the system is rebooted.201 The link is only needed for the installation procedure.202 </para></note>203 -->204 193 </sect2> 205 194 -
chapter10/kernel.xml
r648f145 r328eb6f 88 88 89 89 <para>There are several ways to configure the kernel options. Usually, 90 This is done through a menu-driven interface, for example:</para>90 this is done through a menu-driven interface, for example:</para> 91 91 92 92 <screen role="nodump"><userinput>make menuconfig</userinput></screen> … … 305 305 documentation in the <filename 306 306 class="directory">linux-&linux-version;/Documentation</filename> directory. 307 Also, <filename>modprobe.d(5)</filename> may be of interest.</para> 307 Also, <ulink role='man' url='&man;modprobe.d.5'>modprobe.d(5)</ulink> 308 may be of interest.</para> 308 309 309 310 <para>Unless module support has been disabled in the kernel configuration, -
chapter11/afterlfs.xml
r648f145 r328eb6f 131 131 mounttype run tmpfs run 132 132 if [ -h $LFS/dev/shm ]; then 133 mkdir -pv $LFS/$(readlink $LFS/dev/shm)133 install -v -d -m 1777 $LFS$(realpath /dev/shm) 134 134 else 135 135 mounttype dev/shm tmpfs tmpfs -o nosuid,nodev -
general.ent
r648f145 r328eb6f 93 93 <!ENTITY secadv "&lfs-root;lfs/advisories/"> 94 94 95 <!-- 4.1 4 EOL is Jan202496 so for LFS 1 1.5 we may consider moving to 4.19-->97 <!ENTITY min-kernel "4.1 4">95 <!-- 4.19 EOL is Dec 2024 96 so for LFS 12.3 we may consider moving to 5.4 --> 97 <!ENTITY min-kernel "4.19"> 98 98 99 99 <!-- … … 126 126 <!ENTITY pypi-home "https://pypi.org/project"> 127 127 <!ENTITY pypi-src "https://pypi.org/packages/source"> 128 <!ENTITY man "https://man.archlinux.org/man/"> 128 129 129 130 <!ENTITY root "<systemitem class='username'>root</systemitem>"> -
lfs-latest-git.php
r648f145 r328eb6f 153 153 if ( $package == "vim" ) $dirpath = "https://github.com/vim/vim/tags"; 154 154 if ( $package == "wheel" ) $dirpath = "https://pypi.org/project/wheel/#files"; 155 if ( $package == "xz" ) $dirpath = github("tukaani-project/xz"); 155 156 if ( $package == "zlib" ) $dirpath = "https://www.zlib.net"; 156 157 if ( $package == "zstd" ) $dirpath = github("facebook/zstd"); -
packages.ent
r648f145 r328eb6f 14 14 --> 15 15 16 <!ENTITY acl-version "2.3. 1">17 <!ENTITY acl-size "3 48KB">16 <!ENTITY acl-version "2.3.2"> 17 <!ENTITY acl-size "363 KB"> 18 18 <!ENTITY acl-url "&savannah;/releases/acl/acl-&acl-version;.tar.xz"> 19 <!ENTITY acl-md5 " 95ce715fe09acca7c12d3306d0f076b2">19 <!ENTITY acl-md5 "590765dee95907dbc3c856f7255bd669"> 20 20 <!ENTITY acl-home "&savannah-nongnu;/projects/acl"> 21 <!ENTITY acl-fin-du "6. 1MB">21 <!ENTITY acl-fin-du "6.3 MB"> 22 22 <!ENTITY acl-fin-sbu "less than 0.1 SBU"> 23 23 … … 27 27 <!ENTITY attr-md5 "227043ec2f6ca03c0948df5517f9c927"> 28 28 <!ENTITY attr-home "&savannah-nongnu;/projects/attr"> 29 <!ENTITY attr-fin-du "4. 1MB">29 <!ENTITY attr-fin-du "4.2 MB"> 30 30 <!ENTITY attr-fin-sbu "less than 0.1 SBU"> 31 31 … … 35 35 <!ENTITY autoconf-md5 "1be79f7106ab6767f18391c5e22be701"> 36 36 <!ENTITY autoconf-home "&gnu-software;autoconf/"> 37 <!ENTITY autoconf-fin-du "2 4MB">38 <!ENTITY autoconf-fin-sbu-tests " 6.0">37 <!ENTITY autoconf-fin-du "25 MB"> 38 <!ENTITY autoconf-fin-sbu-tests "0.5"> 39 39 <!ENTITY autoconf-fin-sbu "less than 0.1 SBU (about &autoconf-fin-sbu-tests; SBU with tests)"> 40 40 … … 45 45 <!ENTITY automake-md5 "4017e96f89fca45ca946f1c5db6be714"> 46 46 <!ENTITY automake-home "&gnu-software;automake/"> 47 <!ENTITY automake-fin-du "11 4MB">48 <!ENTITY automake-fin-sbu "less than 0.1 SBU (about 7.0SBU with tests)">47 <!ENTITY automake-fin-du "115 MB"> 48 <!ENTITY automake-fin-sbu "less than 0.1 SBU (about 1.6 SBU with tests)"> 49 49 50 50 <!ENTITY bash-version "5.2.21"> … … 56 56 <!ENTITY bash-tmp-sbu "0.2 SBU"> 57 57 <!ENTITY bash-fin-du "52 MB"> 58 <!ENTITY bash-fin-sbu "1. 1SBU">58 <!ENTITY bash-fin-sbu "1.2 SBU"> 59 59 60 60 <!ENTITY bc-version "6.7.5"> … … 63 63 <!ENTITY bc-md5 "e249b1f86f886d6fb71c15f72b65dd3d"> 64 64 <!ENTITY bc-home "https://git.gavinhoward.com/gavin/bc"> 65 <!ENTITY bc-fin-du "7. 7MB">65 <!ENTITY bc-fin-du "7.8 MB"> 66 66 <!ENTITY bc-fin-sbu "less than 0.1 SBU"> 67 67 68 <!ENTITY binutils-version "2.4 1">69 <!ENTITY binutils-size "26, 139KB">68 <!ENTITY binutils-version "2.42"> 69 <!ENTITY binutils-size "26,922 KB"> 70 70 <!ENTITY binutils-url "https://sourceware.org/pub/binutils/releases/binutils-&binutils-version;.tar.xz"> 71 <!ENTITY binutils-md5 " 256d7e0ad998e423030c84483a7c1e30">71 <!ENTITY binutils-md5 "a075178a9646551379bfb64040487715"> 72 72 <!ENTITY binutils-home "&gnu-software;binutils/"> 73 <!ENTITY binutils-tmpp1-du "6 47MB">73 <!ENTITY binutils-tmpp1-du "663 MB"> 74 74 <!ENTITY binutils-tmpp1-sbu "1 SBU"> 75 <!ENTITY binutils-tmpp2-du "5 23MB">75 <!ENTITY binutils-tmpp2-du "537 MB"> 76 76 <!ENTITY binutils-tmpp2-sbu "0.5 SBU"> 77 77 <!ENTITY binutils-fin-du "2.7 GB"> … … 87 87 <!ENTITY bison-tmp-sbu "0.2 SBU"> 88 88 <!ENTITY bison-fin-du "62 MB"> 89 <!ENTITY bison-fin-sbu "2. 2SBU">89 <!ENTITY bison-fin-sbu "2.3 SBU"> 90 90 91 91 <!ENTITY bzip2-version "1.0.8"> … … 110 110 <!ENTITY coreutils-md5 "459e9546074db2834eefe5421f250025"> 111 111 <!ENTITY coreutils-home "&gnu-software;coreutils/"> 112 <!ENTITY coreutils-tmp-du "1 68MB">112 <!ENTITY coreutils-tmp-du "173 MB"> 113 113 <!ENTITY coreutils-tmp-sbu "0.3 SBU"> 114 <!ENTITY coreutils-fin-du "1 65 MB">115 <!ENTITY coreutils-fin-sbu " 0.9SBU">114 <!ENTITY coreutils-fin-du "175 MB"> 115 <!ENTITY coreutils-fin-sbu "1/0 SBU"> 116 116 117 117 <!ENTITY dbus-version "1.14.10"> … … 129 129 <!ENTITY dejagnu-home "&gnu-software;dejagnu/"> 130 130 <!ENTITY dejagnu-tmp-du "6.9 MB"> 131 <!ENTITY dejagnu-tmp-sbu " less than0.1 SBU">131 <!ENTITY dejagnu-tmp-sbu "0.1 SBU"> 132 132 133 133 <!ENTITY diffutils-version "3.10"> … … 147 147 <!ENTITY e2fsprogs-home "http://e2fsprogs.sourceforge.net/"> 148 148 <!ENTITY e2fsprogs-fin-du "95 MB"> 149 <!ENTITY e2fsprogs-fin-sbu "2.4 SBU on a spinning disk, 0. 6SBU on an SSD">149 <!ENTITY e2fsprogs-fin-sbu "2.4 SBU on a spinning disk, 0.4 SBU on an SSD"> 150 150 151 151 <!ENTITY elfutils-version "0.190"> <!-- libelf --> … … 154 154 <!ENTITY elfutils-md5 "79ad698e61a052bea79e77df6a08bc4b"> 155 155 <!ENTITY elfutils-home "https://sourceware.org/elfutils/"> 156 <!ENTITY elfutils-fin-du "12 2MB">156 <!ENTITY elfutils-fin-du "124 MB"> 157 157 <!ENTITY elfutils-fin-sbu "0.3 SBU"> 158 158 159 <!ENTITY expat-version "2. 5.0">160 <!ENTITY expat-size "4 50KB">159 <!ENTITY expat-version "2.6.0"> 160 <!ENTITY expat-size "473 KB"> 161 161 <!ENTITY expat-url "&sourceforge;expat/expat-&expat-version;.tar.xz"> 162 <!ENTITY expat-md5 " ac6677b6d1b95d209ab697ce8b688704">162 <!ENTITY expat-md5 "bd169cb11f4b9bdfddadf9e88a5c4d4b"> 163 163 <!ENTITY expat-home "https://libexpat.github.io/"> 164 <!ENTITY expat-fin-du "1 2MB">164 <!ENTITY expat-fin-du "13 MB"> 165 165 <!ENTITY expat-fin-sbu "0.1 SBU"> 166 166 … … 206 206 <!ENTITY flit-core-md5 "3bc52f1952b9a78361114147da63c35b"> 207 207 <!ENTITY flit-core-home "&pypi-home;/flit-core/"> 208 <!ENTITY flit-core-fin-du "1. 7MB">208 <!ENTITY flit-core-fin-du "1.6 MB"> 209 209 <!ENTITY flit-core-fin-sbu "less than 0.1 SBU"> 210 210 … … 214 214 <!ENTITY gawk-md5 "97c5a7d83f91a7e1b2035ebbe6ac7abd"> 215 215 <!ENTITY gawk-home "&gnu-software;gawk/"> 216 <!ENTITY gawk-tmp-du "4 8MB">216 <!ENTITY gawk-tmp-du "47 MB"> 217 217 <!ENTITY gawk-tmp-sbu "0.1 SBU"> 218 <!ENTITY gawk-fin-du "4 6MB">218 <!ENTITY gawk-fin-du "42 MB"> 219 219 <!ENTITY gawk-fin-sbu "0.1 SBU"> 220 220 … … 224 224 <!ENTITY gcc-md5 "e0e48554cc6e4f261d55ddee9ab69075"> 225 225 <!ENTITY gcc-home "https://gcc.gnu.org/"> 226 <!ENTITY gcc-tmpp1-du "4. 2GB">227 <!ENTITY gcc-tmpp1-sbu "3. 5SBU">226 <!ENTITY gcc-tmpp1-du "4.1 GB"> 227 <!ENTITY gcc-tmpp1-sbu "3.8 SBU"> 228 228 <!ENTITY gcc-tmpp2-du "4.8 GB"> 229 <!ENTITY gcc-tmpp2-sbu "4. 3SBU">229 <!ENTITY gcc-tmpp2-sbu "4.4 SBU"> 230 230 <!ENTITY gcc-fin-du "5.5 GB "> 231 231 <!ENTITY gcc-fin-sbu "42 SBU (with tests)"> … … 244 244 <!ENTITY gdbm-home "&gnu-software;gdbm/"> 245 245 <!ENTITY gdbm-fin-du "13 MB"> 246 <!ENTITY gdbm-fin-sbu " less than0.1 SBU">246 <!ENTITY gdbm-fin-sbu "0.1 SBU"> 247 247 248 248 <!ENTITY gettext-version "0.22.4"> … … 256 256 <!ENTITY gettext-fin-sbu "1.4 SBU"> 257 257 258 <!ENTITY glibc-version "2.3 8">259 <!ENTITY glibc-size "18, 471KB">258 <!ENTITY glibc-version "2.39"> 259 <!ENTITY glibc-size "18,092 KB"> 260 260 <!ENTITY glibc-url "&gnu;glibc/glibc-&glibc-version;.tar.xz"> 261 <!ENTITY glibc-md5 " 778cce0ea6bf7f84ca8caacf4a01f45b">261 <!ENTITY glibc-md5 "be81e87f72b5ea2c0ffe2bedfeb680c6"> 262 262 <!ENTITY glibc-home "&gnu-software;libc/"> 263 <!ENTITY glibc-tmp-du "8 58MB">264 <!ENTITY glibc-tmp-sbu "1. 6SBU">265 <!ENTITY glibc-fin-du "3. 0GB">266 <!ENTITY glibc-fin-sbu "1 1SBU">263 <!ENTITY glibc-tmp-du "846 MB"> 264 <!ENTITY glibc-tmp-sbu "1.5 SBU"> 265 <!ENTITY glibc-fin-du "3.1 GB"> 266 <!ENTITY glibc-fin-sbu "12 SBU"> 267 267 268 268 <!ENTITY gmp-version "6.3.0"> … … 305 305 <!ENTITY grub-md5 "60c564b1bdc39d8e43b3aab4bc0fb140"> 306 306 <!ENTITY grub-home "&gnu-software;grub/"> 307 <!ENTITY grub-fin-du "16 1MB">307 <!ENTITY grub-fin-du "166 MB"> 308 308 <!ENTITY grub-fin-sbu "0.3 SBU"> 309 309 … … 318 318 <!ENTITY gzip-fin-sbu "0.3 SBU"> 319 319 320 <!ENTITY iana-etc-version "202401 17">321 <!ENTITY iana-etc-size "5 96KB">320 <!ENTITY iana-etc-version "20240125"> 321 <!ENTITY iana-etc-size "589 KB"> 322 322 <!ENTITY iana-etc-url "https://github.com/Mic92/iana-etc/releases/download/&iana-etc-version;/iana-etc-&iana-etc-version;.tar.gz"> 323 <!ENTITY iana-etc-md5 " 215feb4b55043a6c18e84a5ed58b705f">323 <!ENTITY iana-etc-md5 "aed66d04de615d76c70890233081e584"> 324 324 <!ENTITY iana-etc-home "https://www.iana.org/protocols"> 325 325 <!ENTITY iana-etc-fin-du "4.8 MB"> … … 331 331 <!ENTITY inetutils-md5 "9e5a6dfd2d794dc056a770e8ad4a9263"> 332 332 <!ENTITY inetutils-home "&gnu-software;inetutils/"> 333 <!ENTITY inetutils-fin-du "3 1MB">333 <!ENTITY inetutils-fin-du "35 MB"> 334 334 <!ENTITY inetutils-fin-sbu "0.2 SBU"> 335 335 … … 354 354 <!ENTITY jinja2-url "&pypi-src;/J/Jinja2/Jinja2-&jinja2-version;.tar.gz"> 355 355 <!ENTITY jinja2-md5 "caf5418c851eac59e70a78d9730d4cea"> 356 <!ENTITY jinja2-home "https://jinja.palletsprojects.com/en/3. 0.x/">357 <!ENTITY jinja2-fin-du "3. 4MB">356 <!ENTITY jinja2-home "https://jinja.palletsprojects.com/en/3.1.x/"> 357 <!ENTITY jinja2-fin-du "3.2 MB"> 358 358 <!ENTITY jinja2-fin-sbu "less than 0.1 SBU"> 359 359 … … 363 363 <!ENTITY kbd-md5 "e2fd7adccf6b1e98eb1ae8d5a1ce5762"> 364 364 <!ENTITY kbd-home "https://kbd-project.org/"> 365 <!ENTITY kbd-fin-du "3 5MB">365 <!ENTITY kbd-fin-du "34 MB"> 366 366 <!ENTITY kbd-fin-sbu "0.1 SBU"> 367 367 … … 420 420 <!ENTITY libtool-home "&gnu-software;libtool/"> 421 421 <!ENTITY libtool-fin-du "45 MB"> 422 <!ENTITY libtool-fin-sbu " 1.3SBU">422 <!ENTITY libtool-fin-sbu "0.6 SBU"> 423 423 424 424 <!ENTITY libxcrypt-version "4.4.36"> … … 432 432 <!ENTITY linux-major-version "6"> 433 433 <!ENTITY linux-minor-version "7"> 434 <!ENTITY linux-patch-version " 1">434 <!ENTITY linux-patch-version "4"> 435 435 <!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">--> 436 436 <!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;"> 437 <!ENTITY linux-size "138, 096KB">437 <!ENTITY linux-size "138,130 KB"> 438 438 <!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz"> 439 <!ENTITY linux-md5 " d8a7394e0e349dd373e9722e141c8b61">439 <!ENTITY linux-md5 "370e1b6155ae63133380e421146619e0"> 440 440 <!ENTITY linux-home "https://www.kernel.org/"> 441 441 <!-- measured for 6.5.3 / gcc-13.2.0 on x86_64 with -j4 : minimum is … … 476 476 <!ENTITY man-db-md5 "67e0052fa200901b314fad7b68c9db27"> 477 477 <!ENTITY man-db-home "https://www.nongnu.org/man-db/"> 478 <!ENTITY man-db-fin-du "4 0MB">478 <!ENTITY man-db-fin-du "41 MB"> 479 479 <!ENTITY man-db-fin-sbu "0.2 SBU"> 480 480 481 <!ENTITY man-pages-version "6.0 5.01">482 <!ENTITY man-pages-size "2,1 44KB">481 <!ENTITY man-pages-version "6.06"> 482 <!ENTITY man-pages-size "2,116 KB"> 483 483 <!ENTITY man-pages-url "&kernel;linux/docs/man-pages/man-pages-&man-pages-version;.tar.xz"> 484 <!ENTITY man-pages-md5 " de4563b797cf9b1e0b0d73628b35e442">484 <!ENTITY man-pages-md5 "26b39e38248144156d437e1e10cb20bf"> 485 485 <!ENTITY man-pages-home "https://www.kernel.org/doc/man-pages/"> 486 486 <!ENTITY man-pages-fin-du "33 MB"> 487 487 <!ENTITY man-pages-fin-sbu "less than 0.1 SBU"> 488 488 489 <!ENTITY markupsafe-version "2.1. 4">490 <!ENTITY markupsafe-size " 20KB">489 <!ENTITY markupsafe-version "2.1.5"> 490 <!ENTITY markupsafe-size "19 KB"> 491 491 <!ENTITY markupsafe-url "&pypi-src;/M/MarkupSafe/MarkupSafe-&markupsafe-version;.tar.gz"> 492 <!ENTITY markupsafe-md5 "8 138329a11cf4bd0f9db780b2af26c66">492 <!ENTITY markupsafe-md5 "8fe7227653f2fb9b1ffe7f9f2058998a"> 493 493 <!ENTITY markupsafe-home "https://palletsprojects.com/p/markupsafe/"> 494 <!ENTITY markupsafe-fin-du "5 48 KB">494 <!ENTITY markupsafe-fin-du "508 KB"> 495 495 <!ENTITY markupsafe-fin-sbu "less than 0.1 SBU"> 496 496 497 <!ENTITY meson-version "1.3. 1">497 <!ENTITY meson-version "1.3.2"> 498 498 <!ENTITY meson-size "2,172 KB"> 499 499 <!ENTITY meson-url "&github;/mesonbuild/meson/releases/download/&meson-version;/meson-&meson-version;.tar.gz"> 500 <!ENTITY meson-md5 " dd404b8c0f8b79f80181b4a58bb81768">500 <!ENTITY meson-md5 "2d0ebd3a24249617b1c4d30026380cf8"> 501 501 <!ENTITY meson-home "https://mesonbuild.com"> 502 502 <!ENTITY meson-fin-du "42 MB"> … … 516 516 <!ENTITY mpfr-md5 "523c50c6318dde6f9dc523bc0244690a"> 517 517 <!ENTITY mpfr-home "https://www.mpfr.org/"> 518 <!ENTITY mpfr-fin-du "4 3MB">519 <!ENTITY mpfr-fin-sbu "0. 2SBU">518 <!ENTITY mpfr-fin-du "44 MB"> 519 <!ENTITY mpfr-fin-sbu "0.3 SBU"> 520 520 521 521 <!ENTITY ncurses-release "6.4"> … … 540 540 <!ENTITY ninja-fin-sbu "0.3 SBU"> 541 541 542 <!ENTITY openssl-version "3.2. 0">543 <!ENTITY openssl-size "17, 284KB">542 <!ENTITY openssl-version "3.2.1"> 543 <!ENTITY openssl-size "17,318 KB"> 544 544 <!ENTITY openssl-url "https://www.openssl.org/source/openssl-&openssl-version;.tar.gz"> 545 <!ENTITY openssl-md5 " 7903549a14abebc5c323ce4e85f2cbb2">545 <!ENTITY openssl-md5 "c239213887804ba00654884918b37441"> 546 546 <!ENTITY openssl-home "https://www.openssl.org/"> 547 <!ENTITY openssl-fin-du " 587MB">548 <!ENTITY openssl-fin-sbu " 3.0SBU">547 <!ENTITY openssl-fin-du "805 MB"> 548 <!ENTITY openssl-fin-sbu "1.8 SBU"> 549 549 550 550 <!ENTITY patch-version "2.7.6"> … … 570 570 <!ENTITY perl-tmp-sbu "0.6 SBU"> 571 571 <!ENTITY perl-fin-du "239 MB"> 572 <!ENTITY perl-fin-sbu " 7.1SBU">573 574 <!ENTITY pkgconf-version "2.1. 0">572 <!ENTITY perl-fin-sbu "1.5 SBU"> 573 574 <!ENTITY pkgconf-version "2.1.1"> 575 575 <!ENTITY pkgconf-size "305 KB"> 576 576 <!ENTITY pkgconf-url "https://distfiles.ariadne.space/pkgconf/pkgconf-&pkgconf-version;.tar.xz"> 577 <!ENTITY pkgconf-md5 " 0f2eadbb9dea5aed95147272ae1592cc">577 <!ENTITY pkgconf-md5 "bc29d74c2483197deb9f1f3b414b7918"> 578 578 <!ENTITY pkgconf-home "http://pkgconf.org/"> 579 579 <!ENTITY pkgconf-fin-du "4.6 MB"> … … 585 585 <!ENTITY procps-ng-md5 "2f747fc7df8ccf402d03e375c565cf96"> 586 586 <!ENTITY procps-ng-home "https://sourceforge.net/projects/procps-ng"> 587 <!ENTITY procps-ng-fin-du "2 5MB">587 <!ENTITY procps-ng-fin-du "27 MB"> 588 588 <!ENTITY procps-ng-fin-sbu "0.1 SBU"> 589 589 … … 599 599 meson pages will be needed: python3.6 and python3.6m --> 600 600 601 <!ENTITY python-version "3.12. 1">601 <!ENTITY python-version "3.12.2"> 602 602 <!ENTITY python-minor "3.12"> 603 <!ENTITY python-size "20,10 2KB">603 <!ENTITY python-size "20,109 KB"> 604 604 <!ENTITY python-url "https://www.python.org/ftp/python/&python-version;/Python-&python-version;.tar.xz"> 605 <!ENTITY python-md5 " 50f827c800483776c8ef86e6a53831fa">605 <!ENTITY python-md5 "e7c178b97bf8f7ccd677b94d614f7b3c"> 606 606 <!ENTITY python-home "https://www.python.org/"> 607 <!ENTITY python-tmp-du "5 33MB">608 <!ENTITY python-tmp-sbu "0. 4SBU">609 <!ENTITY python-fin-du " 370MB">610 <!ENTITY python-fin-sbu "1. 9SBU">607 <!ENTITY python-tmp-du "598 MB"> 608 <!ENTITY python-tmp-sbu "0.5 SBU"> 609 <!ENTITY python-fin-du "485 MB"> 610 <!ENTITY python-fin-sbu "1.8 SBU"> 611 611 <!ENTITY python-docs-url "https://www.python.org/ftp/python/doc/&python-version;/python-&python-version;-docs-html.tar.bz2"> 612 <!ENTITY python-docs-md5 " d5c21b804c219b06256495eae30fd153">613 <!ENTITY python-docs-size " 7,998KB">612 <!ENTITY python-docs-md5 "8a6310f6288e7f60c3565277ec3b5279"> 613 <!ENTITY python-docs-size "8,065 KB"> 614 614 615 615 <!ENTITY readline-version "8.2"> … … 632 632 <!ENTITY sed-fin-sbu "0.3 SBU"> 633 633 634 <!ENTITY setuptools-version "69. 0.3">634 <!ENTITY setuptools-version "69.1.0"> 635 635 <!ENTITY setuptools-size "2,168 KB"> 636 636 <!ENTITY setuptools-url "&pypi-src;/s/setuptools/setuptools-&setuptools-version;.tar.gz"> 637 <!ENTITY setuptools-md5 " b82de45aaa6b9bb911226660212ebb83">637 <!ENTITY setuptools-md5 "6f6eb780ce12c90d81ce243747ed7ab0"> 638 638 <!ENTITY setuptools-home "&pypi-home;/setuptools/"> 639 <!ENTITY setuptools-fin-du " 30 MB">640 <!ENTITY setuptools-fin-sbu " 0.1 SBU">641 642 <!ENTITY shadow-version "4.14. 3">643 <!ENTITY shadow-size "1,76 0KB">639 <!ENTITY setuptools-fin-du "20 MB"> 640 <!ENTITY setuptools-fin-sbu "less than 0.1 SBU"> 641 642 <!ENTITY shadow-version "4.14.5"> 643 <!ENTITY shadow-size "1,765 KB"> 644 644 <!ENTITY shadow-url "&github;/shadow-maint/shadow/releases/download/&shadow-version;/shadow-&shadow-version;.tar.xz"> 645 <!ENTITY shadow-md5 " b9a7f56d0c63297c0d11d742be2f8ffd">645 <!ENTITY shadow-md5 "452b0e59f08bf618482228ba3732d0ae"> 646 646 <!ENTITY shadow-home "&github;/shadow-maint/shadow/"> 647 <!ENTITY shadow-fin-du "4 6MB">647 <!ENTITY shadow-fin-du "49 MB"> 648 648 <!ENTITY shadow-fin-sbu "0.1 SBU"> 649 649 … … 670 670 <!ENTITY systemd-man-url "&anduin-sources;/systemd-man-pages-&systemd-man-version;.tar.xz"> 671 671 <!ENTITY systemd-man-md5 "1ebe54d7a80f9abf8f2d14ddfeb2432d"> 672 <!ENTITY systemd-fin-du "2 38MB">672 <!ENTITY systemd-fin-du "247 MB"> 673 673 <!ENTITY systemd-fin-sbu "0.7 SBU"> 674 674 … … 678 678 <!ENTITY sysvinit-md5 "81a05f28d7b67533cfc778fcadea168c"> 679 679 <!ENTITY sysvinit-home "&savannah-nongnu;/projects/sysvinit"> 680 <!ENTITY sysvinit-fin-du " 4.5 MB">680 <!ENTITY sysvinit-fin-du "3.5 MB"> 681 681 <!ENTITY sysvinit-fin-sbu "less than 0.1 SBU"> 682 682 … … 689 689 <!ENTITY tar-tmp-sbu "0.1 SBU"> 690 690 <!ENTITY tar-fin-du "43 MB"> 691 <!ENTITY tar-fin-sbu " 1.7SBU">691 <!ENTITY tar-fin-sbu "0.5 SBU"> 692 692 693 693 <!ENTITY tcl-version "8.6.13"> … … 708 708 <!ENTITY texinfo-md5 "edd9928b4a3f82674bcc3551616eef3b"> 709 709 <!ENTITY texinfo-home "&gnu-software;texinfo/"> 710 <!ENTITY texinfo-tmp-du "1 16MB">711 <!ENTITY texinfo-tmp-sbu "0. 1SBU">712 <!ENTITY texinfo-fin-du "1 28MB">710 <!ENTITY texinfo-tmp-du "130 MB"> 711 <!ENTITY texinfo-tmp-sbu "0.2 SBU"> 712 <!ENTITY texinfo-fin-du "139 MB"> 713 713 <!ENTITY texinfo-fin-sbu "0.3 SBU"> 714 714 715 <!ENTITY tzdata-version "202 3d">716 <!ENTITY tzdata-size "44 0KB">715 <!ENTITY tzdata-version "2024a"> 716 <!ENTITY tzdata-size "444 KB"> 717 717 <!ENTITY tzdata-url "https://www.iana.org/time-zones/repository/releases/tzdata&tzdata-version;.tar.gz"> 718 <!ENTITY tzdata-md5 " 08b9d559939670725ec298fdbb029649">718 <!ENTITY tzdata-md5 "2349edd8335245525cc082f2755d5bf4"> 719 719 <!ENTITY tzdata-home "https://www.iana.org/time-zones"> 720 720 721 <!ENTITY udev-fin-du "1 38MB">721 <!ENTITY udev-fin-du "144 MB"> 722 722 <!ENTITY udev-fin-sbu "0.2 SBU"> 723 723 … … 734 734 <!ENTITY util-linux-md5 "f3591e6970c017bb4bcd24ae762a98f5"> 735 735 <!ENTITY util-linux-home "https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/"> 736 <!ENTITY util-linux-tmp-du "1 69MB">736 <!ENTITY util-linux-tmp-du "172 MB"> 737 737 <!ENTITY util-linux-tmp-sbu "0.2 SBU"> 738 <!ENTITY util-linux-fin-du "31 0MB">738 <!ENTITY util-linux-fin-du "313 MB"> 739 739 <!ENTITY util-linux-fin-sbu "0.5 SBU"> 740 740 … … 747 747 <!ENTITY vim-md5 "79dfe62be5d347b1325cbd5ce2a1f9b3"> 748 748 <!ENTITY vim-home "https://www.vim.org"> 749 <!ENTITY vim-fin-du "2 29MB">750 <!ENTITY vim-fin-sbu "2. 3SBU">749 <!ENTITY vim-fin-du "236 MB"> 750 <!ENTITY vim-fin-sbu "2.5 SBU"> 751 751 752 752 <!ENTITY wheel-version "0.42.0"> … … 763 763 <!ENTITY xml-parser-md5 "89a8e82cfd2ad948b349c0a69c494463"> 764 764 <!ENTITY xml-parser-home "&github;/chorny/XML-Parser"> 765 <!ENTITY xml-parser-fin-du "2. 3MB">765 <!ENTITY xml-parser-fin-du "2.4 MB"> 766 766 <!ENTITY xml-parser-fin-sbu "less than 0.1 SBU"> 767 767 768 <!ENTITY xz-version "5.4. 5">769 <!ENTITY xz-size "1,64 2KB">770 <!ENTITY xz-url "https:// tukaani.org/xz/xz-&xz-version;.tar.xz">771 <!ENTITY xz-md5 " 1d33e0be05c53e7a5641acf5c8b35fdd">768 <!ENTITY xz-version "5.4.6"> 769 <!ENTITY xz-size "1,645 KB"> 770 <!ENTITY xz-url "https://github.com/tukaani-project/xz/releases/download/v&xz-version;/xz-&xz-version;.tar.xz"> 771 <!ENTITY xz-md5 "7ade7bd1181a731328f875bec62a9377"> 772 772 <!ENTITY xz-home "https://tukaani.org/xz"> 773 773 <!ENTITY xz-tmp-du "22 MB"> 774 774 <!ENTITY xz-tmp-sbu "0.1 SBU"> 775 <!ENTITY xz-fin-du "2 4MB">775 <!ENTITY xz-fin-du "25 MB"> 776 776 <!ENTITY xz-fin-sbu "0.1 SBU"> 777 777 778 <!ENTITY zlib-version "1.3 ">779 <!ENTITY zlib-size "1,4 61KB">778 <!ENTITY zlib-version "1.3.1"> 779 <!ENTITY zlib-size "1,478 KB"> 780 780 <!-- DO NOT remove "fossils"! 781 781 The upstream removes https://zlib.net/zlib-&zlib-version;.tar.xz … … 783 783 Unfortunately there is no .xz files in fossils directory. --> 784 784 <!ENTITY zlib-url "https://zlib.net/fossils/zlib-&zlib-version;.tar.gz"> 785 <!ENTITY zlib-md5 " 60373b133d630f74f4a1f94c1185a53f">785 <!ENTITY zlib-md5 "9855b6d802d7fe5b7bd5b196a2271655"> 786 786 <!ENTITY zlib-home "https://zlib.net/"> 787 <!ENTITY zlib-fin-du "6. 2MB">787 <!ENTITY zlib-fin-du "6.4 MB"> 788 788 <!ENTITY zlib-fin-sbu "less than 0.1 SBU"> 789 789 … … 794 794 <!ENTITY zstd-home "https://facebook.github.io/zstd/"> 795 795 <!ENTITY zstd-fin-du "77 MB"> 796 <!ENTITY zstd-fin-sbu "0. 4SBU">797 796 <!ENTITY zstd-fin-sbu "0.5 SBU"> 797 -
part3intro/toolchaintechnotes.xml
r648f145 r328eb6f 57 57 <varlistentry><term>The build</term><listitem> 58 58 <para>is the machine where we build programs. Note that this machine 59 is also referred to as the <quote>host </quote>.</para></listitem>59 is also referred to as the <quote>host.</quote></para></listitem> 60 60 </varlistentry> 61 61 -
patches.ent
r648f145 r328eb6f 2 2 3 3 <!-- Start of Common Patches --> 4 5 <!ENTITY bash-upstream-fixes-patch "bash-&bash-version;-upstream_fixes-1.patch"> 6 <!ENTITY bash-upstream-fixes-patch-md5 "2d1691a629c558e894dbb78ee6bf34ef"> 7 <!ENTITY bash-upstream-fixes-patch-size "5.9 KB"> 4 8 5 9 <!ENTITY bzip2-docs-patch "bzip2-&bzip2-version;-install_docs-1.patch"> … … 14 18 <!ENTITY glibc-fhs-patch-md5 "9a5997c3452909b1769918c759eff8a2"> 15 19 <!ENTITY glibc-fhs-patch-size "2.8 KB"> 16 17 <!ENTITY glibc-upstream-fixes-patch "glibc-&glibc-version;-upstream_fixes- 3.patch">18 <!ENTITY glibc-upstream-fixes-patch-md5 " 545977e0b5c341ba945cf4b5de92f1e2">19 <!ENTITY glibc-upstream-fixes-patch-size " 28KB">20 20 <!-- 21 <!ENTITY glibc-upstream-fixes-patch "glibc-&glibc-version;-upstream_fixes-4.patch"> 22 <!ENTITY glibc-upstream-fixes-patch-md5 "66e843b00688c641c9bdda684db45b43"> 23 <!ENTITY glibc-upstream-fixes-patch-size "36 KB"> 24 --> 21 25 <!ENTITY kbd-backspace-patch "kbd-&kbd-version;-backspace-1.patch"> 22 26 <!ENTITY kbd-backspace-patch-md5 "f75cca16a38da6caa7d52151f7136895"> 23 27 <!ENTITY kbd-backspace-patch-size "12 KB"> 24 28 25 <!ENTITY pkgconf-upstream-fix-patch "pkgconf-&pkgconf-version;-upstream_fix-1.patch"> 26 <!ENTITY pkgconf-upstream-fix-patch-md5 "77d5bb10840724a0e3dc08efee548363"> 27 <!ENTITY pkgconf-upstream-fix-patch-size "4 KB"> 28 29 <!ENTITY readline-fixes-patch "readline-&readline-version;-upstream_fixes-2.patch"> 30 <!ENTITY readline-fixes-patch-md5 "d2477ebe908cc99763d90dde7fd9549a"> 31 <!ENTITY readline-fixes-patch-size "5.7 KB"> 29 <!ENTITY readline-fixes-patch "readline-&readline-version;-upstream_fixes-3.patch"> 30 <!ENTITY readline-fixes-patch-md5 "9ed497b6cb8adcb8dbda9dee9ebce791"> 31 <!ENTITY readline-fixes-patch-size "13 KB"> 32 32 33 33 <!ENTITY sysvinit-consolidated-patch "sysvinit-&sysvinit-version;-consolidated-1.patch"> … … 35 35 <!ENTITY sysvinit-consolidated-patch-size "2.5 KB"> 36 36 37 <!ENTITY systemd-upstream-patch "systemd-&systemd-version;-upstream_fixes-1.patch"> 38 <!ENTITY systemd-upstream-patch-md5 "8d9c1014445c463cf7c24c162b1e0686"> 39 <!ENTITY systemd-upstream-patch-size "7.2 KB"> -
prologue/standards.xml
r648f145 r328eb6f 50 50 51 51 <para>While it is possible to create a complete system that will pass the LSB 52 certification tests "from scratch",this can't be done without many additional packages52 certification tests <quote>from scratch,</quote> this can't be done without many additional packages 53 53 that are beyond the scope of the LFS book. Installation instructions for these 54 54 additional packages can be found in BLFS. </para> -
prologue/typography.xml
r648f145 r328eb6f 75 75 <para>This format is used to encapsulate text that is optional.</para> 76 76 77 <para>< filename>passwd(5)</filename></para>77 <para><ulink role='man' url='&man;passwd.5'>passwd(5)</ulink></para> 78 78 79 79 <para>This format is used to refer to a specific manual (man) page. The number inside parentheses … … 82 82 those two man pages will be located at 83 83 <filename>/usr/share/man/man1/passwd.1</filename> and 84 <filename>/usr/share/man/man5/passwd.5</filename>. When the book uses <filename>passwd(5)</filename> it is 84 <filename>/usr/share/man/man5/passwd.5</filename>. When the book uses 85 <ulink role='man' url='&man;/passwd.5'>passwd(5)</ulink> it is 85 86 specifically referring to <filename>/usr/share/man/man5/passwd.5</filename>. 86 87 <command>man passwd</command> will print the first man page it finds that 87 matches <quote>passwd </quote>,which will be88 matches <quote>passwd,</quote> which will be 88 89 <filename>/usr/share/man/man1/passwd.1</filename>. For this example, you will 89 90 need to run <command>man 5 passwd</command> in order to read the page 90 91 being specified. Note that most man pages do not have duplicate 91 92 page names in different sections. Therefore, <command>man <replaceable><program 92 name></replaceable></command> is generally sufficient.</para> 93 name></replaceable></command> is generally sufficient. In the LFS 94 book these references to man pages are also hyperlinks, so clicking on 95 such a reference will open the man page rendered in HTML from 96 <ulink url='https://man.archlinux.org/'>Arch Linux manual 97 pages</ulink>.</para> 93 98 94 99 </sect1> -
stylesheets/dump-commands.xsl
r648f145 r328eb6f 1 <?xml version="1.0" ?>1 <?xml version="1.0" encoding="UTF-8"?> 2 2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 3 xmlns:exsl="http://exslt.org/common"4 extension-element-prefixes="exsl"5 version="1.0">3 xmlns:exsl="http://exslt.org/common" 4 extension-element-prefixes="exsl" 5 version="1.0"> 6 6 7 7 <!-- XSLT stylesheet to extract commands from [B,H]LFS books. --> 8 8 9 9 <xsl:variable name="newline"> 10 <xsl:text> 11 </xsl:text> 10 <xsl:text>
</xsl:text> 12 11 </xsl:variable> 13 12 -
stylesheets/lfs-xsl/chunk-slave.xsl
r648f145 r328eb6f 10 10 <!-- Upstream XHTML presentation templates --> 11 11 <xsl:import href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"/> 12 13 <xsl:param name="chunker.output.method" select="'xml'"/> 14 <xsl:param name="chunker.output.encoding" select="'UTF-8'"/> 15 <xsl:param name="chunker.output.media-type" select="'application/xhtml+xml'"/> 16 <xsl:param name="chunker.output.doctype-public" select="'-//W3C//DTD XHTML 1.0 Strict//EN'"/> 17 <xsl:param name="chunker.output.doctype-system" select="'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'"/> 18 <xsl:param name="chunker.output.omit-xml-declaration" select="'yes'"/> 19 <xsl:param name="chunker.output.indent" select="'no'"/> 12 20 13 21 <!-- Including our customized elements templates --> … … 31 39 <xsl:param name="ulink.target" select="''"/> 32 40 <xsl:param name="css.decoration" select="0"/> 33 34 <!-- No XML declaration -->35 <xsl:param name="chunker.output.omit-xml-declaration" select="'yes'"/>36 41 37 42 <!-- Control generation of ToCs and LoTs --> -
stylesheets/lfs-xsl/lfs-l10n.xml
r648f145 r328eb6f 1 1 <?xml version='1.0' encoding='UTF-8'?> 2 <!DOCTYPE l:i18n SYSTEM "http s://cdn.docbook.org/release/xsl-nons/current/common/l10n.dtd">2 <!DOCTYPE l:i18n SYSTEM "http://cdn.docbook.org/release/xsl-nons/current/common/l10n.dtd"> 3 3 4 4 <l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0"> -
stylesheets/lfs-xsl/lfs.css
r648f145 r328eb6f 1 1 /* Global settings */ 2 2 body { 3 font-family: verdana, tahoma, helvetica,arial, sans-serif;3 font-family: verdana, tahoma, arial, sans-serif; 4 4 text-align: left; 5 5 background: #fff; … … 8 8 padding: 0; 9 9 font-size: 1em; 10 line-height: 1.2em 10 line-height: 1.2em; 11 11 } 12 12 … … 39 39 } 40 40 41 42 /* Sections */ 43 div.sect1, div.appendix { 44 padding-left: .3em; 41 /* Section titles */ 42 h1.sect1, h1.preface, h1.part, h1.chapter, h1.appendix, .glossary h1, .index h1 43 { 44 background: #f5f6f7; 45 border-bottom: .1em solid #dbddec; 46 margin-bottom:1em; 47 margin-top: 0; 48 padding: .4em; 49 } 50 51 /* Scrolling parts 52 The header is taller for sect1 and chapter pages than on the 53 other pages. Since we want fixed boxes, their top has to be calculated 54 by trial and errors to fit below the static header box.*/ 55 56 div.sect1, div.chapter, div.appendix, div.wrap { 57 top: 11.55em; 58 } 59 div.preface, div.part, .index div.index { 60 top: 10.15em; 61 } 62 div.sect1, div.appendix, div.preface, div.part, div.chapter, div.wrap, .index div.index { 63 /* padding-left: .3em;*/ 64 overflow:auto; 65 height: auto; 66 position: fixed; 67 left:1em; 68 right:1em; 69 bottom: 1em; 70 border-bottom: 1em solid #dbddec; 45 71 } 46 72 … … 64 90 border-bottom: 0.2em solid #dbddec; 65 91 padding-top: .1em; 92 /* margin-top: 0;*/ 93 } 94 /* 95 .lfs .package p:first-child { 66 96 margin-top: 0; 67 } 97 }*/ 68 98 69 99 .lfs .configuration { … … 75 105 background: #f5f6f7; 76 106 border-top: 0.2em solid #dbddec; 107 border-bottom: 0.2em solid #dbddec; 77 108 padding-bottom: .1em; 78 margin-bottom: 0; 79 } 80 109 margin-bottom: .5em; 110 } 81 111 82 112 /* Headers */ … … 97 127 } 98 128 99 .preface h1, .part h1, .chapter h1, .appendix h1, .index h1, .sect1 h1, .glossary h1 {100 background: #f5f6f7;101 border-bottom: .1em solid #dbddec;102 margin-bottom: 1em;103 margin-top: 0;104 padding: .4em;105 }106 107 .sect1 h1, .appendix h1 {108 margin-left: -.2em;109 }110 111 129 .wrap h1 { 112 130 background: #f5f6f7; … … 158 176 159 177 div.navheader { 160 border-bottom: 1px solid #dbddec; 161 position: sticky; 162 top: 0; 163 } 164 178 border-bottom: .1em solid #dbddec; 179 } 180 181 /* no need for a footer now that the header is always visible */ 165 182 div.navfooter { 166 border-top: 1px solid #dbddec; 183 display:none; 184 } 185 186 /* Except for the first page (TOC), where the bottom is the only 187 place where navigation is displayed. */ 188 189 div.book + div.navfooter { 190 display:block 167 191 } 168 192 … … 180 204 181 205 div.navheader ul, div.navfooter ul { 182 padding: .2em .5em .5em 0;206 padding: .2em .5em .5em .5em; /*top right bottom left*/ 183 207 margin: .5em 0; 184 208 position: relative; … … 197 221 text-align: left; 198 222 padding: 0.2em 1em; 199 margin-left: 6px;223 margin-left: .4em; 200 224 } 201 225 … … 204 228 display: block; 205 229 text-align: right; 206 right: 5px;207 padding: 0.2em 0.5em;208 margin-right: 7px;230 right: 0; 231 padding: 0.2em 1em; 232 margin-right: .4em; 209 233 } 210 234 … … 212 236 div.navheader ul li.next p, div.navfooter ul li.next p { 213 237 padding: 0; 214 margin: 1px 0px;238 margin: .1em 0; 215 239 } 216 240 … … 219 243 text-align: center; 220 244 padding: 0; 221 margin: 0 pxauto;245 margin: 0 auto; 222 246 display: block; 223 247 color: #dbddec; -
stylesheets/lfs-xsl/nochunks.xsl
r648f145 r328eb6f 11 11 <xsl:import href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"/> 12 12 13 <xsl:output method="xml" 14 encoding="UTF-8" 15 media-type="application/xhtml+xml" 16 doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" 17 doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" 18 omit-xml-declaration="yes" 19 indent="no" /> 13 20 <!-- Include our customized templates --> 14 21 <xsl:include href="common.xsl"/> -
stylesheets/lfs-xsl/pdf.xsl
r648f145 r328eb6f 54 54 See pdf/lfs-mixed.xsl. 55 55 Note: the argument in select= is a zero-width space 56 (unicode 200b , encoded in utf-8)-->57 <xsl:param name="ulink.hyphenate" select="' '"/>56 (unicode 200b)--> 57 <xsl:param name="ulink.hyphenate" select="'​'"/> 58 58 59 59 <!-- List of characters to allow ulink URLs, and supported inline tags, -
stylesheets/lfs-xsl/profile.xsl
r648f145 r328eb6f 19 19 <!-- Generate DocBook instance with correct DOCTYPE --> 20 20 <xsl:output method="xml" 21 encoding="UTF-8" 21 22 doctype-public="-//OASIS//DTD DocBook XML V4.5//EN" 22 23 doctype-system="http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"/> -
stylesheets/lfs-xsl/xhtml/lfs-sections.xsl
r648f145 r328eb6f 12 12 13 13 <!-- preface: 14 Output non sect1 child elements before the TOC --> 14 Output non sect1 child elements before the TOC 15 Output title outside of the <div> because we want to be able to 16 use it at a fixed position --> 15 17 <!-- The original template is in {docbook-xsl}/xhtml/components.xsl --> 16 18 <xsl:template match="preface"> 17 19 <xsl:call-template name="id.warning"/> 20 <xsl:call-template name="preface.titlepage"/> 21 <xsl:call-template name="component.separator"/> 18 22 <div> 19 23 <xsl:apply-templates select="." mode="class.attribute"/> … … 27 31 </xsl:attribute> 28 32 </xsl:if> 29 <xsl:call-template name="component.separator"/>30 <xsl:call-template name="preface.titlepage"/>31 33 <xsl:apply-templates/> 32 34 <xsl:variable name="toc.params"> … … 45 47 </xsl:template> 46 48 49 <!-- part: 50 Output non sect1 child elements before the TOC 51 Output title outside of the <div> because we want to be able to 52 use it at a fixed position --> 53 <!-- The original template is in {docbook-xsl}/xhtml/divisions.xsl --> 54 <xsl:template match="part"> 55 <xsl:call-template name="id.warning"/> 56 57 <xsl:call-template name="part.titlepage"/> 58 59 <div> 60 <xsl:apply-templates select="." mode="common.html.attributes"/> 61 <xsl:call-template name="id.attribute"> 62 <xsl:with-param name="conditional" select="0"/> 63 </xsl:call-template> 64 65 <xsl:apply-templates/> 66 <xsl:variable name="toc.params"> 67 <xsl:call-template name="find.path.params"> 68 <xsl:with-param name="table" select="normalize-space($generate.toc)"/> 69 </xsl:call-template> 70 </xsl:variable> 71 <xsl:if test="not(partintro) and contains($toc.params, 'toc')"> 72 <xsl:call-template name="division.toc"/> 73 </xsl:if> 74 </div> 75 </xsl:template> 76 47 77 <!-- chapter: 48 Output non sect1 child elements before the TOC --> 78 Output non sect1 child elements before the TOC 79 Output title before div to be able to fix the title position --> 49 80 <!-- The original template is in {docbook-xsl}/xhtml/components.xsl --> 50 81 <xsl:template match="chapter"> 51 82 <xsl:call-template name="id.warning"/> 83 <xsl:call-template name="chapter.titlepage"/> 84 <xsl:call-template name="component.separator"/> 52 85 <div> 53 86 <xsl:apply-templates select="." mode="class.attribute"/> … … 61 94 </xsl:attribute> 62 95 </xsl:if> 63 <xsl:call-template name="component.separator"/>64 <xsl:call-template name="chapter.titlepage"/>65 96 <xsl:apply-templates/> 66 97 <xsl:variable name="toc.params"> … … 79 110 </xsl:template> 80 111 112 <!-- appendix: 113 Output non sect1 child elements before the TOC 114 Output title before div to be able to fix the title position --> 115 <!-- The original template is in {docbook-xsl}/xhtml/components.xsl --> 116 <xsl:template match="appendix"> 117 118 <xsl:call-template name="id.warning"/> 119 120 <xsl:call-template name="appendix.titlepage"/> 121 122 <xsl:element name="div" namespace="http://www.w3.org/1999/xhtml"> 123 <xsl:call-template name="common.html.attributes"> 124 <xsl:with-param name="inherit" select="1"/> 125 </xsl:call-template> 126 <xsl:call-template name="id.attribute"> 127 <xsl:with-param name="conditional" select="0"/> 128 </xsl:call-template> 129 130 <xsl:apply-templates/> 131 132 <xsl:variable name="toc.params"> 133 <xsl:call-template name="find.path.params"> 134 <xsl:with-param name="table" select="normalize-space($generate.toc)"/> 135 </xsl:call-template> 136 </xsl:variable> 137 138 <xsl:if test="contains($toc.params, 'toc')"> 139 <xsl:call-template name="component.toc"> 140 <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/> 141 </xsl:call-template> 142 </xsl:if> 143 144 </xsl:element> 145 </xsl:template> 146 81 147 <!-- sect1: 82 148 When there is a role attibute, use it as the class value. 83 149 Process the SVN keywords found in sect1info as a footnote. 150 Output title before the containing <div> so that the title 151 can be at a fixed position. 84 152 Removed unused code. --> 85 153 <!-- The original template is in {docbook-xsl}/xhtml/sections.xsl --> 86 154 <xsl:template match="sect1"> 155 <xsl:call-template name="sect1.titlepage"/> 87 156 <div> 88 157 <xsl:choose> … … 97 166 </xsl:choose> 98 167 <xsl:call-template name="language.attribute"/> 99 <xsl:call-template name="sect1.titlepage"/>100 168 <xsl:apply-templates/> 101 169 <xsl:apply-templates select="sect1info" mode="svn-keys"/> -
stylesheets/md5sum.xsl
r648f145 r328eb6f 4 4 5 5 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 6 version="1.0">6 version="1.0"> 7 7 8 8 <xsl:output method="text"/> … … 32 32 33 33 <!-- Add a newline --> 34 <xsl:text> 35 </xsl:text> 34 <xsl:text>
</xsl:text> 36 35 37 36 </xsl:if> -
stylesheets/wget-list.xsl
r648f145 r328eb6f 5 5 6 6 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 7 version="1.0">7 version="1.0"> 8 8 9 9 <xsl:output method="text"/> … … 29 29 </xsl:otherwise> 30 30 </xsl:choose> 31 <xsl:text> 32 </xsl:text> 31 <xsl:text>
</xsl:text> 33 32 </xsl:if> 34 33 </xsl:template>
Note:
See TracChangeset
for help on using the changeset viewer.