mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-18 19:29:21 +01:00
Merge remote-tracking branch 'origin/trunk' into xry111/arm64
This commit is contained in:
commit
328eb6f3bb
55
Makefile
55
Makefile
@ -1,7 +1,4 @@
|
||||
# vim:ts=3
|
||||
#BASEDIR = ~/lfs-book
|
||||
#SYSDDIR = ~/lfs-systemd
|
||||
#DUMPDIR = ~/lfs-commands
|
||||
RENDERTMP = $(HOME)/tmp
|
||||
CHUNK_QUIET = 1
|
||||
ROOT_ID =
|
||||
@ -24,15 +21,15 @@ ifneq ($(REV), sysv)
|
||||
endif
|
||||
|
||||
ifeq ($(REV), sysv)
|
||||
BASEDIR ?= ~/public_html/lfs-book
|
||||
BASEDIR ?= $(HOME)/public_html/lfs-book
|
||||
PDF_OUTPUT ?= LFS-BOOK.pdf
|
||||
NOCHUNKS_OUTPUT ?= LFS-BOOK.html
|
||||
DUMPDIR ?= ~/lfs-commands
|
||||
DUMPDIR ?= $(HOME)/lfs-commands
|
||||
else
|
||||
BASEDIR ?= ~/public_html/lfs-systemd
|
||||
BASEDIR ?= $(HOME)/public_html/lfs-systemd
|
||||
PDF_OUTPUT ?= LFS-SYSD-BOOK.pdf
|
||||
NOCHUNKS_OUTPUT ?= LFS-SYSD-BOOK.html
|
||||
DUMPDIR ?= ~/lfs-sysd-commands
|
||||
DUMPDIR ?= $(HOME)/lfs-sysd-commands
|
||||
endif
|
||||
|
||||
book: validate profile-html
|
||||
@ -47,7 +44,8 @@ book: validate profile-html
|
||||
@echo "Copying CSS code and images..."
|
||||
$(Q)mkdir -p $(BASEDIR)/stylesheets
|
||||
$(Q)cp stylesheets/lfs-xsl/*.css $(BASEDIR)/stylesheets
|
||||
$(Q)sed -i 's|../stylesheet|stylesheet|' $(BASEDIR)/index.html
|
||||
$(Q)sed -e 's|../stylesheet|stylesheet|' \
|
||||
-i $(BASEDIR)/index.html
|
||||
|
||||
$(Q)mkdir -p $(BASEDIR)/images
|
||||
$(Q)cp images/*.png $(BASEDIR)/images
|
||||
@ -55,11 +53,10 @@ book: validate profile-html
|
||||
@echo "Running Tidy and obfuscate.sh..."
|
||||
$(Q)for filename in `find $(BASEDIR) -name "*.html"`; do \
|
||||
tidy -config tidy.conf $$filename; \
|
||||
true; \
|
||||
/bin/bash obfuscate.sh $$filename; \
|
||||
sed -e "s@text/html@application/xhtml+xml@g" \
|
||||
sed -e "s|text/html|application/xhtml+xml|g" \
|
||||
-i $$filename; \
|
||||
done;
|
||||
done
|
||||
|
||||
$(Q)$(MAKE) --no-print-directory wget-list md5sums
|
||||
|
||||
@ -98,16 +95,16 @@ nochunks: validate profile-html
|
||||
--output $(BASEDIR)/$(NOCHUNKS_OUTPUT) \
|
||||
stylesheets/lfs-nochunks.xsl \
|
||||
$(RENDERTMP)/lfs-html.xml
|
||||
# $(RENDERTMP)/lfs-html2.xml
|
||||
|
||||
@echo "Running Tidy..."
|
||||
$(Q)tidy -config tidy.conf $(BASEDIR)/$(NOCHUNKS_OUTPUT) || true
|
||||
$(Q)tidy -config tidy.conf $(BASEDIR)/$(NOCHUNKS_OUTPUT) || test $$? -le 1
|
||||
|
||||
@echo "Running obfuscate.sh..."
|
||||
$(Q)bash obfuscate.sh $(BASEDIR)/$(NOCHUNKS_OUTPUT)
|
||||
$(Q)sed -i -e "s@text/html@application/xhtml+xml@g" $(BASEDIR)/$(NOCHUNKS_OUTPUT)
|
||||
$(Q)sed -i -e "s@../wget-list@wget-list@" $(BASEDIR)/$(NOCHUNKS_OUTPUT)
|
||||
$(Q)sed -i -e "s@../md5sums@md5sums@" $(BASEDIR)/$(NOCHUNKS_OUTPUT)
|
||||
$(Q)bash obfuscate.sh $(BASEDIR)/$(NOCHUNKS_OUTPUT)
|
||||
$(Q)sed -e "s|text/html|application/xhtml+xml|g" \
|
||||
-e "s|../wget-list|wget-list|" \
|
||||
-e "s|../md5sums|md5sums|" \
|
||||
-i $(BASEDIR)/$(NOCHUNKS_OUTPUT)
|
||||
|
||||
@echo "Output at $(BASEDIR)/$(NOCHUNKS_OUTPUT)"
|
||||
|
||||
@ -126,16 +123,16 @@ validate: tmpdir version
|
||||
@echo "Adjusting for revision $(REV)..."
|
||||
$(Q)xsltproc --nonet \
|
||||
--xinclude \
|
||||
--output $(RENDERTMP)/lfs-html2.xml \
|
||||
--stringparam profile.revision $(REV) \
|
||||
--output $(RENDERTMP)/lfs-html2.xml \
|
||||
stylesheets/lfs-xsl/profile.xsl \
|
||||
index.xml
|
||||
|
||||
@echo "Validating the book..."
|
||||
$(Q)xmllint --nonet \
|
||||
--noent \
|
||||
--postvalid \
|
||||
-o $(RENDERTMP)/lfs-full.xml \
|
||||
$(Q)xmllint --nonet \
|
||||
--encode UTF-8 \
|
||||
--postvalid \
|
||||
--output $(RENDERTMP)/lfs-full.xml \
|
||||
$(RENDERTMP)/lfs-html2.xml
|
||||
|
||||
$(Q)rm -f appendices/*.script
|
||||
@ -157,18 +154,21 @@ wget-list: $(BASEDIR)/wget-list $(BASEDIR)/wget-list-$(REV)
|
||||
$(BASEDIR)/wget-list: stylesheets/wget-list.xsl $(DOWNLOADS_DEP)
|
||||
@echo "Generating consolidated wget list at $(BASEDIR)/wget-list ..."
|
||||
$(Q)mkdir -p $(BASEDIR)
|
||||
$(Q)xsltproc --xinclude --nonet \
|
||||
$(Q)xsltproc --nonet \
|
||||
--xinclude \
|
||||
--output $(BASEDIR)/wget-list \
|
||||
stylesheets/wget-list.xsl \
|
||||
chapter03/chapter03.xml
|
||||
|
||||
$(BASEDIR)/wget-list-$(REV): stylesheets/wget-list.xsl $(DOWNLOADS_DEP)
|
||||
$(Q)xsltproc --nonet --xinclude \
|
||||
$(Q)xsltproc --nonet \
|
||||
--xinclude \
|
||||
--stringparam profile.revision $(REV) \
|
||||
--output $(RENDERTMP)/wget-list.xml \
|
||||
stylesheets/lfs-xsl/profile.xsl \
|
||||
chapter03/chapter03.xml
|
||||
$(Q)xsltproc --xinclude --nonet \
|
||||
|
||||
$(Q)xsltproc --nonet \
|
||||
--output $(BASEDIR)/wget-list-$(REV) \
|
||||
stylesheets/wget-list.xsl \
|
||||
$(RENDERTMP)/wget-list.xml
|
||||
@ -178,13 +178,14 @@ $(BASEDIR)/md5sums: stylesheets/wget-list.xsl $(DOWNLOADS_DEP)
|
||||
@echo "Generating consolidated md5sum file at $(BASEDIR)/md5sums ..."
|
||||
$(Q)mkdir -p $(BASEDIR)
|
||||
|
||||
$(Q)xsltproc --nonet --xinclude \
|
||||
$(Q)xsltproc --nonet \
|
||||
--xinclude \
|
||||
--stringparam profile.revision $(REV) \
|
||||
--output $(RENDERTMP)/md5sum.xml \
|
||||
stylesheets/lfs-xsl/profile.xsl \
|
||||
chapter03/chapter03.xml
|
||||
|
||||
$(Q)xsltproc --xinclude --nonet \
|
||||
$(Q)xsltproc --nonet \
|
||||
--output $(BASEDIR)/md5sums \
|
||||
stylesheets/md5sum.xsl \
|
||||
$(RENDERTMP)/md5sum.xml
|
||||
|
@ -1047,7 +1047,15 @@
|
||||
<segmentedlist id="gettext-optdeps">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
<seg>
|
||||
<ulink url='&blfs-book;general/libunistring.html'>
|
||||
libunistring
|
||||
</ulink>
|
||||
and
|
||||
<ulink url='&blfs-book;general/libxml2.html'>
|
||||
libxml2
|
||||
</ulink>
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1566,7 +1574,9 @@
|
||||
<segmentedlist id="kbd-optdeps">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
<seg>
|
||||
<ulink url="&blfs-book;postlfs/linux-pam.html">Linux-PAM</ulink>
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2470,7 +2480,7 @@
|
||||
<segmentedlist id="perl-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Iana-Etc, Less. and Procps-ng</seg>
|
||||
<seg>Iana-Etc, Less, and Procps-ng</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
|
@ -40,6 +40,124 @@
|
||||
appropriate for the entry or if needed the entire day's listitem.
|
||||
-->
|
||||
|
||||
<listitem>
|
||||
<para>2024-02-14</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.3.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5442'>#5442</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-02-12</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to shadow-4.14.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5437'>#5437</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-69.1.0 (Python module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5439'>#5439</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to python-3.12.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5434'>#5434</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to pkgconf-2.1.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5432'>#5432</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to MarkupSafe-2.1.5 (Python module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5431'>#5431</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to man-pages-6.06. Fixes
|
||||
<ulink url='&lfs-ticket-root;5438'>#5438</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to expat-2.6.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5435'>#5435</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.7.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5433'>#5433</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem revision='systemd'>
|
||||
<para>2024-02-10</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Fix a bug in systemd breaking running
|
||||
systemd-analyze on an instantiated systemd unit.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-02-02</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to tzdata-2024a. Fixes
|
||||
<ulink url='&lfs-ticket-root;5428'>#5428</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to glibc-2.39 (security fix). Fixes
|
||||
<ulink url='&lfs-ticket-root;5426'>#5426</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to linux-6.7.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5427'>#5427</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-02-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to openssl-3.2.1 (security fix). Fixes
|
||||
<ulink url='&lfs-ticket-root;5425'>#5425</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to zlib-1.3.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5419'>#5419</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to xz-5.4.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5423'>#5423</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.7.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5422'>#5422</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240125. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to binutils-2.42. Fixes
|
||||
<ulink url='&lfs-ticket-root;5424'>#5424</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to acl-2.3.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5421'>#5421</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update upstream fixes for readline-8.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5420'>#5420</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Apply upstream fix for bash-5.2.21. Fixes
|
||||
<ulink url='&lfs-ticket-root;5420'>#5420</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-01-21</para>
|
||||
<itemizedlist>
|
||||
@ -579,7 +697,8 @@
|
||||
<ulink url='&lfs-ticket-root;5330'>#5330</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to procps-ng-4.0.4. Fixes
|
||||
<para>[bdubbs] - Update to procps-ng-4.0.4 (security fix
|
||||
for 32-bit systems). Fixes
|
||||
<ulink url='&lfs-ticket-root;5335'>#5335</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
|
@ -26,9 +26,9 @@
|
||||
<!--<listitem>
|
||||
<para>None</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Acl-&acl-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Attr-&attr-version;</para>
|
||||
</listitem>
|
||||
@ -44,9 +44,9 @@
|
||||
<listitem>
|
||||
<para>Bc-&bc-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Binutils-&binutils-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Bison-&bison-version;</para>
|
||||
</listitem>-->
|
||||
@ -71,9 +71,9 @@
|
||||
<!--<listitem>
|
||||
<para>E2fsprogs-&e2fsprogs-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Expat-&expat-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Expect-&expect-version;</para>
|
||||
</listitem>-->
|
||||
@ -101,9 +101,9 @@
|
||||
<listitem>
|
||||
<para>Gettext-&gettext-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Glibc-&glibc-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>GMP-&gmp-version;</para>
|
||||
</listitem>-->
|
||||
@ -176,9 +176,9 @@
|
||||
<listitem>
|
||||
<para>Man-DB-&man-db-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Man-pages-&man-pages-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>MarkupSafe-&markupsafe-version;</para>
|
||||
</listitem>
|
||||
@ -224,9 +224,9 @@
|
||||
<!--<listitem>
|
||||
<para>Sed-&sed-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem> After version 12.1 release - see Added
|
||||
<listitem> <!-- After version 12.1 release - see Added -->
|
||||
<para>Setuptools-&setuptools-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Shadow-&shadow-version;</para>
|
||||
</listitem>
|
||||
@ -291,21 +291,21 @@
|
||||
<listitem><para></para></listitem> <!-- satisfy build -->
|
||||
|
||||
<listitem>
|
||||
<para>setuptools-&setuptools-version;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&glibc-upstream-fixes-patch;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&pkgconf-upstream-fix-patch;</para>
|
||||
<para>&bash-upstream-fixes-patch;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&readline-fixes-patch;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>setuptools-&setuptools-version;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&systemd-upstream-patch;</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -40,7 +40,8 @@
|
||||
<filename class="devicefile">/dev/sda</filename> for the primary
|
||||
disk drive. Create a Linux native partition and a
|
||||
<systemitem class="filesystem">swap</systemitem> partition, if needed. Please
|
||||
refer to <filename>cfdisk(8)</filename> or <filename>fdisk(8)</filename> if
|
||||
refer to <ulink role='man' url='&man;cfdisk.8'>cfdisk(8)</ulink> or
|
||||
<ulink role='man' url='&man;fdisk.8'>fdisk(8)</ulink> if
|
||||
you do not yet know how to use the programs.</para>
|
||||
|
||||
<note><para>For experienced users, other partitioning schemes are possible.
|
||||
|
@ -29,9 +29,10 @@
|
||||
minimum versions indicated. This should not be an issue for most
|
||||
modern Linux distributions. Also note that many distributions will
|
||||
place software headers into separate packages, often in the form of
|
||||
<quote><package-name>-devel</quote> or
|
||||
<quote><package-name>-dev</quote>. Be sure to install those if
|
||||
your distribution provides them.</para>
|
||||
<literal><replaceable><package-name></replaceable>-devel</literal>
|
||||
or
|
||||
<literal><replaceable><package-name></replaceable>-dev</literal>.
|
||||
Be sure to install those if your distribution provides them.</para>
|
||||
|
||||
<para>Earlier versions of the listed software packages may work, but have
|
||||
not been tested.</para>
|
||||
@ -99,8 +100,12 @@
|
||||
<xref linkend="chapter-building-system"/>, so the workarounds for
|
||||
older kernels are not enabled and the compiled
|
||||
<application>glibc</application> is slightly faster and smaller.
|
||||
As at June 2023, &min-kernel; is the oldest kernel release still
|
||||
supported by the kernel developers.</para>
|
||||
As at Feb 2024, &min-kernel; is the oldest kernel release still
|
||||
supported by the kernel developers. Some kernel releases older than
|
||||
&min-kernel; may be still supported by third-party teams, but they
|
||||
are not considered official upstream kernel releases; read
|
||||
<ulink url='https://kernel.org/category/releases.html'/> for the
|
||||
details.</para>
|
||||
|
||||
<para>If the host kernel is earlier than &min-kernel; you will need to replace
|
||||
the kernel with a more up-to-date version. There are two ways
|
||||
|
@ -16,7 +16,7 @@
|
||||
<envar>LFS</envar> environment variable described in the previous section.
|
||||
</para>
|
||||
|
||||
<para>Strictly speaking, one cannot "mount a partition". One mounts the <emphasis>file
|
||||
<para>Strictly speaking, one cannot <quote>mount a partition.</quote> One mounts the <emphasis>file
|
||||
system</emphasis> embedded in that partition. But since a single partition can't contain
|
||||
more than one file system, people often speak of the partition and the
|
||||
associated file system as if they were one and the same.</para>
|
||||
|
@ -69,7 +69,7 @@
|
||||
|
||||
<listitem>
|
||||
<para>A few operations, from <quote>Changing Ownership</quote> to
|
||||
<quote>Entering the Chroot Environment</quote>, must be done as the
|
||||
<quote>Entering the Chroot Environment,</quote> must be done as the
|
||||
<systemitem class="username">root</systemitem> user, with the LFS
|
||||
environment variable set for the &root; user.</para>
|
||||
</listitem>
|
||||
|
@ -27,14 +27,14 @@
|
||||
</varlistentry>
|
||||
-->
|
||||
|
||||
<!-- <varlistentry>
|
||||
<term>Bash Upstream Fixes Patch - <token>&bash-fixes-patch-size;</token>:</term>
|
||||
<varlistentry>
|
||||
<term>Bash Upstream Fixes Patch - <token>&bash-upstream-fixes-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&bash-fixes-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&bash-fixes-patch-md5;</literal></para>
|
||||
<para>Download: <ulink url="&patches-root;&bash-upstream-fixes-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&bash-upstream-fixes-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Binutils LTO Fix Patch - <token>&binutils-lto-patch-size;</token>:</term>
|
||||
@ -76,7 +76,7 @@
|
||||
<para>MD5 sum: <literal>&gcc-upstream-fixes-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
|
||||
<varlistentry>
|
||||
<term>Glibc Upstream Fixes Patch - <token>&glibc-upstream-fixes-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -84,7 +84,7 @@
|
||||
<para>MD5 sum: <literal>&glibc-upstream-fixes-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
-->
|
||||
<varlistentry>
|
||||
<term>Glibc FHS Patch - <token>&glibc-fhs-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -117,7 +117,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Pkgconf Upstream Fix Patch - <token>&pkgconf-upstream-fix-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -125,7 +125,7 @@
|
||||
<para>MD5 sum: <literal>&pkgconf-upstream-fix-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
-->
|
||||
<varlistentry>
|
||||
<term>Readline Upstream Fix Patch - <token>&readline-fixes-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -142,15 +142,13 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<!--
|
||||
<varlistentry revision="systemd">
|
||||
<term>Systemd Upstream Patch - <token>&systemd-upstream-patch-size;</token>:</term>
|
||||
<term>Systemd Upstream Fixes Patch - <token>&systemd-upstream-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&systemd-upstream-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&systemd-upstream-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Xz Upstream Fix Patch - <token>&xz-upstream-fix-patch-size;</token>:</term>
|
||||
|
@ -96,6 +96,7 @@ useradd -s /bin/bash -g lfs -m -k /dev/null lfs</userinput></screen>
|
||||
<para>The <quote><parameter>-</parameter></quote> instructs
|
||||
<command>su</command> to start a login shell as opposed to a non-login shell.
|
||||
The difference between these two types of shells is described in detail in
|
||||
<filename>bash(1)</filename> and <command>info bash</command>.</para>
|
||||
<ulink role='man' url='&man;bash.1'>bash(1)</ulink> and <command>info
|
||||
bash</command>.</para>
|
||||
|
||||
</sect1>
|
||||
|
@ -79,8 +79,8 @@ EOF</userinput></screen>
|
||||
<para>Setting the user file-creation mask (umask) to 022 ensures that newly
|
||||
created files and directories are only writable by their owner, but are
|
||||
readable and executable by anyone (assuming default modes are used by the
|
||||
<filename>open(2)</filename> system call, new files will end up with
|
||||
permission mode 644 and directories with mode 755).</para>
|
||||
<ulink role='man' url='&man;open.2'>open(2)</ulink> system call, new files
|
||||
will end up with permission mode 644 and directories with mode 755).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
@ -137,8 +137,8 @@ cd build</userinput></screen>
|
||||
Gettext package, which the host distribution should provide.</para>
|
||||
|
||||
<note><para>There have been reports that this package may fail when
|
||||
building as a "parallel make". If that occurs, rerun the make command
|
||||
with the "-j1" option.</para></note>
|
||||
building as a <quote>parallel make.</quote> If that occurs, rerun the make command
|
||||
with the <option>-j1</option> option.</para></note>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
|
@ -78,11 +78,6 @@ popd</userinput></screen>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr --host=$LFS_TGT --build=$(./config.guess)</userinput></screen>
|
||||
|
||||
<!-- devs: if using - -build here, the build system wants to compile
|
||||
the signature file with "file" on the build system, but stops if it is not
|
||||
the same version. One possibility would be to build "file" on the build
|
||||
system first, but it is simpler to have the system think it is not
|
||||
cross-compiling, and use the just built "file". -->
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make FILE_COMPILE=$(pwd)/build/src/file</userinput></screen>
|
||||
|
@ -54,7 +54,7 @@ install -dv -m 1777 /tmp /var/tmp</userinput></screen>
|
||||
<filename class="directory">/tmp</filename> and <filename
|
||||
class="directory">/var/tmp</filename> directories, but cannot remove
|
||||
another user's files from them. The latter is prohibited by the so-called
|
||||
<quote>sticky bit</quote>, the highest bit (1) in the 1777 bit mask.</para>
|
||||
<quote>sticky bit,</quote> the highest bit (1) in the 1777 bit mask.</para>
|
||||
|
||||
<sect2>
|
||||
<title>FHS Compliance Note</title>
|
||||
|
@ -63,11 +63,14 @@
|
||||
|
||||
<para>Now mount the remaining virtual kernel file systems:</para>
|
||||
|
||||
<screen><userinput>mount -v --bind /dev/pts $LFS/dev/pts
|
||||
<!-- Do not put any option after $LFS/${mountpoint} or jhalfs cannot
|
||||
handle it! -->
|
||||
|
||||
<screen><userinput>mount -vt devpts devpts -o gid=5,mode=0620 $LFS/dev/pts
|
||||
mount -vt proc proc $LFS/proc
|
||||
mount -vt sysfs sysfs $LFS/sys
|
||||
mount -vt tmpfs tmpfs $LFS/run</userinput></screen>
|
||||
<!--
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the mount options for devpts:</title>
|
||||
|
||||
@ -95,11 +98,12 @@ mount -vt tmpfs tmpfs $LFS/run</userinput></screen>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
-->
|
||||
|
||||
<para>In some host systems, <filename>/dev/shm</filename> is a
|
||||
symbolic link to <filename class="directory">/run/shm</filename>.
|
||||
symbolic link to a directory, typically
|
||||
<filename class="directory">/run/shm</filename>.
|
||||
The /run tmpfs was mounted above so in this case only a
|
||||
directory needs to be created.</para>
|
||||
directory needs to be created with the correct permissions.</para>
|
||||
|
||||
<para>In other host systems <filename>/dev/shm</filename> is a mount point
|
||||
for a tmpfs. In that case the mount of /dev above will only create
|
||||
@ -107,7 +111,7 @@ mount -vt tmpfs tmpfs $LFS/run</userinput></screen>
|
||||
we must explicitly mount a tmpfs:</para>
|
||||
|
||||
<screen><userinput>if [ -h $LFS/dev/shm ]; then
|
||||
(cd $LFS/dev; mkdir $(readlink shm))
|
||||
install -v -d -m 1777 $LFS$(realpath /dev/shm)
|
||||
else
|
||||
mount -vt tmpfs -o nosuid,nodev tmpfs $LFS/dev/shm
|
||||
fi</userinput></screen>
|
||||
|
@ -44,8 +44,8 @@
|
||||
<title>Installation of Python</title>
|
||||
|
||||
<note>
|
||||
<para>There are two package files whose name starts with
|
||||
<quote>python</quote>. The one to extract from is
|
||||
<para>There are two package files whose name starts with the
|
||||
<quote>python</quote> prefix. The one to extract from is
|
||||
<filename>Python-&python-version;.tar.xz</filename> (notice the
|
||||
uppercase first letter).</para>
|
||||
</note>
|
||||
@ -83,9 +83,9 @@
|
||||
<note>
|
||||
<para>
|
||||
Some Python 3 modules can't be built now because the dependencies
|
||||
are not installed yet. The building system still attempts to build
|
||||
them however, so the compilation of some files will fail and the
|
||||
compiler message may seem to indicate <quote>fatal error</quote>.
|
||||
are not installed yet. For the <filename>ssl</filename> module,
|
||||
a message <computeroutput>Python requires a OpenSSL 1.1.1 or
|
||||
newer</computeroutput> is outputted.
|
||||
The message should be ignored. Just make sure the toplevel
|
||||
<command>make</command> command has not failed. The optional
|
||||
modules are not needed now and they will be built in
|
||||
|
@ -40,6 +40,10 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Bash</title>
|
||||
|
||||
<para>First, fix some issues identified upstream:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&bash-upstream-fixes-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare Bash for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
@ -71,7 +75,7 @@
|
||||
|
||||
<para>To prepare the tests, ensure that the <systemitem class="username">tester</systemitem> user can write to the sources tree:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester .</userinput></screen>
|
||||
<screen><userinput remap="test">chown -R tester .</userinput></screen>
|
||||
|
||||
<para>The test suite of this package is designed to be run as a non-&root;
|
||||
user who owns the terminal connected to standard input. To satisfy the
|
||||
@ -79,7 +83,7 @@
|
||||
<application>Expect</application> and run the tests as the <systemitem
|
||||
class="username">tester</systemitem> user:</para>
|
||||
|
||||
<screen><userinput remap="test">su -s /usr/bin/expect tester << EOF
|
||||
<screen><userinput remap="test">su -s /usr/bin/expect tester << "EOF"
|
||||
set timeout -1
|
||||
spawn make tests
|
||||
expect eof
|
||||
|
@ -135,7 +135,7 @@ cd build</userinput></screen>
|
||||
|
||||
<screen><userinput remap="test">grep '^FAIL:' $(find -name '*.log')</userinput></screen>
|
||||
|
||||
<para>Three tests in the gprofng suite are known to fail.</para>
|
||||
<!-- <para>Three tests in the gprofng suite are also known to fail.</para>-->
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -121,7 +121,7 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \
|
||||
<para>Fix some of the permissions so that the non-&root; user can
|
||||
compile and run the tests:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester . </userinput></screen>
|
||||
<screen><userinput remap="test">chown -R tester . </userinput></screen>
|
||||
|
||||
<para>Now run the tests:</para>
|
||||
|
||||
@ -129,8 +129,14 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \
|
||||
|
||||
<!-- Sometimes skipped, but if not it may fail.
|
||||
Please DO NOT remove or comment out this unless we can fully
|
||||
understand it! -->
|
||||
understand it!
|
||||
<para>The test-getlogin test may fail in the LFS chroot environment.</para>
|
||||
20240226: Commented out as it seems the upstream has root-caused and
|
||||
fixed the issue. I've checked the fix is in Coreutils 9.4 release
|
||||
tarball:
|
||||
|
||||
https://lists.gnu.org/archive/html/bug-gnulib/2022-06/msg00079.html
|
||||
-->
|
||||
|
||||
<para>Remove the temporary group:</para>
|
||||
|
||||
@ -1261,8 +1267,8 @@ sed -i 's/"1"/"8"/' /usr/share/man/man8/chroot.8</userinput></screen>
|
||||
<varlistentry id="yes">
|
||||
<term><command>yes</command></term>
|
||||
<listitem>
|
||||
<para>Repeatedly outputs <quote>y</quote>, or a given string, until
|
||||
killed</para>
|
||||
<para>Repeatedly outputs <literal>y</literal> or a given string,
|
||||
until killed</para>
|
||||
<indexterm zone="ch-system-coreutils yes">
|
||||
<primary sortas="b-yes">yes</primary>
|
||||
</indexterm>
|
||||
|
@ -159,7 +159,8 @@ install-info --dir-file=/usr/share/info/dir /usr/share/info/com_err.info</userin
|
||||
<screen role='nodump'><userinput>sed 's/metadata_csum_seed,//' -i /etc/mke2fs.conf</userinput></screen>
|
||||
|
||||
<para>
|
||||
Read the man page <filename>mke2fs.conf(5)</filename> for details.
|
||||
Read the man page <ulink role='man'
|
||||
url='&man;mke2fs.conf.5'>mke2fs.conf(5)</ulink> for details.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
|
@ -48,6 +48,25 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Expect</title>
|
||||
|
||||
<para>Expect needs PTYs to work. Verify that the PTYs are working
|
||||
properly inside the chroot environment by performing a simple
|
||||
test:</para>
|
||||
|
||||
<screen><userinput remap="test">python3 -c 'from pty import spawn; spawn(["echo", "ok"])'</userinput></screen>
|
||||
|
||||
<para>This command should output <computeroutput>ok</computeroutput>.
|
||||
If, instead, the output includes <computeroutput>OSError: out of pty
|
||||
devices</computeroutput>, then the environment is not set up for proper
|
||||
PTY operation. You need to exit from the chroot environment, read
|
||||
<xref linkend='ch-tools-kernfs'/> again, and ensure the
|
||||
<systemitem class="filesystem">devpts</systemitem> file system (and
|
||||
other virtual kernel file systems) mounted correctly. Then reenter
|
||||
the chroot environment following <xref linkend='ch-tools-chroot'/>.
|
||||
This issue needs to be resolved before continuing, or the test suites
|
||||
requiring Expect (for example the test suites of Bash, Binutils, GCC,
|
||||
GDBM, and of course Expect itself) will fail catastrophically, and other
|
||||
subtle breakages may also happen.</para>
|
||||
|
||||
<para>Update two config scripts to allow building this package for
|
||||
AArch64:</para>
|
||||
|
||||
@ -88,27 +107,10 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<important>
|
||||
<para>The test suite for Expect is considered critical.
|
||||
Do not skip it under any circumstances.</para>
|
||||
</important>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make test</userinput></screen>
|
||||
|
||||
<para>If any test fails with the message
|
||||
<quote><computeroutput>The system has no more ptys. Ask your system
|
||||
administrator to create more</computeroutput></quote>, it indicates
|
||||
you've not mounted the
|
||||
<systemitem class="filesystem">devpts</systemitem> file system
|
||||
correctly. You need to exit from the chroot environment, read
|
||||
<xref linkend='ch-tools-kernfs'/> again, and ensure the
|
||||
<systemitem class="filesystem">devpts</systemitem> file system (and
|
||||
other virtual kernel file systems) mounted correctly. Then reenter
|
||||
the chroot environment following <xref linkend='ch-tools-chroot'/>.
|
||||
This issue needs to be resolved before continuing.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install
|
||||
|
@ -82,7 +82,7 @@ esac</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester .
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
su tester -c "PATH=$PATH make check"</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
@ -54,7 +54,7 @@
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester .
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
su tester -c "PATH=$PATH make check"</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
@ -154,7 +154,7 @@ cd build</userinput></screen>
|
||||
|
||||
<para>Test the results as a non-privileged user, but do not stop at errors:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester .
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
su tester -c "PATH=$PATH make -k check"</userinput></screen>
|
||||
|
||||
<para>To extract a summary of the test suite results, run:</para>
|
||||
@ -170,8 +170,7 @@ su tester -c "PATH=$PATH make -k check"</userinput></screen>
|
||||
|
||||
<para>
|
||||
<!-- https://gcc.gnu.org/PR107915 and https://gcc.gnu.org/PR109353 -->
|
||||
Two tests named <filename>copy.cc</filename> and
|
||||
<filename>contracts-tmpl-spec2.C</filename> are known to fail.
|
||||
One test named <filename>contracts-tmpl-spec2.C</filename> is known to fail.
|
||||
<!-- https://gcc.gnu.org/PR111224 -->
|
||||
Some C++ module tests named <filename>xtreme-*</filename> are known to
|
||||
fail.
|
||||
@ -181,14 +180,19 @@ su tester -c "PATH=$PATH make -k check"</userinput></screen>
|
||||
<para>Many gcc and g++ tests related to hwasan are known to fail.</para>
|
||||
|
||||
<para>
|
||||
With Glibc-2.38, the analyzer tests named
|
||||
<filename>data-model-4.c</filename> and
|
||||
<filename>conftest-1.c</filename>
|
||||
are known to fail.
|
||||
In the asan tests, several tests in <filename>asan_test.C</filename>
|
||||
are known to fail.
|
||||
The test named <filename>interception-malloc-test-1.C</filename>
|
||||
is known to fail.
|
||||
Eight gcc tests (out of over 185,000):
|
||||
<!-- https://gcc.gnu.org/PR106375 --><filename>pr56837.c</filename>
|
||||
and seven tests in the <filename class='directory'>analyzer</filename>
|
||||
directory are known to fail.
|
||||
|
||||
<!-- https://gcc.gnu.org/PR109353 -->
|
||||
One libstdc++ test (out of over 15000), <filename>copy.cc</filename>, is
|
||||
known to fail.
|
||||
|
||||
For g++, 21 tests (out of approximately 250,000): 14
|
||||
<quote>AddressSanitizer*</quote>
|
||||
tests and 7 <filename>interception-malloc-test-1.C</filename> tests, are
|
||||
known to fail.
|
||||
</para>
|
||||
|
||||
<para>A few unexpected failures cannot always be avoided. The GCC developers
|
||||
@ -196,15 +200,6 @@ su tester -c "PATH=$PATH make -k check"</userinput></screen>
|
||||
Unless the test results are vastly different from those at the above URL,
|
||||
it is safe to continue.</para>
|
||||
|
||||
<!--note><para>
|
||||
On some combinations of kernel configuration and AMD processors
|
||||
there may be more than 1100 failures in the gcc.target/i386/mpx
|
||||
tests (which are designed to test the MPX option on recent
|
||||
Intel processors). These can safely be ignored on AMD
|
||||
processors. These tests will also fail on Intel processors if MPX support
|
||||
is not enabled in the kernel even though it is present on the CPU.
|
||||
</para></note-->
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
@ -49,12 +49,12 @@
|
||||
store their runtime data in the FHS-compliant locations:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>Now fix two security vulnerabilities and a regression causing the
|
||||
posix_memalign() function very slow in some conditions:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&glibc-upstream-fixes-patch;</userinput></screen>
|
||||
|
||||
-->
|
||||
<para>The Glibc documentation recommends building Glibc
|
||||
in a dedicated build directory:</para>
|
||||
|
||||
@ -73,7 +73,6 @@ cd build</userinput></screen>
|
||||
--disable-werror \
|
||||
--enable-kernel=&min-kernel; \
|
||||
--enable-stack-protector=strong \
|
||||
--with-headers=/usr/include \
|
||||
--disable-nscd \
|
||||
libc_cv_slibdir=/usr/lib</userinput></screen>
|
||||
|
||||
@ -103,15 +102,10 @@ cd build</userinput></screen>
|
||||
<listitem>
|
||||
<para>This option increases system security by adding
|
||||
extra code to check for buffer overflows, such as stack
|
||||
smashing attacks.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<!-- do we need this one? -->
|
||||
<varlistentry>
|
||||
<term><parameter>--with-headers=/usr/include</parameter></term>
|
||||
<listitem>
|
||||
<para>This option tells the build system where to find the
|
||||
kernel API headers.</para>
|
||||
smashing attacks. Note that Glibc always explicitly overrides
|
||||
the default of GCC, so this option is still needed even though
|
||||
we've already specified <option>--enable-default-ssp</option> for
|
||||
GCC.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -169,29 +163,34 @@ esac</userinput></screen>
|
||||
is known to fail in the LFS chroot environment.</para>
|
||||
</listitem>
|
||||
|
||||
<!-- Did not fail with glibc-2.38
|
||||
<listitem>
|
||||
<para><emphasis>misc/tst-ttyname</emphasis>
|
||||
is known to fail in the LFS chroot environment.</para>
|
||||
</listitem>
|
||||
-->
|
||||
|
||||
<!-- https://sourceware.org/pipermail/libc-alpha/2022-August/141567.html -->
|
||||
<listitem>
|
||||
<para>The <emphasis>stdlib/tst-arc4random-thread</emphasis>
|
||||
test is known to fail if the host kernel is relatively old.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Some tests, for example
|
||||
<emphasis>nss/tst-nss-files-hosts-multi</emphasis>,
|
||||
are known to fail on relatively slow systems due to an internal
|
||||
timeout.</para>
|
||||
<emphasis>nss/tst-nss-files-hosts-multi</emphasis> and
|
||||
<emphasis>nptl/tst-thread-affinity*</emphasis>
|
||||
are known to fail due to a timeout (especially when the system is
|
||||
relatively slow and/or running the test suite with multiple
|
||||
parallel make jobs). These tests can be identified with:</para>
|
||||
|
||||
<!-- TODO: Using nodump for freeze. Change it to role="test" after
|
||||
12.1 release so jhalfs can list these in the log. -->
|
||||
<screen role="nodump"><userinput>grep "Timed out" -l $(find -name \*.out)</userinput></screen>
|
||||
|
||||
<para>It's possible to re-run a single test with enlarged timeout
|
||||
with
|
||||
<command>TIMEOUTFACTOR=<replaceable><factor></replaceable>
|
||||
make test t=<replaceable><test name></replaceable></command>.
|
||||
For example, <command>TIMEOUTFACTOR=10 make test
|
||||
t=nss/tst-nss-files-hosts-multi</command> will re-run
|
||||
<emphasis>nss/tst-nss-files-hosts-multi</emphasis> with ten times
|
||||
the original timeout.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Additionally, some tests may fail with a relatively old CPU
|
||||
model or host kernel version.</para>
|
||||
model (for example
|
||||
<emphasis>elf/tst-cpu-features-cpuinfo</emphasis>) or host kernel
|
||||
version (for example
|
||||
<emphasis>stdlib/tst-arc4random-thread</emphasis>).</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
@ -207,6 +206,122 @@ esac</userinput></screen>
|
||||
|
||||
<screen><userinput remap="install">sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile</userinput></screen>
|
||||
|
||||
<important>
|
||||
<para>
|
||||
If upgrading Glibc to a new minor version (for example, from
|
||||
Glibc-2.36 to Glibc-&glibc-version;) on a running LFS system, you
|
||||
need to take some extra precautions to avoid breaking the system:
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<!-- There are two reasons we don't support this:
|
||||
1. Upgrading on a system with separate /lib and /usr/lib is
|
||||
tricky.
|
||||
2. With Glibc prior to 2.34 libc.so.6 etc. are symlinks to
|
||||
libc-2.33.so etc., again causing the upgradation tricky.
|
||||
The Glibc NEWS file explicit states they no longer use
|
||||
symlinks for the ABI names to avoid upgradation
|
||||
issues. -->
|
||||
<para>
|
||||
Upgrading Glibc on a LFS system prior to 11.0 (exclusive) is
|
||||
not supported. Rebuild LFS if you are running such an old LFS
|
||||
system but you need a newer Glibc.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<!-- https://sourceware.org/pipermail/libc-alpha/2024-January/154095.html -->
|
||||
<listitem>
|
||||
<para>
|
||||
If upgrading on a LFS system prior to 12.0 (exclusive), install
|
||||
<application>Libxcrypt</application> following
|
||||
<xref role='.' linkend='ch-system-libxcrypt'/> In addition to
|
||||
a normal <application>Libxcrypt</application> installation,
|
||||
<emphasis role='bold'>you MUST follow the note in Libxcrypt
|
||||
section to install
|
||||
<filename class='libraryfile'>libcrypt.so.1*</filename>
|
||||
(replacing
|
||||
<filename class='libraryfile'>libcrypt.so.1</filename> from the
|
||||
prior Glibc installation)</emphasis>.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<!-- Otherwise on lfs-systemd nscd will fail to start on boot,
|
||||
and on both lfs-sysv and lfs-systemd useradd etc. will try
|
||||
to start nscd, then nscd will fail to start as well and
|
||||
produce some spurious error message. -->
|
||||
<listitem>
|
||||
<para>
|
||||
If upgrading on a LFS system prior to 12.1 (exclusive),
|
||||
remove the <command>nscd</command> program:
|
||||
</para>
|
||||
|
||||
<screen role='nodump'><userinput>rm -f /usr/sbin/nscd</userinput></screen>
|
||||
|
||||
<para revision='systemd'>
|
||||
If this system (prior to LFS 12.1, exclusive) is based on
|
||||
Systemd, it's also needed to disable and stop the
|
||||
<command>nscd</command> service now:
|
||||
</para>
|
||||
|
||||
<screen revision='systemd' role='nodump'><userinput>systemctl disable --now nscd</userinput></screen>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Upgrade the kernel and reboot if it's older than &min-kernel;
|
||||
(check the current version with <command>uname -r</command>)
|
||||
or if you want to upgrade it anyway, following
|
||||
<xref linkend='ch-bootable-kernel' role='.'/>
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Upgrade the kernel API headers if it's older than &min-kernel;
|
||||
(check the current version with
|
||||
<command>cat /usr/include/linux/version.h</command>)
|
||||
or if you want to upgrade it anyway, following
|
||||
<xref linkend='ch-tools-linux-headers'/> (but removing
|
||||
<envar>$LFS</envar> from the <command>cp</command> command).
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<!-- This is to ensure we don't start a process at the time point
|
||||
where some Glibc shared libraries are updated but the others
|
||||
are not. Such mismatches can cause programs crash on startup,
|
||||
esp. a mismatch between ld-linux-x86-64.so.2 and
|
||||
libc.so.6. Note that a crash in the installation process
|
||||
will leave the system in a state with the mismatch forever,
|
||||
unrecoverable without the help of another distro. -->
|
||||
<listitem>
|
||||
<para>
|
||||
Perform a <envar>DESTDIR</envar> installation and upgrade
|
||||
the Glibc shared libraries on the system using one single
|
||||
<command>install</command> command:
|
||||
</para>
|
||||
|
||||
<screen role='nodump'><userinput>make DESTDIR=$PWD/dest install
|
||||
install -vm755 dest/usr/lib/*.so.* /usr/lib</userinput></screen>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>
|
||||
It's imperative to strictly follow these steps above unless you
|
||||
completely understand what you are doing.
|
||||
<emphasis role='bold'>Any unexpected deviation may render the
|
||||
system completely unusable. YOU ARE WARNED.</emphasis>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Then continue to run the <command>make install</command> command,
|
||||
the <command>sed</command> command against
|
||||
<filename>/usr/bin/ldd</filename>, and the commands to install
|
||||
the locales. Once they are finished, reboot the system
|
||||
immediately.
|
||||
</para>
|
||||
</important>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
@ -420,7 +535,7 @@ unset ZONEINFO</userinput></screen>
|
||||
<term><parameter>zic ... -p ...</parameter></term>
|
||||
<listitem>
|
||||
<para>This creates the <filename>posixrules</filename> file. We use
|
||||
New York because POSIX requires the daylight savings time rules
|
||||
New York because POSIX requires the daylight saving time rules
|
||||
to be in accordance with US rules.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
@ -49,7 +49,7 @@
|
||||
to the <command>configure</command> command.</para>
|
||||
|
||||
<!-- To editors: the configure script says "the none host is obsolete,
|
||||
use - -disable-assembly", but don't believe it: with the latter
|
||||
use - -disable-assembly," but don't believe it: with the latter
|
||||
CFLAGS is still automatically set to -march=something. -->
|
||||
</note>
|
||||
|
||||
@ -97,8 +97,9 @@ make html</userinput></screen>
|
||||
<caution><para>The code in gmp is highly optimized for the processor where
|
||||
it is built. Occasionally, the code that detects the processor misidentifies
|
||||
the system capabilities and there will be errors in the tests or other
|
||||
applications using the gmp libraries with the message "Illegal
|
||||
instruction". In this case, gmp should be reconfigured with the option
|
||||
applications using the gmp libraries with the message
|
||||
<computeroutput>Illegal instruction</computeroutput>.
|
||||
In this case, gmp should be reconfigured with the option
|
||||
<option>--host=none-linux-gnu</option> and rebuilt.</para></caution>
|
||||
|
||||
<!-- Some tests PASS on a specific uarch but SKIP on other CPUs.
|
||||
|
@ -56,8 +56,9 @@
|
||||
|
||||
<para>Five tests are known to fail in the LFS build environment due
|
||||
to a circular dependency, but these tests pass if rechecked after
|
||||
automake has been installed. Additionally, with grep-3.8, two tests will
|
||||
trigger a warning for non-POSIX regular expressions and fail.</para>
|
||||
automake has been installed. Additionally, with grep-3.8 or newer,
|
||||
two tests will trigger a warning for non-POSIX regular expressions and
|
||||
fail.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -110,7 +110,7 @@
|
||||
--disable-static \
|
||||
--disable-failure-tokens
|
||||
make
|
||||
cp -av .libs/libcrypt.so.1* /usr/lib</userinput></screen>
|
||||
cp -av --remove-destination .libs/libcrypt.so.1* /usr/lib</userinput></screen>
|
||||
</note>
|
||||
|
||||
</sect2>
|
||||
|
@ -53,7 +53,7 @@
|
||||
https://savannah.gnu.org/bugs/?63852 -->
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester .
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
su tester -c "PATH=$PATH make check"</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
@ -163,7 +163,7 @@ make MANSUFFIX=ssl install</userinput></screen>
|
||||
is a command-line tool for using the various cryptography functions
|
||||
of <application>OpenSSL</application>'s crypto library from the
|
||||
shell. It can be used for various functions which are documented in
|
||||
<filename>openssl(1)</filename>
|
||||
<ulink role='man' url='&man;openssl.1'>openssl(1)</ulink>
|
||||
</para>
|
||||
<indexterm zone="ch-system-openssl openssl-prog">
|
||||
<primary sortas="b-openssl">openssl</primary>
|
||||
@ -195,7 +195,8 @@ make MANSUFFIX=ssl install</userinput></screen>
|
||||
<para>
|
||||
implements the Transport Layer Security (TLS v1) protocol.
|
||||
It provides a rich API, documentation
|
||||
on which can be found in <filename>ssl(7)</filename>
|
||||
on which can be found in <ulink role='man'
|
||||
url='&man;ssl.7'>ssl(7)</ulink>
|
||||
</para>
|
||||
<indexterm zone="ch-system-openssl libssl">
|
||||
<primary sortas="c-libssl">libssl.so</primary>
|
||||
|
@ -44,11 +44,6 @@
|
||||
|
||||
<title>Installation of Pkgconf</title>
|
||||
|
||||
<!-- https://github.com/pkgconf/pkgconf/issues/317 -->
|
||||
<para>Fix a regression in pkgconf-2.1.0 breaking BLFS packages:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&pkgconf-upstream-fix-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare Pkgconf for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
|
@ -56,28 +56,16 @@
|
||||
5.10.17 to 5.10.18 or 5.11.1), nothing else needs to be rebuilt.
|
||||
The system will keep working fine thanks to the well-defined interface
|
||||
between the kernel and userspace. Specifically, Linux API headers
|
||||
need not be (and should not be, see the next item) upgraded
|
||||
need not be upgraded
|
||||
along with the kernel. You will merely need to reboot your system to use the
|
||||
upgraded kernel.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>If the Linux API headers or Glibc need to be upgraded to a newer
|
||||
version, (e.g., from Glibc-2.31 to Glibc-2.32), it is safer to
|
||||
rebuild LFS. Though you <emphasis>may</emphasis> be able to rebuild
|
||||
all the packages in their dependency order, we do not recommend
|
||||
it. </para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Reinstalling the same version of Glibc (&glibc-version; for
|
||||
this release of LFS) with patches should be safe when these patches
|
||||
do not change ABI and API. When a security vulnerability is found
|
||||
in Glibc, we often need to apply such a patch to fix the
|
||||
vulnerability and reinstall Glibc. Consult
|
||||
<ulink url='&lfs-root;lfs/advisories/'>LFS security
|
||||
advisories</ulink> if you are alerted for a published Glibc security
|
||||
vulnerability but unsure about the action to take.</para>
|
||||
<para>If Glibc needs to be upgraded to a newer
|
||||
version, (e.g., from Glibc-2.36 to Glibc-&glibc-version;),
|
||||
some extra steps are needed to avoid breaking the system.
|
||||
Read <xref linkend='ch-system-glibc'/> for details.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem> <para>If a package containing a shared library is updated, and
|
||||
|
@ -72,7 +72,20 @@
|
||||
|
||||
<para> To run the test suite, run:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
<screen><userinput remap="test">make -k check</userinput></screen>
|
||||
|
||||
<para>One test named
|
||||
<literal>ps with output flag bsdtime,cputime,etime,etimes</literal>
|
||||
is known to fail if the host kernel is not built with
|
||||
<literal>CONFIG_BSD_PROCESS_ACCT</literal> enabled.
|
||||
<!-- These two tests just do not work as root but they seem to pass
|
||||
in most time due to some internal hazards of Tcl/Expect/DejaGNU
|
||||
framework. However the failures have been really observed.
|
||||
TODO: run the test suite as tester after the freeze ends. -->
|
||||
Two tests named
|
||||
<literal>pmap X with unreachable process</literal> and
|
||||
<literal>pmap XX with unreachable process</literal> are known to
|
||||
fail occasionally.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -51,7 +51,7 @@ make html</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester .
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
su tester -c "PATH=$PATH make check"</userinput></screen>
|
||||
|
||||
<para>Install the package and its documentation:</para>
|
||||
|
@ -203,8 +203,8 @@ make -C man install-man</userinput></screen>
|
||||
to pass either the <parameter>-g</parameter> or <parameter>-N</parameter>
|
||||
parameter to <command>useradd</command>, or else change the setting of
|
||||
<parameter>USERGROUPS_ENAB</parameter> in
|
||||
<filename>/etc/login.defs</filename>. See <filename>useradd(8)</filename>
|
||||
for more information.</para>
|
||||
<filename>/etc/login.defs</filename>. See <ulink role='man'
|
||||
url='&man;useradd.8'>useradd(8)</ulink> for more information.</para>
|
||||
|
||||
<para>Second, to change the default parameters, the file
|
||||
<filename>/etc/default/useradd</filename> must be created and tailored
|
||||
|
@ -53,7 +53,7 @@
|
||||
little-endian systems and ld-linux-aarch64_be.so.1 on big-endian systems.
|
||||
The construct below selects the
|
||||
correct name for the current architecture, excluding anything ending
|
||||
with <quote>g</quote>, in case the commands below have already been
|
||||
with <literal>g</literal>, in case the commands below have already been
|
||||
run.</para></note>
|
||||
|
||||
<important>
|
||||
|
@ -50,10 +50,11 @@
|
||||
|
||||
<!-- https://github.com/systemd/systemd/pull/30549 -->
|
||||
<para>Now fix a security vulnerability in the DNSSEC verification of
|
||||
<command>systemd-resolved</command>:</para>
|
||||
<command>systemd-resolved</command> and a bug breaking running
|
||||
<command>systemd-analyze verify</command> on an instantiated systemd
|
||||
unit:</para>
|
||||
|
||||
<screen><userinput remap='pre'>sed -e '/return FLAGS_SET.*AUTHENTICATED/s/(t/(dt/' \
|
||||
-i src/resolve/resolved-dns-transaction.c</userinput></screen>
|
||||
<screen><userinput remap='pre'>patch -Np1 -i ../&systemd-upstream-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare systemd for compilation:</para>
|
||||
|
||||
|
@ -103,7 +103,7 @@
|
||||
<screen role="nodump"><userinput>bash tests/run.sh --srcdir=$PWD --builddir=$PWD</userinput></screen>
|
||||
</warning>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester .
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
su tester -c "make -k check"</userinput></screen>
|
||||
|
||||
<para>The <emphasis>hardlink</emphasis> tests will fail if the host's kernel
|
||||
@ -574,7 +574,8 @@ su tester -c "make -k check"</userinput></screen>
|
||||
<term><command>irqtop</command></term>
|
||||
<listitem>
|
||||
<para>Displays kernel interrupt counter information in
|
||||
<filename>top(1)</filename> style view</para>
|
||||
<ulink role='man' url='&man;top.1'>top(1)</ulink> style
|
||||
view</para>
|
||||
<indexterm zone="ch-system-util-linux irqtop">
|
||||
<primary sortas="b-irqtop">irqtop</primary>
|
||||
</indexterm>
|
||||
|
@ -66,18 +66,21 @@
|
||||
<systemitem class="username">tester</systemitem> can write
|
||||
to the source tree:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -Rv tester .</userinput></screen>
|
||||
<screen><userinput remap="test">chown -R tester .</userinput></screen>
|
||||
|
||||
<para>Now run the tests as user <systemitem
|
||||
class="username">tester</systemitem>:</para>
|
||||
|
||||
<screen><userinput remap="test">su tester -c "LANG=en_US.UTF-8 make -j1 test" &> vim-test.log</userinput></screen>
|
||||
<screen><userinput remap="test">su tester -c "TERM=xterm-256color LANG=en_US.UTF-8 make -j1 test" \
|
||||
&> vim-test.log</userinput></screen>
|
||||
|
||||
<para>The test suite outputs a lot of binary data to the screen. This can
|
||||
cause issues with the settings of the current terminal. The problem can be
|
||||
cause issues with the settings of the current terminal (especially while
|
||||
we are overriding the <envar>TERM</envar> variable to satisify some
|
||||
assumptions of the test suite). The problem can be
|
||||
avoided by redirecting the output to a log file as shown above. A
|
||||
successful test will result in the words "ALL DONE" in the log file
|
||||
at completion.</para>
|
||||
successful test will result in the words <computeroutput>ALL
|
||||
DONE</computeroutput> in the log file at completion.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -26,14 +26,13 @@
|
||||
<!-- sysv -->
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="network.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="usage.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="profile.xml"/>
|
||||
|
||||
<!-- systemd -->
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="clock.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="consoled.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="locale.xml"/>
|
||||
|
||||
<!-- common -->
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="locale.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="inputrc.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="etcshells.xml"/>
|
||||
|
||||
|
@ -30,7 +30,7 @@
|
||||
directory for valid screen fonts.</para>
|
||||
|
||||
<para>The <filename>/etc/vconsole.conf</filename> file should contain lines
|
||||
of the form: VARIABLE="value". The following variables are recognized:</para>
|
||||
of the form: <envar>VARIABLE=value</envar>. The following variables are recognized:</para>
|
||||
|
||||
<variablelist>
|
||||
|
||||
@ -74,6 +74,25 @@
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>We'll use <literal>C.UTF-8</literal> as the locale for interactive
|
||||
sessions in the Linux console in <xref role='.'
|
||||
linkend='ch-config-locale'/> The console fonts shipped by
|
||||
the <application>Kbd</application> package containing the glyphs for
|
||||
all characters from the program messages in the <literal>C.UTF-8</literal>
|
||||
locale are <filename>LatArCyrHeb*.psfu.gz</filename>,
|
||||
<filename>LatGrkCyr*.psfu.gz</filename>,
|
||||
<filename>Lat2-Terminus16.psfu.gz</filename>, and
|
||||
<filename>pancyrillic.f16.psfu.gz</filename> in
|
||||
<filename class='directory'>/usr/share/consolefonts</filename> (the other
|
||||
shipped console fonts lack glyphs of some characters like the Unicode
|
||||
left/right quotation marks and the Unicode English dash). So set one of
|
||||
them, for example <filename>Lat2-Terminus16.psfu.gz</filename> as the
|
||||
default console font:</para>
|
||||
|
||||
<!-- We are using "nodump" for general settings, but not examples. This
|
||||
is ironic, but needed for the compatibility with jhalfs! -->
|
||||
<screen role='nodump'><userinput>echo <literal>FONT=Lat2-Terminus16</literal> > /etc/vconsole.conf</userinput></screen>
|
||||
|
||||
<para>An example for a German keyboard and console is given below:</para>
|
||||
<!-- This is what is used by jhalfs for creating the vconsole.conf file.
|
||||
Whenever you want to change the following, please inform the jhalfs
|
||||
|
@ -5,18 +5,21 @@
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-config-locale" revision="systemd">
|
||||
<sect1 id="ch-config-locale">
|
||||
<?dbhtml filename="locale.html"?>
|
||||
|
||||
<title>Configuring the System Locale</title>
|
||||
|
||||
<indexterm zone="ch-config-locale">
|
||||
<primary sortas="e-etc-locale-conf">/etc/locale.conf</primary>
|
||||
<primary sortas="e-/etc/profile">/etc/profile</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>The <filename>/etc/locale.conf</filename> file below sets some
|
||||
environment variables necessary for native language support. Setting
|
||||
them properly results in:</para>
|
||||
<indexterm zone="ch-config-locale" revision='systemd'>
|
||||
<primary sortas="e-/etc/profile">/etc/locale.conf</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>Some environment variables are necessary for native language
|
||||
support. Setting them properly results in:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
@ -39,35 +42,37 @@
|
||||
</itemizedlist>
|
||||
|
||||
<para>Replace <replaceable><ll></replaceable> below with the two-letter code
|
||||
for your desired language (e.g., <quote>en</quote>) and
|
||||
for your desired language (e.g., <literal>en</literal>) and
|
||||
<replaceable><CC></replaceable> with the two-letter code for the appropriate
|
||||
country (e.g., <quote>GB</quote>). <replaceable><charmap></replaceable> should
|
||||
country (e.g., <literal>GB</literal>). <replaceable><charmap></replaceable> should
|
||||
be replaced with the canonical charmap for your chosen locale. Optional
|
||||
modifiers such as <quote>@euro</quote> may also be present.</para>
|
||||
modifiers such as <literal>@euro</literal> may also be present.</para>
|
||||
|
||||
<para>The list of all locales supported by Glibc can be obtained by running
|
||||
the following command:</para>
|
||||
|
||||
<screen role="nodump"><userinput>locale -a</userinput></screen>
|
||||
|
||||
<para>Charmaps can have a number of aliases, e.g., <quote>ISO-8859-1</quote>
|
||||
is also referred to as <quote>iso8859-1</quote> and <quote>iso88591</quote>.
|
||||
<para>Charmaps can have a number of aliases, e.g.,
|
||||
<literal>ISO-8859-1</literal> is also referred to as
|
||||
<literal>iso8859-1</literal> and <literal>iso88591</literal>.
|
||||
Some applications cannot handle the various synonyms correctly (e.g., require
|
||||
that <quote>UTF-8</quote> is written as <quote>UTF-8</quote>, not
|
||||
<quote>utf8</quote>), so it is the safest in most
|
||||
that <literal>UTF-8</literal> is written as <literal>UTF-8</literal>, not
|
||||
<literal>utf8</literal>), so it is the safest in most
|
||||
cases to choose the canonical name for a particular locale. To determine
|
||||
the canonical name, run the following command, where <replaceable><locale
|
||||
name></replaceable> is the output given by <command>locale -a</command> for
|
||||
your preferred locale (<quote>en_GB.iso88591</quote> in our example).</para>
|
||||
your preferred locale (<literal>en_GB.iso88591</literal> in our
|
||||
example).</para>
|
||||
|
||||
<screen role="nodump"><userinput>LC_ALL=<replaceable><locale name></replaceable> locale charmap</userinput></screen>
|
||||
|
||||
<para>For the <quote>en_GB.iso88591</quote> locale, the above command
|
||||
<para>For the <literal>en_GB.iso88591</literal> locale, the above command
|
||||
will print:</para>
|
||||
|
||||
<screen><computeroutput>ISO-8859-1</computeroutput></screen>
|
||||
|
||||
<para>This results in a final locale setting of <quote>en_GB.ISO-8859-1</quote>.
|
||||
<para>This results in a final locale setting of <literal>en_GB.ISO-8859-1</literal>.
|
||||
It is important that the locale found using the heuristic above is tested prior
|
||||
to it being added to the Bash startup files:</para>
|
||||
|
||||
@ -90,66 +95,115 @@ LC_ALL=<locale name> locale int_prefix</userinput></screen>
|
||||
Further instructions assume that there are no such error messages from
|
||||
Glibc.</para>
|
||||
|
||||
<!-- FIXME: the xlib example will become obsolete in the future.-->
|
||||
<para>Some packages beyond LFS may also lack support for your chosen locale. One
|
||||
example is the X library (part of the X Window System), which outputs the
|
||||
following error message if the locale does not exactly match one of the character
|
||||
map names in its internal files:</para>
|
||||
|
||||
<screen><computeroutput>Warning: locale not supported by Xlib, locale set to C</computeroutput></screen>
|
||||
|
||||
<para>In several cases Xlib expects that the character map will be listed in
|
||||
uppercase notation with canonical dashes. For instance, "ISO-8859-1" rather
|
||||
than "iso88591". It is also possible to find an appropriate specification by
|
||||
removing the charmap part of the locale specification. This can be checked
|
||||
by running the <command>locale charmap</command> command in both locales.
|
||||
For example, one would have to change "de_DE.ISO-8859-15@euro" to
|
||||
"de_DE@euro" in order to get this locale recognized by Xlib.</para>
|
||||
|
||||
<para>Other packages can also function incorrectly (but may not necessarily
|
||||
display any error messages) if the locale name does not meet their expectations.
|
||||
In those cases, investigating how other Linux distributions support your locale
|
||||
might provide some useful information.</para>
|
||||
|
||||
<para>Once the proper locale settings have been determined, create the
|
||||
<filename>/etc/locale.conf</filename> file:</para>
|
||||
<para revision='systemd'>Once the proper locale settings have been
|
||||
determined, create the <filename>/etc/locale.conf</filename> file:</para>
|
||||
|
||||
<screen><userinput>cat > /etc/locale.conf << "EOF"
|
||||
<screen revision='systemd'><userinput>cat > /etc/locale.conf << "EOF"
|
||||
<literal>LANG=<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable></literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>Note that you can modify <filename>/etc/locale.conf</filename> with the
|
||||
<para>The shell program <command>/bin/bash</command> (here after referred
|
||||
as <quote>the shell</quote>) uses a collection of startup files to help
|
||||
create the environment to run in. Each file has a specific use and may
|
||||
affect login and interactive environments differently. The files in the
|
||||
<filename class="directory">/etc</filename> directory provide global
|
||||
settings. If equivalent files exist in the home directory, they
|
||||
may override the global settings.</para>
|
||||
|
||||
<para>An interactive login shell is started after a successful login,
|
||||
using <command>/bin/login</command>, by reading the
|
||||
<filename>/etc/passwd</filename> file. An interactive non-login shell is
|
||||
started at the command-line (e.g.
|
||||
<prompt>[prompt]$</prompt><command>/bin/bash</command>). A
|
||||
non-interactive shell is usually present when a shell script is running.
|
||||
It is non-interactive because it is processing a script and not waiting
|
||||
for user input between commands.</para>
|
||||
|
||||
<para><phrase revision='systemd'>The login shells are often unaffected by
|
||||
the settings in <filename>/etc/locale.conf</filename>. </phrase>Create the
|
||||
<filename>/etc/profile</filename>
|
||||
<phrase revision='sysv'>once the proper locale settings have been
|
||||
determined to set the desired locale</phrase><phrase
|
||||
revision='systemd'>to read the locale settings from
|
||||
<filename>/etc/locale.conf</filename> and export them</phrase>,
|
||||
but set the <literal>C.UTF-8</literal> locale instead if running in the Linux
|
||||
console (to prevent programs from outputting characters that the Linux
|
||||
console is unable to render):</para>
|
||||
|
||||
<screen revision="systemd"><userinput>cat > /etc/profile << "EOF"
|
||||
<literal># Begin /etc/profile
|
||||
|
||||
for i in $(locale); do
|
||||
unset ${i%=*}
|
||||
done
|
||||
|
||||
if [[ "$TERM" = linux ]]; then
|
||||
export LANG=C.UTF-8
|
||||
else
|
||||
source /etc/locale.conf
|
||||
|
||||
for i in $(locale); do
|
||||
key=${i%=*}
|
||||
if [[ -v $key ]]; then
|
||||
export $key
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# End /etc/profile</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<screen revision="sysv"><userinput>cat > /etc/profile << "EOF"
|
||||
<literal># Begin /etc/profile
|
||||
|
||||
for i in $(locale); do
|
||||
unset ${i%=*}
|
||||
done
|
||||
|
||||
if [[ "$TERM" = linux ]]; then
|
||||
export LANG=C.UTF-8
|
||||
else
|
||||
export LANG=<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable>
|
||||
fi
|
||||
|
||||
# End /etc/profile</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para revision='systemd'>Note that you can modify <filename>/etc/locale.conf</filename> with the
|
||||
systemd <command>localectl</command> utility. To use
|
||||
<command>localectl</command> for the example above, run:</para>
|
||||
|
||||
<screen role="nodump"><userinput>localectl set-locale LANG="<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable>"</userinput></screen>
|
||||
<screen revision='systemd' role="nodump"><userinput>localectl set-locale LANG="<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable>"</userinput></screen>
|
||||
|
||||
<para>You can also specify other language specific environment variables such
|
||||
as <envar>LANG</envar>, <envar>LC_CTYPE</envar>, <envar>LC_NUMERIC</envar> or
|
||||
any other environment variable from <command>locale</command> output. Just
|
||||
separate them with a space. An example where <envar>LANG</envar> is set as
|
||||
<para revision='systemd'>You can also specify other language specific
|
||||
environment variables such as <envar>LANG</envar>,
|
||||
<envar>LC_CTYPE</envar>, <envar>LC_NUMERIC</envar> or any other
|
||||
environment variable from <command>locale</command> output. Just separate
|
||||
them with a space. An example where <envar>LANG</envar> is set as
|
||||
en_US.UTF-8 but <envar>LC_CTYPE</envar> is set as just en_US is:</para>
|
||||
|
||||
<screen role="nodump"><userinput>localectl set-locale LANG="en_US.UTF-8" LC_CTYPE="en_US"</userinput></screen>
|
||||
<screen revision='systemd' role="nodump"><userinput>localectl set-locale LANG="en_US.UTF-8" LC_CTYPE="en_US"</userinput></screen>
|
||||
|
||||
<note><para>Please note that the <command>localectl</command> command
|
||||
doesn't work in the chroot environment. It can only
|
||||
be used after the LFS system is booted with systemd.</para></note>
|
||||
<note revision='systemd'><para>Please note that the
|
||||
<command>localectl</command> command doesn't work in the chroot
|
||||
environment. It can only be used after the LFS system is booted with
|
||||
systemd.</para></note>
|
||||
|
||||
<para>The <quote>C</quote> (default) and <quote>en_US</quote> (the recommended
|
||||
one for United States English users) locales are different. <quote>C</quote>
|
||||
<para>The <literal>C</literal> (default) and <literal>en_US</literal>
|
||||
(the recommended one for United States English users) locales are
|
||||
different. <literal>C</literal>
|
||||
uses the US-ASCII 7-bit character set, and treats bytes with the high bit set
|
||||
as invalid characters. That's why, e.g., the <command>ls</command> command
|
||||
substitutes them with question marks in that locale. Also, an attempt to send
|
||||
mail with such characters from Mutt or Pine results in non-RFC-conforming
|
||||
messages being sent (the charset in the outgoing mail is indicated as <quote>unknown
|
||||
8-bit</quote>). It's suggested that you use the <quote>C</quote> locale only
|
||||
messages being sent (the charset in the outgoing mail is indicated as
|
||||
<computeroutput>unknown 8-bit</computeroutput>). It's suggested that you
|
||||
use the <literal>C</literal> locale only
|
||||
if you are certain that you will never need 8-bit characters.</para>
|
||||
|
||||
<!--
|
||||
<para>UTF-8 based locales are not supported well by many programs.
|
||||
Work is in progress to document and, if possible, fix such problems, see
|
||||
<ulink url="&blfs-book;introduction/locale-issues.html"/>.</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
@ -62,9 +62,9 @@ EOF</userinput></screen>
|
||||
<para>The values in italics must be changed in each file, to set
|
||||
the interfaces up correctly.</para>
|
||||
|
||||
<para>If the <envar>ONBOOT</envar> variable is set to <quote>yes</quote> the
|
||||
<para>If the <envar>ONBOOT</envar> variable is set to <literal>yes</literal> the
|
||||
System V network script will bring up the Network Interface Card (NIC) during
|
||||
the system boot process. If set to anything besides <quote>yes</quote>, the NIC
|
||||
the system boot process. If set to anything besides <literal>yes</literal>, the NIC
|
||||
will be ignored by the network script and will not be started automatically.
|
||||
Interfaces can be manually started or stopped with the
|
||||
<command>ifup</command> and <command>ifdown</command> commands.</para>
|
||||
|
@ -50,9 +50,11 @@
|
||||
<filename class="extension">.netdev</filename> and
|
||||
<filename class="extension">.network</filename> files. For detailed
|
||||
descriptions and example contents of these configuration files, consult
|
||||
the <filename>systemd-link(5)</filename>,
|
||||
<filename>systemd-netdev(5)</filename> and
|
||||
<filename>systemd-network(5)</filename> manual pages.</para>
|
||||
the <ulink role='man' url='&man;systemd-link.5'>systemd-link(5)</ulink>,
|
||||
<ulink role='man' url='&man;systemd-netdev.5'>systemd-netdev(5)</ulink>,
|
||||
and <ulink role='man'
|
||||
url='&man;systemd-network.5'>systemd-network(5)</ulink> manual
|
||||
pages.</para>
|
||||
|
||||
<sect3 id="systemd-network-devices">
|
||||
<title>Network Device Naming</title>
|
||||
@ -89,18 +91,20 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
Mask udev's .link file for the default policy:
|
||||
Mask udev's <filename class='extension'>.link</filename> file
|
||||
for the default policy:
|
||||
<screen role="nodump"><userinput>ln -s /dev/null /etc/systemd/network/99-default.link</userinput></screen>
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Create a manual naming scheme, for example by naming the
|
||||
interfaces something like "internet0", "dmz0", or "lan0".
|
||||
To do that, create .link files in /etc/systemd/network/ that
|
||||
select an explicit name or a better naming scheme for your
|
||||
network interfaces. For example:
|
||||
Create a manual naming scheme, for example by naming the
|
||||
interfaces something like <literal>internet0</literal>,
|
||||
<literal>dmz0</literal>, or <literal>lan0</literal>.
|
||||
To do that, create <filename class='extension'>.link</filename>
|
||||
files in /etc/systemd/network/ that select an explicit name or a
|
||||
better naming scheme for your network interfaces. For example:
|
||||
</para>
|
||||
|
||||
<screen role="nodump"><userinput>cat > /etc/systemd/network/10-ether0.link << "EOF"
|
||||
@ -113,7 +117,7 @@ Name=ether0</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>
|
||||
See <filename>systemd.link(5)</filename> for more information.
|
||||
See <ulink role='man' url='&man;systemd.link.5'>systemd.link(5)</ulink> for more information.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
@ -357,7 +361,9 @@ EOF</userinput></screen>
|
||||
<literal>localhost.localdomain</literal>, or the hostname (without a
|
||||
domain) because they are handled by the
|
||||
<systemitem class='library'>myhostname</systemitem> NSS module, read
|
||||
the man page <filename>nss-myhostname(8)</filename> for details.</para>
|
||||
the man page <ulink role='man'
|
||||
url='&man;nss-myhostname.8'>nss-myhostname(8)</ulink> for
|
||||
details.</para>
|
||||
|
||||
<para>The ::1 entry is the IPv6 counterpart of 127.0.0.1 and represents
|
||||
the IPv6 loopback interface.</para>
|
||||
|
@ -1,163 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-config-profile" revision="sysv">
|
||||
<?dbhtml filename="profile.html"?>
|
||||
|
||||
<title>The Bash Shell Startup Files</title>
|
||||
|
||||
<indexterm zone="ch-config-profile">
|
||||
<primary sortas="e-/etc/profile">/etc/profile</primary>
|
||||
</indexterm>
|
||||
|
||||
<para>The shell program <command>/bin/bash</command> (hereafter referred to
|
||||
as <quote>the shell</quote>) uses a collection of startup files to help
|
||||
create the environment to run in. Each file has a specific use and may affect
|
||||
login and interactive environments differently. The files in the <filename
|
||||
class="directory">/etc</filename> directory provide global settings. If
|
||||
equivalent files exist in the home directory, they may override the global
|
||||
settings.</para>
|
||||
|
||||
<para>An interactive login shell is started after a successful login, using
|
||||
<command>/bin/login</command>, by reading the <filename>/etc/passwd</filename>
|
||||
file. An interactive non-login shell is started at the command-line (e.g.,
|
||||
<prompt>[prompt]$</prompt><command>/bin/bash</command>). A non-interactive
|
||||
shell is usually present when a shell script is running. It is non-interactive
|
||||
because it is processing a script and not waiting for user input between
|
||||
commands.</para>
|
||||
|
||||
<para>For more information, see the <emphasis>Bash Startup Files</emphasis> and
|
||||
<emphasis>Interactive Shells</emphasis> sections in the <emphasis>Bash
|
||||
Features</emphasis> chapter of the Bash info pages (<command>info bash</command>).</para>
|
||||
|
||||
<para>The files <filename>/etc/profile</filename> and
|
||||
<filename>~/.bash_profile</filename> are read when the shell is
|
||||
invoked as an interactive login shell.</para>
|
||||
|
||||
<para>The base <filename>/etc/profile</filename> below sets some
|
||||
environment variables necessary for native language support. Setting
|
||||
them properly results in:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>The output of programs translated into the native language</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Correct classification of characters into letters, digits and other
|
||||
classes. This is necessary for <command>bash</command> to properly accept
|
||||
non-ASCII characters in command lines in non-English locales</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The correct alphabetical sorting order for the country</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Appropriate default paper size</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Correct formatting of monetary, time, and date values</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Replace <replaceable><ll></replaceable> below with the two-letter code
|
||||
for the desired language (e.g., <quote>en</quote>) and
|
||||
<replaceable><CC></replaceable> with the two-letter code for the appropriate
|
||||
country (e.g., <quote>GB</quote>). <replaceable><charmap></replaceable> should
|
||||
be replaced with the canonical charmap for your chosen locale. Optional
|
||||
modifiers such as <quote>@euro</quote> may also be present.</para>
|
||||
|
||||
<para>The list of all locales supported by Glibc can be obtained by running
|
||||
the following command:</para>
|
||||
|
||||
<screen role="nodump"><userinput>locale -a</userinput></screen>
|
||||
|
||||
<para>Charmaps can have a number of aliases, e.g., <quote>ISO-8859-1</quote>
|
||||
is also referred to as <quote>iso8859-1</quote> and <quote>iso88591</quote>.
|
||||
Some applications cannot handle the various synonyms correctly (e.g., require
|
||||
that <quote>UTF-8</quote> is written as <quote>UTF-8</quote>, not
|
||||
<quote>utf8</quote>), so it is safest in most
|
||||
cases to choose the canonical name for a particular locale. To determine
|
||||
the canonical name, run the following command, where <replaceable><locale
|
||||
name></replaceable> is the output given by <command>locale -a</command> for
|
||||
your preferred locale (<quote>en_GB.iso88591</quote> in our example).</para>
|
||||
|
||||
<screen role="nodump"><userinput>LC_ALL=<replaceable><locale name></replaceable> locale charmap</userinput></screen>
|
||||
|
||||
<para>For the <quote>en_GB.iso88591</quote> locale, the above command
|
||||
will print:</para>
|
||||
|
||||
<screen><computeroutput>ISO-8859-1</computeroutput></screen>
|
||||
|
||||
<para>This results in a final locale setting of <quote>en_GB.ISO-8859-1</quote>.
|
||||
It is important that the locale found using the heuristic above is tested before
|
||||
it is added to the Bash startup files:</para>
|
||||
|
||||
<screen role="nodump"><userinput>LC_ALL=<locale name> locale language
|
||||
LC_ALL=<locale name> locale charmap
|
||||
LC_ALL=<locale name> locale int_curr_symbol
|
||||
LC_ALL=<locale name> locale int_prefix</userinput></screen>
|
||||
|
||||
<para>The above commands should print the language name, the character
|
||||
encoding used by the locale, the local currency, and the prefix to dial
|
||||
before the telephone number in order to get into the country. If any of the
|
||||
commands above fail with a message similar to the one shown below, this means
|
||||
that your locale was either not installed in <xref linkend="ch-system-glibc"/>
|
||||
or is not supported by the default installation of Glibc.</para>
|
||||
|
||||
<screen><computeroutput>locale: Cannot set LC_* to default locale: No such file or directory</computeroutput></screen>
|
||||
|
||||
<para>If this happens, you should either install the desired locale using the
|
||||
<command>localedef</command> command, or consider choosing a different locale.
|
||||
Further instructions assume that there are no such error messages from
|
||||
Glibc.</para>
|
||||
|
||||
<!-- FIXME: the xlib example will became obsolete real soon -->
|
||||
<!--<para>Some packages beyond LFS may also lack support for your chosen locale. One
|
||||
example is the X library (part of the X Window System), which outputs the
|
||||
following error message if the locale does not exactly match one of the character
|
||||
map names in its internal files:</para>
|
||||
|
||||
<screen><computeroutput>Warning: locale not supported by Xlib, locale set to C</computeroutput></screen>
|
||||
|
||||
<para>In several cases Xlib expects that the character map will be listed in
|
||||
uppercase notation with canonical dashes. For instance, "ISO-8859-1" rather
|
||||
than "iso88591". It is also possible to find an appropriate specification by
|
||||
removing the charmap part of the locale specification. This can be checked
|
||||
by running the <command>locale charmap</command> command in both locales.
|
||||
For example, one would have to change "de_DE.ISO-8859-15@euro" to
|
||||
"de_DE@euro" in order to get this locale recognized by Xlib.</para>
|
||||
-->
|
||||
<para>Other packages may also function incorrectly (but will not necessarily
|
||||
display any error messages) if the locale name does not meet their expectations.
|
||||
In such cases, investigating how other Linux distributions support your locale
|
||||
might provide some useful information.</para>
|
||||
|
||||
<para>Once the proper locale settings have been determined, create the
|
||||
<filename>/etc/profile</filename> file:</para>
|
||||
|
||||
<screen><userinput>cat > /etc/profile << "EOF"
|
||||
<literal># Begin /etc/profile
|
||||
|
||||
export LANG=<replaceable><ll>_<CC>.<charmap><@modifiers></replaceable>
|
||||
|
||||
# End /etc/profile</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>The <quote>C</quote> (default) and <quote>en_US.utf8</quote> (the recommended
|
||||
one for United States English users) locales are different. <quote>C</quote>
|
||||
uses the US-ASCII 7-bit character set, and treats bytes with the high-order bit set
|
||||
<quote>on</quote> as invalid characters. That's why, e.g., the <command>ls</command> command
|
||||
displays them as question marks in that locale. Also, an attempt to send
|
||||
mail with such characters from Mutt or Pine results in non-RFC-conforming
|
||||
messages being sent (the charset in the outgoing mail is indicated as <quote>unknown
|
||||
8-bit</quote>). So you can only use the <quote>C</quote> locale if you are sure
|
||||
you will never need 8-bit characters.</para>
|
||||
|
||||
<para>UTF-8 based locales are not supported well by some programs.
|
||||
Work is in progress to document and, if possible, fix such problems. See
|
||||
<ulink url="&blfs-book;introduction/locale-issues.html"/>.</para>
|
||||
|
||||
</sect1>
|
@ -21,8 +21,9 @@
|
||||
of options to control basic systemd operations. The default file has all
|
||||
entries commented out with the default settings indicated. This file is
|
||||
where the log level may be changed as well as some basic logging settings.
|
||||
See the <filename>systemd-system.conf(5)</filename> manual page for details
|
||||
on each configuration option.</para>
|
||||
See the <ulink role='man'
|
||||
url='&man;systemd-system.conf.5'>systemd-system.conf(5)</ulink> manual
|
||||
page for details on each configuration option.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -89,8 +90,8 @@ EOF</userinput></screen>
|
||||
<filename class="directory">/etc/tmpfiles.d</filename> override
|
||||
files with the same name in
|
||||
<filename class="directory">/usr/lib/tmpfiles.d</filename>. See
|
||||
<filename>tmpfiles.d(5)</filename> manual page for file format
|
||||
details.</para>
|
||||
<ulink role='man' url='&man;tmpfiles.d.5'>tmpfiles.d(5)</ulink> manual
|
||||
page for file format details.</para>
|
||||
|
||||
<para>
|
||||
Note that the syntax for the
|
||||
@ -135,7 +136,8 @@ Restart=always
|
||||
RestartSec=30</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>See <filename>systemd.unit(5)</filename> manual page for more
|
||||
<para>See <ulink role='man'
|
||||
url='&man;systemd.unit.5'>systemd.unit(5)</ulink> manual page for more
|
||||
information. After creating the configuration file, run
|
||||
<userinput>systemctl daemon-reload</userinput> and <userinput>systemctl
|
||||
restart foobar</userinput> to activate the changes to a service.</para>
|
||||
@ -251,10 +253,11 @@ cat > /etc/systemd/coredump.conf.d/maxuse.conf << EOF
|
||||
MaxUse=5G</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>See the <filename>systemd-coredump(8)</filename>,
|
||||
<filename>coredumpctl(1)</filename>, and
|
||||
<filename>coredump.conf.d(5)</filename> manual pages for more
|
||||
information.</para>
|
||||
<para>See the <ulink role='man' url='&man;systemd-coredump.8'>systemd-coredump(8)</ulink>,
|
||||
<ulink role='man' url='&man;coredumpctl.1'>coredumpctl(1)</ulink>, and
|
||||
<ulink role='man'
|
||||
url='&man;coredump.conf.d.5'>coredump.conf.d(5)</ulink> manual pages for
|
||||
more information.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
|
@ -129,13 +129,13 @@
|
||||
program and are usually related to the bus-specific identifiers of devices
|
||||
supported by a module. For example, the <emphasis>snd-fm801</emphasis>
|
||||
driver supports PCI devices with vendor ID 0x1319 and device ID 0x0801,
|
||||
and has an alias of <quote>pci:v00001319d00000801sv*sd*bc04sc01i*</quote>.
|
||||
and has an alias of <literal>pci:v00001319d00000801sv*sd*bc04sc01i*</literal>.
|
||||
For most devices, the bus driver exports the alias of the driver that
|
||||
would handle the device via <systemitem
|
||||
class="filesystem">sysfs</systemitem>. E.g., the
|
||||
<filename>/sys/bus/pci/devices/0000:00:0d.0/modalias</filename> file
|
||||
might contain the string
|
||||
<quote>pci:v00001319d00000801sv00001319sd00001319bc04sc01i00</quote>.
|
||||
<literal>pci:v00001319d00000801sv00001319sd00001319bc04sc01i00</literal>.
|
||||
The default rules provided with udev will cause <command>udevd</command>
|
||||
to call out to <command>/sbin/modprobe</command> with the contents of the
|
||||
<envar>MODALIAS</envar> uevent environment variable (which should be the
|
||||
@ -225,8 +225,9 @@
|
||||
<para>Note that the <quote>softdep</quote> command also allows
|
||||
<literal>pre:</literal> dependencies, or a mixture of both
|
||||
<literal>pre:</literal> and <literal>post:</literal> dependencies. See
|
||||
the <filename>modprobe.d(5)</filename> manual page for more information
|
||||
on <quote>softdep</quote> syntax and capabilities.</para>
|
||||
the <ulink role='man' url='&man;modprobe.d.5'>modprobe.d(5)</ulink>
|
||||
manual page for more information on <quote>softdep</quote> syntax and
|
||||
capabilities.</para>
|
||||
|
||||
<para revision="sysv">If the module in question is not a wrapper and is
|
||||
useful by itself, configure the <command>modules</command> bootscript to
|
||||
@ -300,7 +301,7 @@
|
||||
|
||||
<para>This is due to the fact that udev, by design, handles uevents and
|
||||
loads modules in parallel, and thus in an unpredictable order. This will
|
||||
never be <quote>fixed</quote>. You should not rely upon the kernel device
|
||||
never be <quote>fixed.</quote> You should not rely upon the kernel device
|
||||
names being stable. Instead, create your own rules that make symlinks with
|
||||
stable names based on some stable attributes of the device, such as a
|
||||
serial number or the output of various *_id utilities installed by udev.
|
||||
|
@ -32,7 +32,8 @@
|
||||
<para>SysVinit (which will be referred to as <quote>init</quote> from now on)
|
||||
uses a run levels scheme. There are seven run levels, numbered 0 to 6.
|
||||
(Actually, there are more run levels, but the others are for special cases and are
|
||||
generally not used. See <filename>init(8)</filename> for more details.)
|
||||
generally not used. See <ulink role='man'
|
||||
url='&man;init.8'>init(8)</ulink> for more details.)
|
||||
Each one of the seven corresponds to actions the computer is supposed to
|
||||
perform when it starts up or shuts down. The default run level is 3. Here are the
|
||||
descriptions of the different run levels as they are implemented in LFS:</para>
|
||||
@ -47,11 +48,11 @@
|
||||
|
||||
<note>
|
||||
<para>
|
||||
Classically, run level 2 above was defined as
|
||||
"multi-user mode without networking", but this was only the case
|
||||
many years ago when multiple users could connect to a system via
|
||||
serial ports. In today's environment it makes no sense, and
|
||||
we now say it is "reserved".
|
||||
Classically, run level 2 above was defined as <quote>multi-user
|
||||
mode without networking,</quote> but this was only the case
|
||||
many years ago when multiple users could connect to a system via
|
||||
serial ports. In today's environment it makes no sense, and
|
||||
we now say it is <quote>reserved.</quote>
|
||||
</para>
|
||||
</note>
|
||||
|
||||
@ -341,12 +342,13 @@ EOF</userinput></screen>
|
||||
url="https://tldp.org/HOWTO/HOWTO-INDEX/other-lang.html"/>. If still in
|
||||
doubt, look in the <filename class="directory">/usr/share/keymaps</filename>
|
||||
and <filename class="directory">/usr/share/consolefonts</filename> directories
|
||||
for valid keymaps and screen fonts. Read the <filename>loadkeys(1)</filename> and
|
||||
<filename>setfont(8)</filename> manual pages to determine the correct
|
||||
arguments for these programs.</para>
|
||||
for valid keymaps and screen fonts. Read the <ulink role='man'
|
||||
url='&man;loadkeys.1'>loadkeys(1)</ulink> and <ulink role='man'
|
||||
url='&man;setfont.8'>setfont(8)</ulink> manual pages to determine the
|
||||
correct arguments for these programs.</para>
|
||||
|
||||
<para>The <filename>/etc/sysconfig/console</filename> file should contain lines
|
||||
of the form: VARIABLE="value". The following variables are recognized:</para>
|
||||
of the form: <envar>VARIABLE=value</envar>. The following variables are recognized:</para>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
@ -354,7 +356,7 @@ EOF</userinput></screen>
|
||||
<listitem>
|
||||
<para>This variable specifies the log level for kernel messages sent
|
||||
to the console as set by <command>dmesg -n</command>. Valid levels are
|
||||
from "1" (no messages) to "8". The default level is "7".</para>
|
||||
from <literal>1</literal> (no messages) to <literal>8</literal>. The default level is <literal>7</literal>, which is quite verbose.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -363,7 +365,7 @@ EOF</userinput></screen>
|
||||
<listitem>
|
||||
<para>This variable specifies the arguments for the
|
||||
<command>loadkeys</command> program, typically, the name of the keymap
|
||||
to load, e.g., <quote>it</quote>. If this variable is not set, the
|
||||
to load, e.g., <literal>it</literal>. If this variable is not set, the
|
||||
bootscript will not run the <command>loadkeys</command> program,
|
||||
and the default kernel keymap will be used. Note that a few keymaps
|
||||
have multiple versions with the same name (cz and its variants in
|
||||
@ -382,7 +384,7 @@ EOF</userinput></screen>
|
||||
<command>loadkeys</command> program. This is useful if the stock keymap
|
||||
is not completely satisfactory and a small adjustment has to be made. E.g.,
|
||||
to include the Euro sign into a keymap that normally doesn't have it,
|
||||
set this variable to <quote>euro2</quote>.</para>
|
||||
set this variable to <literal>euro2</literal>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -391,12 +393,12 @@ EOF</userinput></screen>
|
||||
<listitem>
|
||||
<para>This variable specifies the arguments for the
|
||||
<command>setfont</command> program. Typically, this includes the font
|
||||
name, <quote>-m</quote>, and the name of the application character
|
||||
name, <literal>-m</literal>, and the name of the application character
|
||||
map to load. E.g., in order to load the <quote>lat1-16</quote> font
|
||||
together with the <quote>8859-1</quote> application character map
|
||||
(appropriate in the USA),
|
||||
<!-- because of the copyright sign -->
|
||||
set this variable to <quote>lat1-16 -m 8859-1</quote>.
|
||||
set this variable to <literal>lat1-16 -m 8859-1</literal>.
|
||||
In UTF-8 mode, the kernel uses the application character map to
|
||||
convert 8-bit key codes to UTF-8. Therefore
|
||||
the argument of the "-m" parameter should be set to the encoding of the
|
||||
@ -408,8 +410,8 @@ EOF</userinput></screen>
|
||||
<varlistentry>
|
||||
<term>UNICODE</term>
|
||||
<listitem>
|
||||
<para>Set this variable to <quote>1</quote>, <quote>yes</quote>, or
|
||||
<quote>true</quote> in order to put the
|
||||
<para>Set this variable to <literal>1</literal>, <literal>yes</literal>, or
|
||||
<literal>true</literal> in order to put the
|
||||
console into UTF-8 mode. This is useful in UTF-8 based locales and
|
||||
harmful otherwise.</para>
|
||||
</listitem>
|
||||
@ -430,6 +432,40 @@ EOF</userinput></screen>
|
||||
<para>Some examples:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
We'll use <literal>C.UTF-8</literal> as the locale for interactive
|
||||
sessions in the Linux console in <xref role=','
|
||||
linkend='ch-config-locale'/> so we should set
|
||||
<literal>UNICODE</literal> to <literal>1</literal>. And the console
|
||||
fonts shipped by the <application>Kbd</application> package
|
||||
containing the glyphs for all characters from the program messages
|
||||
in the <literal>C.UTF-8</literal> locale are
|
||||
<filename>LatArCyrHeb*.psfu.gz</filename>,
|
||||
<filename>LatGrkCyr*.psfu.gz</filename>,
|
||||
<filename>Lat2-Terminus16.psfu.gz</filename>, and
|
||||
<filename>pancyrillic.f16.psfu.gz</filename> in
|
||||
<filename class='directory'>/usr/share/consolefonts</filename> (the
|
||||
other shipped console fonts lack glyphs of some characters like the
|
||||
Unicode left/right quotation marks and the Unicode English dash).
|
||||
So set one of them, for example
|
||||
<filename>Lat2-Terminus16.psfu.gz</filename> as the default console
|
||||
font:
|
||||
</para>
|
||||
|
||||
<!-- We are using 'nodump' for the generic setting, but not for an
|
||||
example (see below). This is deliberate to keep the
|
||||
compatibility with jhalfs. -->
|
||||
<screen role='nodump'><userinput>cat > /etc/sysconfig/console << "EOF"
|
||||
<literal># Begin /etc/sysconfig/console
|
||||
|
||||
UNICODE="1"
|
||||
FONT="Lat2-Terminus16"
|
||||
|
||||
# End /etc/sysconfig/console</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>For a non-Unicode setup, only the KEYMAP and FONT variables are
|
||||
@ -524,7 +560,7 @@ EOF</userinput></screen>
|
||||
languages, because there accents are added to unaccented ASCII
|
||||
characters, or two ASCII characters are composed together. However, in
|
||||
UTF-8 mode it is a problem; e.g., for the Greek language, where one
|
||||
sometimes needs to put an accent on the letter <quote>alpha</quote>.
|
||||
sometimes needs to put an accent on the letter α.
|
||||
The solution is either to avoid the use of UTF-8, or to install the
|
||||
X window system, which doesn't have this limitation, in its input
|
||||
handling.</para>
|
||||
|
@ -56,7 +56,7 @@ EOF</userinput></screen>
|
||||
class="partition">sda2</filename>, <filename
|
||||
class="partition">sda5</filename>, and <systemitem
|
||||
class="filesystem">ext4</systemitem>. For details on the six
|
||||
fields in this file, see <filename>fstab(5)</filename>.</para>
|
||||
fields in this file, see <ulink role='man' url='&man;fstab.5'>fstab(5)</ulink>.</para>
|
||||
|
||||
<para>Filesystems with MS-DOS or Windows origin (i.e. vfat, ntfs, smbfs,
|
||||
cifs, iso9660, udf) need a special option, utf8, in order for non-ASCII
|
||||
|
@ -190,17 +190,6 @@ umount /sys/firmware/efi/efivars</userinput></screen>
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<!-- This does not seem to be true any more
|
||||
<note><para><application>grub-install</application> is a script and calls another
|
||||
program, grub-probe, that may fail with a message "cannot stat `/dev/root'".
|
||||
If so, create a temporary symbolic link from your root partition to /dev/root:</para>
|
||||
|
||||
<screen role="nodump"><userinput>ln -sv /dev/sda2 /dev/root</userinput></screen>
|
||||
|
||||
<para>The symbolic link will only be present until the system is rebooted.
|
||||
The link is only needed for the installation procedure.
|
||||
</para></note>
|
||||
-->
|
||||
</sect2>
|
||||
|
||||
<sect2 id="grub-cfg">
|
||||
|
@ -87,7 +87,7 @@
|
||||
un-tarring.</para>
|
||||
|
||||
<para>There are several ways to configure the kernel options. Usually,
|
||||
This is done through a menu-driven interface, for example:</para>
|
||||
this is done through a menu-driven interface, for example:</para>
|
||||
|
||||
<screen role="nodump"><userinput>make menuconfig</userinput></screen>
|
||||
|
||||
@ -304,7 +304,8 @@
|
||||
located in <xref linkend="ch-config-udev"/> and in the kernel
|
||||
documentation in the <filename
|
||||
class="directory">linux-&linux-version;/Documentation</filename> directory.
|
||||
Also, <filename>modprobe.d(5)</filename> may be of interest.</para>
|
||||
Also, <ulink role='man' url='&man;modprobe.d.5'>modprobe.d(5)</ulink>
|
||||
may be of interest.</para>
|
||||
|
||||
<para>Unless module support has been disabled in the kernel configuration,
|
||||
install the modules with:</para>
|
||||
|
@ -130,7 +130,7 @@ mounttype proc proc proc
|
||||
mounttype sys sysfs sysfs
|
||||
mounttype run tmpfs run
|
||||
if [ -h $LFS/dev/shm ]; then
|
||||
mkdir -pv $LFS/$(readlink $LFS/dev/shm)
|
||||
install -v -d -m 1777 $LFS$(realpath /dev/shm)
|
||||
else
|
||||
mounttype dev/shm tmpfs tmpfs -o nosuid,nodev
|
||||
fi
|
||||
|
@ -92,9 +92,9 @@
|
||||
<!ENTITY test-results "&lfs-root;lfs/build-logs/&generic-version;/">
|
||||
<!ENTITY secadv "&lfs-root;lfs/advisories/">
|
||||
|
||||
<!-- 4.14 EOL is Jan 2024
|
||||
so for LFS 11.5 we may consider moving to 4.19 -->
|
||||
<!ENTITY min-kernel "4.14">
|
||||
<!-- 4.19 EOL is Dec 2024
|
||||
so for LFS 12.3 we may consider moving to 5.4 -->
|
||||
<!ENTITY min-kernel "4.19">
|
||||
|
||||
<!--
|
||||
<!ENTITY patches-rootd "&lfs-root;patches/lfs/&generic-versiond;/">
|
||||
@ -125,6 +125,7 @@
|
||||
<!ENTITY github "https://github.com">
|
||||
<!ENTITY pypi-home "https://pypi.org/project">
|
||||
<!ENTITY pypi-src "https://pypi.org/packages/source">
|
||||
<!ENTITY man "https://man.archlinux.org/man/">
|
||||
|
||||
<!ENTITY root "<systemitem class='username'>root</systemitem>">
|
||||
<!ENTITY lfs-user "<systemitem class='username'>lfs</systemitem>">
|
||||
|
@ -152,6 +152,7 @@ if ( $package == "tcl" ) $dirpath = "https://www.tcl.tk/software/tcltk/do
|
||||
if ( $package == "util-linux" ) $dirpath = max_parent( $dirpath, "v." );
|
||||
if ( $package == "vim" ) $dirpath = "https://github.com/vim/vim/tags";
|
||||
if ( $package == "wheel" ) $dirpath = "https://pypi.org/project/wheel/#files";
|
||||
if ( $package == "xz" ) $dirpath = github("tukaani-project/xz");
|
||||
if ( $package == "zlib" ) $dirpath = "https://www.zlib.net";
|
||||
if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
|
||||
|
||||
|
232
packages.ent
232
packages.ent
@ -13,12 +13,12 @@
|
||||
*-knl-* Package info for Kernel stuff
|
||||
-->
|
||||
|
||||
<!ENTITY acl-version "2.3.1">
|
||||
<!ENTITY acl-size "348 KB">
|
||||
<!ENTITY acl-version "2.3.2">
|
||||
<!ENTITY acl-size "363 KB">
|
||||
<!ENTITY acl-url "&savannah;/releases/acl/acl-&acl-version;.tar.xz">
|
||||
<!ENTITY acl-md5 "95ce715fe09acca7c12d3306d0f076b2">
|
||||
<!ENTITY acl-md5 "590765dee95907dbc3c856f7255bd669">
|
||||
<!ENTITY acl-home "&savannah-nongnu;/projects/acl">
|
||||
<!ENTITY acl-fin-du "6.1 MB">
|
||||
<!ENTITY acl-fin-du "6.3 MB">
|
||||
<!ENTITY acl-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY attr-version "2.5.2">
|
||||
@ -26,7 +26,7 @@
|
||||
<!ENTITY attr-url "&savannah;/releases/attr/attr-&attr-version;.tar.gz">
|
||||
<!ENTITY attr-md5 "227043ec2f6ca03c0948df5517f9c927">
|
||||
<!ENTITY attr-home "&savannah-nongnu;/projects/attr">
|
||||
<!ENTITY attr-fin-du "4.1 MB">
|
||||
<!ENTITY attr-fin-du "4.2 MB">
|
||||
<!ENTITY attr-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY autoconf-version "2.72">
|
||||
@ -34,8 +34,8 @@
|
||||
<!ENTITY autoconf-url "&gnu;autoconf/autoconf-&autoconf-version;.tar.xz">
|
||||
<!ENTITY autoconf-md5 "1be79f7106ab6767f18391c5e22be701">
|
||||
<!ENTITY autoconf-home "&gnu-software;autoconf/">
|
||||
<!ENTITY autoconf-fin-du "24 MB">
|
||||
<!ENTITY autoconf-fin-sbu-tests "6.0">
|
||||
<!ENTITY autoconf-fin-du "25 MB">
|
||||
<!ENTITY autoconf-fin-sbu-tests "0.5">
|
||||
<!ENTITY autoconf-fin-sbu "less than 0.1 SBU (about &autoconf-fin-sbu-tests; SBU with tests)">
|
||||
|
||||
<!ENTITY automake-version "1.16.5">
|
||||
@ -44,8 +44,8 @@
|
||||
<!ENTITY automake-url "&gnu;automake/automake-&automake-version;.tar.xz">
|
||||
<!ENTITY automake-md5 "4017e96f89fca45ca946f1c5db6be714">
|
||||
<!ENTITY automake-home "&gnu-software;automake/">
|
||||
<!ENTITY automake-fin-du "114 MB">
|
||||
<!ENTITY automake-fin-sbu "less than 0.1 SBU (about 7.0 SBU with tests)">
|
||||
<!ENTITY automake-fin-du "115 MB">
|
||||
<!ENTITY automake-fin-sbu "less than 0.1 SBU (about 1.6 SBU with tests)">
|
||||
|
||||
<!ENTITY bash-version "5.2.21">
|
||||
<!ENTITY bash-size "10,696 KB">
|
||||
@ -55,24 +55,24 @@
|
||||
<!ENTITY bash-tmp-du "67 MB">
|
||||
<!ENTITY bash-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY bash-fin-du "52 MB">
|
||||
<!ENTITY bash-fin-sbu "1.1 SBU">
|
||||
<!ENTITY bash-fin-sbu "1.2 SBU">
|
||||
|
||||
<!ENTITY bc-version "6.7.5">
|
||||
<!ENTITY bc-size "460 KB">
|
||||
<!ENTITY bc-url "https://github.com/gavinhoward/bc/releases/download/&bc-version;/bc-&bc-version;.tar.xz">
|
||||
<!ENTITY bc-md5 "e249b1f86f886d6fb71c15f72b65dd3d">
|
||||
<!ENTITY bc-home "https://git.gavinhoward.com/gavin/bc">
|
||||
<!ENTITY bc-fin-du "7.7 MB">
|
||||
<!ENTITY bc-fin-du "7.8 MB">
|
||||
<!ENTITY bc-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY binutils-version "2.41">
|
||||
<!ENTITY binutils-size "26,139 KB">
|
||||
<!ENTITY binutils-version "2.42">
|
||||
<!ENTITY binutils-size "26,922 KB">
|
||||
<!ENTITY binutils-url "https://sourceware.org/pub/binutils/releases/binutils-&binutils-version;.tar.xz">
|
||||
<!ENTITY binutils-md5 "256d7e0ad998e423030c84483a7c1e30">
|
||||
<!ENTITY binutils-md5 "a075178a9646551379bfb64040487715">
|
||||
<!ENTITY binutils-home "&gnu-software;binutils/">
|
||||
<!ENTITY binutils-tmpp1-du "647 MB">
|
||||
<!ENTITY binutils-tmpp1-du "663 MB">
|
||||
<!ENTITY binutils-tmpp1-sbu "1 SBU">
|
||||
<!ENTITY binutils-tmpp2-du "523 MB">
|
||||
<!ENTITY binutils-tmpp2-du "537 MB">
|
||||
<!ENTITY binutils-tmpp2-sbu "0.5 SBU">
|
||||
<!ENTITY binutils-fin-du "2.7 GB">
|
||||
<!ENTITY binutils-fin-sbu "2.2 SBU">
|
||||
@ -86,7 +86,7 @@
|
||||
<!ENTITY bison-tmp-du "57 MB">
|
||||
<!ENTITY bison-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY bison-fin-du "62 MB">
|
||||
<!ENTITY bison-fin-sbu "2.2 SBU">
|
||||
<!ENTITY bison-fin-sbu "2.3 SBU">
|
||||
|
||||
<!ENTITY bzip2-version "1.0.8">
|
||||
<!ENTITY bzip2-size "792 KB">
|
||||
@ -109,10 +109,10 @@
|
||||
<!ENTITY coreutils-url "&gnu;coreutils/coreutils-&coreutils-version;.tar.xz">
|
||||
<!ENTITY coreutils-md5 "459e9546074db2834eefe5421f250025">
|
||||
<!ENTITY coreutils-home "&gnu-software;coreutils/">
|
||||
<!ENTITY coreutils-tmp-du "168 MB">
|
||||
<!ENTITY coreutils-tmp-du "173 MB">
|
||||
<!ENTITY coreutils-tmp-sbu "0.3 SBU">
|
||||
<!ENTITY coreutils-fin-du "165 MB">
|
||||
<!ENTITY coreutils-fin-sbu "0.9 SBU">
|
||||
<!ENTITY coreutils-fin-du "175 MB">
|
||||
<!ENTITY coreutils-fin-sbu "1/0 SBU">
|
||||
|
||||
<!ENTITY dbus-version "1.14.10">
|
||||
<!ENTITY dbus-size "1,344 KB">
|
||||
@ -128,7 +128,7 @@
|
||||
<!ENTITY dejagnu-md5 "68c5208c58236eba447d7d6d1326b821">
|
||||
<!ENTITY dejagnu-home "&gnu-software;dejagnu/">
|
||||
<!ENTITY dejagnu-tmp-du "6.9 MB">
|
||||
<!ENTITY dejagnu-tmp-sbu "less than 0.1 SBU">
|
||||
<!ENTITY dejagnu-tmp-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY diffutils-version "3.10">
|
||||
<!ENTITY diffutils-size "1,587 KB">
|
||||
@ -146,22 +146,22 @@
|
||||
<!ENTITY e2fsprogs-md5 "6b4f18a33873623041857b4963641ee9">
|
||||
<!ENTITY e2fsprogs-home "http://e2fsprogs.sourceforge.net/">
|
||||
<!ENTITY e2fsprogs-fin-du "95 MB">
|
||||
<!ENTITY e2fsprogs-fin-sbu "2.4 SBU on a spinning disk, 0.6 SBU on an SSD">
|
||||
<!ENTITY e2fsprogs-fin-sbu "2.4 SBU on a spinning disk, 0.4 SBU on an SSD">
|
||||
|
||||
<!ENTITY elfutils-version "0.190"> <!-- libelf -->
|
||||
<!ENTITY elfutils-size "8,949 KB">
|
||||
<!ENTITY elfutils-url "https://sourceware.org/ftp/elfutils/&elfutils-version;/elfutils-&elfutils-version;.tar.bz2">
|
||||
<!ENTITY elfutils-md5 "79ad698e61a052bea79e77df6a08bc4b">
|
||||
<!ENTITY elfutils-home "https://sourceware.org/elfutils/">
|
||||
<!ENTITY elfutils-fin-du "122 MB">
|
||||
<!ENTITY elfutils-fin-du "124 MB">
|
||||
<!ENTITY elfutils-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY expat-version "2.5.0">
|
||||
<!ENTITY expat-size "450 KB">
|
||||
<!ENTITY expat-version "2.6.0">
|
||||
<!ENTITY expat-size "473 KB">
|
||||
<!ENTITY expat-url "&sourceforge;expat/expat-&expat-version;.tar.xz">
|
||||
<!ENTITY expat-md5 "ac6677b6d1b95d209ab697ce8b688704">
|
||||
<!ENTITY expat-md5 "bd169cb11f4b9bdfddadf9e88a5c4d4b">
|
||||
<!ENTITY expat-home "https://libexpat.github.io/">
|
||||
<!ENTITY expat-fin-du "12 MB">
|
||||
<!ENTITY expat-fin-du "13 MB">
|
||||
<!ENTITY expat-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY expect-version "5.45.4">
|
||||
@ -205,7 +205,7 @@
|
||||
<!ENTITY flit-core-url "&pypi-src;/f/flit-core/flit_core-&flit-core-version;.tar.gz">
|
||||
<!ENTITY flit-core-md5 "3bc52f1952b9a78361114147da63c35b">
|
||||
<!ENTITY flit-core-home "&pypi-home;/flit-core/">
|
||||
<!ENTITY flit-core-fin-du "1.7 MB">
|
||||
<!ENTITY flit-core-fin-du "1.6 MB">
|
||||
<!ENTITY flit-core-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY gawk-version "5.3.0">
|
||||
@ -213,9 +213,9 @@
|
||||
<!ENTITY gawk-url "&gnu;gawk/gawk-&gawk-version;.tar.xz">
|
||||
<!ENTITY gawk-md5 "97c5a7d83f91a7e1b2035ebbe6ac7abd">
|
||||
<!ENTITY gawk-home "&gnu-software;gawk/">
|
||||
<!ENTITY gawk-tmp-du "48 MB">
|
||||
<!ENTITY gawk-tmp-du "47 MB">
|
||||
<!ENTITY gawk-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY gawk-fin-du "46 MB">
|
||||
<!ENTITY gawk-fin-du "42 MB">
|
||||
<!ENTITY gawk-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY gcc-version "13.2.0">
|
||||
@ -223,10 +223,10 @@
|
||||
<!ENTITY gcc-url "&gnu;gcc/gcc-&gcc-version;/gcc-&gcc-version;.tar.xz">
|
||||
<!ENTITY gcc-md5 "e0e48554cc6e4f261d55ddee9ab69075">
|
||||
<!ENTITY gcc-home "https://gcc.gnu.org/">
|
||||
<!ENTITY gcc-tmpp1-du "4.2 GB">
|
||||
<!ENTITY gcc-tmpp1-sbu "3.5 SBU">
|
||||
<!ENTITY gcc-tmpp1-du "4.1 GB">
|
||||
<!ENTITY gcc-tmpp1-sbu "3.8 SBU">
|
||||
<!ENTITY gcc-tmpp2-du "4.8 GB">
|
||||
<!ENTITY gcc-tmpp2-sbu "4.3 SBU">
|
||||
<!ENTITY gcc-tmpp2-sbu "4.4 SBU">
|
||||
<!ENTITY gcc-fin-du "5.5 GB ">
|
||||
<!ENTITY gcc-fin-sbu "42 SBU (with tests)">
|
||||
<!ENTITY libquadmath-version "0.0.0">
|
||||
@ -243,7 +243,7 @@
|
||||
<!ENTITY gdbm-md5 "8551961e36bf8c70b7500d255d3658ec">
|
||||
<!ENTITY gdbm-home "&gnu-software;gdbm/">
|
||||
<!ENTITY gdbm-fin-du "13 MB">
|
||||
<!ENTITY gdbm-fin-sbu "less than 0.1 SBU">
|
||||
<!ENTITY gdbm-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY gettext-version "0.22.4">
|
||||
<!ENTITY gettext-size "10,016 KB">
|
||||
@ -255,15 +255,15 @@
|
||||
<!ENTITY gettext-fin-du "250 MB">
|
||||
<!ENTITY gettext-fin-sbu "1.4 SBU">
|
||||
|
||||
<!ENTITY glibc-version "2.38">
|
||||
<!ENTITY glibc-size "18,471 KB">
|
||||
<!ENTITY glibc-version "2.39">
|
||||
<!ENTITY glibc-size "18,092 KB">
|
||||
<!ENTITY glibc-url "&gnu;glibc/glibc-&glibc-version;.tar.xz">
|
||||
<!ENTITY glibc-md5 "778cce0ea6bf7f84ca8caacf4a01f45b">
|
||||
<!ENTITY glibc-md5 "be81e87f72b5ea2c0ffe2bedfeb680c6">
|
||||
<!ENTITY glibc-home "&gnu-software;libc/">
|
||||
<!ENTITY glibc-tmp-du "858 MB">
|
||||
<!ENTITY glibc-tmp-sbu "1.6 SBU">
|
||||
<!ENTITY glibc-fin-du "3.0 GB">
|
||||
<!ENTITY glibc-fin-sbu "11 SBU">
|
||||
<!ENTITY glibc-tmp-du "846 MB">
|
||||
<!ENTITY glibc-tmp-sbu "1.5 SBU">
|
||||
<!ENTITY glibc-fin-du "3.1 GB">
|
||||
<!ENTITY glibc-fin-sbu "12 SBU">
|
||||
|
||||
<!ENTITY gmp-version "6.3.0">
|
||||
<!ENTITY gmp-size "2,046 KB">
|
||||
@ -304,7 +304,7 @@
|
||||
<!ENTITY grub-url "https://ftp.gnu.org/gnu/grub/grub-&grub-version;.tar.xz">
|
||||
<!ENTITY grub-md5 "60c564b1bdc39d8e43b3aab4bc0fb140">
|
||||
<!ENTITY grub-home "&gnu-software;grub/">
|
||||
<!ENTITY grub-fin-du "161 MB">
|
||||
<!ENTITY grub-fin-du "166 MB">
|
||||
<!ENTITY grub-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY gzip-version "1.13">
|
||||
@ -317,10 +317,10 @@
|
||||
<!ENTITY gzip-fin-du "21 MB">
|
||||
<!ENTITY gzip-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY iana-etc-version "20240117">
|
||||
<!ENTITY iana-etc-size "596 KB">
|
||||
<!ENTITY iana-etc-version "20240125">
|
||||
<!ENTITY iana-etc-size "589 KB">
|
||||
<!ENTITY iana-etc-url "https://github.com/Mic92/iana-etc/releases/download/&iana-etc-version;/iana-etc-&iana-etc-version;.tar.gz">
|
||||
<!ENTITY iana-etc-md5 "215feb4b55043a6c18e84a5ed58b705f">
|
||||
<!ENTITY iana-etc-md5 "aed66d04de615d76c70890233081e584">
|
||||
<!ENTITY iana-etc-home "https://www.iana.org/protocols">
|
||||
<!ENTITY iana-etc-fin-du "4.8 MB">
|
||||
<!ENTITY iana-etc-fin-sbu "less than 0.1 SBU">
|
||||
@ -330,7 +330,7 @@
|
||||
<!ENTITY inetutils-url "&gnu;inetutils/inetutils-&inetutils-version;.tar.xz">
|
||||
<!ENTITY inetutils-md5 "9e5a6dfd2d794dc056a770e8ad4a9263">
|
||||
<!ENTITY inetutils-home "&gnu-software;inetutils/">
|
||||
<!ENTITY inetutils-fin-du "31 MB">
|
||||
<!ENTITY inetutils-fin-du "35 MB">
|
||||
<!ENTITY inetutils-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY intltool-version "0.51.0">
|
||||
@ -353,8 +353,8 @@
|
||||
<!ENTITY jinja2-size "264 KB">
|
||||
<!ENTITY jinja2-url "&pypi-src;/J/Jinja2/Jinja2-&jinja2-version;.tar.gz">
|
||||
<!ENTITY jinja2-md5 "caf5418c851eac59e70a78d9730d4cea">
|
||||
<!ENTITY jinja2-home "https://jinja.palletsprojects.com/en/3.0.x/">
|
||||
<!ENTITY jinja2-fin-du "3.4 MB">
|
||||
<!ENTITY jinja2-home "https://jinja.palletsprojects.com/en/3.1.x/">
|
||||
<!ENTITY jinja2-fin-du "3.2 MB">
|
||||
<!ENTITY jinja2-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY kbd-version "2.6.4">
|
||||
@ -362,7 +362,7 @@
|
||||
<!ENTITY kbd-url "https://www.kernel.org/pub/linux/utils/kbd/kbd-&kbd-version;.tar.xz">
|
||||
<!ENTITY kbd-md5 "e2fd7adccf6b1e98eb1ae8d5a1ce5762">
|
||||
<!ENTITY kbd-home "https://kbd-project.org/">
|
||||
<!ENTITY kbd-fin-du "35 MB">
|
||||
<!ENTITY kbd-fin-du "34 MB">
|
||||
<!ENTITY kbd-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY kmod-version "31">
|
||||
@ -419,7 +419,7 @@
|
||||
<!ENTITY libtool-md5 "2fc0b6ddcd66a89ed6e45db28fa44232">
|
||||
<!ENTITY libtool-home "&gnu-software;libtool/">
|
||||
<!ENTITY libtool-fin-du "45 MB">
|
||||
<!ENTITY libtool-fin-sbu "1.3 SBU">
|
||||
<!ENTITY libtool-fin-sbu "0.6 SBU">
|
||||
|
||||
<!ENTITY libxcrypt-version "4.4.36">
|
||||
<!ENTITY libxcrypt-size "610 KB">
|
||||
@ -431,12 +431,12 @@
|
||||
|
||||
<!ENTITY linux-major-version "6">
|
||||
<!ENTITY linux-minor-version "7">
|
||||
<!ENTITY linux-patch-version "1">
|
||||
<!ENTITY linux-patch-version "4">
|
||||
<!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">-->
|
||||
<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;">
|
||||
<!ENTITY linux-size "138,096 KB">
|
||||
<!ENTITY linux-size "138,130 KB">
|
||||
<!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz">
|
||||
<!ENTITY linux-md5 "d8a7394e0e349dd373e9722e141c8b61">
|
||||
<!ENTITY linux-md5 "370e1b6155ae63133380e421146619e0">
|
||||
<!ENTITY linux-home "https://www.kernel.org/">
|
||||
<!-- measured for 6.5.3 / gcc-13.2.0 on x86_64 with -j4 : minimum is
|
||||
allnoconfig + some configs we recommend for the users, rounded down to
|
||||
@ -475,29 +475,29 @@
|
||||
<!ENTITY man-db-url "&savannah;/releases/man-db/man-db-&man-db-version;.tar.xz">
|
||||
<!ENTITY man-db-md5 "67e0052fa200901b314fad7b68c9db27">
|
||||
<!ENTITY man-db-home "https://www.nongnu.org/man-db/">
|
||||
<!ENTITY man-db-fin-du "40 MB">
|
||||
<!ENTITY man-db-fin-du "41 MB">
|
||||
<!ENTITY man-db-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY man-pages-version "6.05.01">
|
||||
<!ENTITY man-pages-size "2,144 KB">
|
||||
<!ENTITY man-pages-version "6.06">
|
||||
<!ENTITY man-pages-size "2,116 KB">
|
||||
<!ENTITY man-pages-url "&kernel;linux/docs/man-pages/man-pages-&man-pages-version;.tar.xz">
|
||||
<!ENTITY man-pages-md5 "de4563b797cf9b1e0b0d73628b35e442">
|
||||
<!ENTITY man-pages-md5 "26b39e38248144156d437e1e10cb20bf">
|
||||
<!ENTITY man-pages-home "https://www.kernel.org/doc/man-pages/">
|
||||
<!ENTITY man-pages-fin-du "33 MB">
|
||||
<!ENTITY man-pages-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY markupsafe-version "2.1.4">
|
||||
<!ENTITY markupsafe-size "20 KB">
|
||||
<!ENTITY markupsafe-version "2.1.5">
|
||||
<!ENTITY markupsafe-size "19 KB">
|
||||
<!ENTITY markupsafe-url "&pypi-src;/M/MarkupSafe/MarkupSafe-&markupsafe-version;.tar.gz">
|
||||
<!ENTITY markupsafe-md5 "8138329a11cf4bd0f9db780b2af26c66">
|
||||
<!ENTITY markupsafe-md5 "8fe7227653f2fb9b1ffe7f9f2058998a">
|
||||
<!ENTITY markupsafe-home "https://palletsprojects.com/p/markupsafe/">
|
||||
<!ENTITY markupsafe-fin-du "548 KB">
|
||||
<!ENTITY markupsafe-fin-du "508 KB">
|
||||
<!ENTITY markupsafe-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY meson-version "1.3.1">
|
||||
<!ENTITY meson-version "1.3.2">
|
||||
<!ENTITY meson-size "2,172 KB">
|
||||
<!ENTITY meson-url "&github;/mesonbuild/meson/releases/download/&meson-version;/meson-&meson-version;.tar.gz">
|
||||
<!ENTITY meson-md5 "dd404b8c0f8b79f80181b4a58bb81768">
|
||||
<!ENTITY meson-md5 "2d0ebd3a24249617b1c4d30026380cf8">
|
||||
<!ENTITY meson-home "https://mesonbuild.com">
|
||||
<!ENTITY meson-fin-du "42 MB">
|
||||
<!ENTITY meson-fin-sbu "less than 0.1 SBU">
|
||||
@ -515,8 +515,8 @@
|
||||
<!ENTITY mpfr-url "https://ftp.gnu.org/gnu/mpfr/mpfr-&mpfr-version;.tar.xz">
|
||||
<!ENTITY mpfr-md5 "523c50c6318dde6f9dc523bc0244690a">
|
||||
<!ENTITY mpfr-home "https://www.mpfr.org/">
|
||||
<!ENTITY mpfr-fin-du "43 MB">
|
||||
<!ENTITY mpfr-fin-sbu "0.2 SBU">
|
||||
<!ENTITY mpfr-fin-du "44 MB">
|
||||
<!ENTITY mpfr-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY ncurses-release "6.4">
|
||||
<!ENTITY ncurses-version "&ncurses-release;-20230520">
|
||||
@ -539,13 +539,13 @@
|
||||
<!ENTITY ninja-fin-du "75 MB">
|
||||
<!ENTITY ninja-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY openssl-version "3.2.0">
|
||||
<!ENTITY openssl-size "17,284 KB">
|
||||
<!ENTITY openssl-version "3.2.1">
|
||||
<!ENTITY openssl-size "17,318 KB">
|
||||
<!ENTITY openssl-url "https://www.openssl.org/source/openssl-&openssl-version;.tar.gz">
|
||||
<!ENTITY openssl-md5 "7903549a14abebc5c323ce4e85f2cbb2">
|
||||
<!ENTITY openssl-md5 "c239213887804ba00654884918b37441">
|
||||
<!ENTITY openssl-home "https://www.openssl.org/">
|
||||
<!ENTITY openssl-fin-du "587 MB">
|
||||
<!ENTITY openssl-fin-sbu "3.0 SBU">
|
||||
<!ENTITY openssl-fin-du "805 MB">
|
||||
<!ENTITY openssl-fin-sbu "1.8 SBU">
|
||||
|
||||
<!ENTITY patch-version "2.7.6">
|
||||
<!ENTITY patch-size "766 KB">
|
||||
@ -569,12 +569,12 @@
|
||||
<!ENTITY perl-tmp-du "280 MB">
|
||||
<!ENTITY perl-tmp-sbu "0.6 SBU">
|
||||
<!ENTITY perl-fin-du "239 MB">
|
||||
<!ENTITY perl-fin-sbu "7.1 SBU">
|
||||
<!ENTITY perl-fin-sbu "1.5 SBU">
|
||||
|
||||
<!ENTITY pkgconf-version "2.1.0">
|
||||
<!ENTITY pkgconf-version "2.1.1">
|
||||
<!ENTITY pkgconf-size "305 KB">
|
||||
<!ENTITY pkgconf-url "https://distfiles.ariadne.space/pkgconf/pkgconf-&pkgconf-version;.tar.xz">
|
||||
<!ENTITY pkgconf-md5 "0f2eadbb9dea5aed95147272ae1592cc">
|
||||
<!ENTITY pkgconf-md5 "bc29d74c2483197deb9f1f3b414b7918">
|
||||
<!ENTITY pkgconf-home "http://pkgconf.org/">
|
||||
<!ENTITY pkgconf-fin-du "4.6 MB">
|
||||
<!ENTITY pkgconf-fin-sbu "less than 0.1 SBU">
|
||||
@ -584,7 +584,7 @@
|
||||
<!ENTITY procps-ng-url "https://sourceforge.net/projects/procps-ng/files/Production/procps-ng-&procps-ng-version;.tar.xz">
|
||||
<!ENTITY procps-ng-md5 "2f747fc7df8ccf402d03e375c565cf96">
|
||||
<!ENTITY procps-ng-home "https://sourceforge.net/projects/procps-ng">
|
||||
<!ENTITY procps-ng-fin-du "25 MB">
|
||||
<!ENTITY procps-ng-fin-du "27 MB">
|
||||
<!ENTITY procps-ng-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY psmisc-version "23.6">
|
||||
@ -598,19 +598,19 @@
|
||||
<!-- If python minor version changes, updates in python and
|
||||
meson pages will be needed: python3.6 and python3.6m -->
|
||||
|
||||
<!ENTITY python-version "3.12.1">
|
||||
<!ENTITY python-version "3.12.2">
|
||||
<!ENTITY python-minor "3.12">
|
||||
<!ENTITY python-size "20,102 KB">
|
||||
<!ENTITY python-size "20,109 KB">
|
||||
<!ENTITY python-url "https://www.python.org/ftp/python/&python-version;/Python-&python-version;.tar.xz">
|
||||
<!ENTITY python-md5 "50f827c800483776c8ef86e6a53831fa">
|
||||
<!ENTITY python-md5 "e7c178b97bf8f7ccd677b94d614f7b3c">
|
||||
<!ENTITY python-home "https://www.python.org/">
|
||||
<!ENTITY python-tmp-du "533 MB">
|
||||
<!ENTITY python-tmp-sbu "0.4 SBU">
|
||||
<!ENTITY python-fin-du "370 MB">
|
||||
<!ENTITY python-fin-sbu "1.9 SBU">
|
||||
<!ENTITY python-tmp-du "598 MB">
|
||||
<!ENTITY python-tmp-sbu "0.5 SBU">
|
||||
<!ENTITY python-fin-du "485 MB">
|
||||
<!ENTITY python-fin-sbu "1.8 SBU">
|
||||
<!ENTITY python-docs-url "https://www.python.org/ftp/python/doc/&python-version;/python-&python-version;-docs-html.tar.bz2">
|
||||
<!ENTITY python-docs-md5 "d5c21b804c219b06256495eae30fd153">
|
||||
<!ENTITY python-docs-size "7,998 KB">
|
||||
<!ENTITY python-docs-md5 "8a6310f6288e7f60c3565277ec3b5279">
|
||||
<!ENTITY python-docs-size "8,065 KB">
|
||||
|
||||
<!ENTITY readline-version "8.2">
|
||||
<!ENTITY readline-soversion "8.2"><!-- used for stripping -->
|
||||
@ -631,20 +631,20 @@
|
||||
<!ENTITY sed-fin-du "30 MB">
|
||||
<!ENTITY sed-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY setuptools-version "69.0.3">
|
||||
<!ENTITY setuptools-version "69.1.0">
|
||||
<!ENTITY setuptools-size "2,168 KB">
|
||||
<!ENTITY setuptools-url "&pypi-src;/s/setuptools/setuptools-&setuptools-version;.tar.gz">
|
||||
<!ENTITY setuptools-md5 "b82de45aaa6b9bb911226660212ebb83">
|
||||
<!ENTITY setuptools-md5 "6f6eb780ce12c90d81ce243747ed7ab0">
|
||||
<!ENTITY setuptools-home "&pypi-home;/setuptools/">
|
||||
<!ENTITY setuptools-fin-du "30 MB">
|
||||
<!ENTITY setuptools-fin-sbu "0.1 SBU">
|
||||
<!ENTITY setuptools-fin-du "20 MB">
|
||||
<!ENTITY setuptools-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY shadow-version "4.14.3">
|
||||
<!ENTITY shadow-size "1,760 KB">
|
||||
<!ENTITY shadow-version "4.14.5">
|
||||
<!ENTITY shadow-size "1,765 KB">
|
||||
<!ENTITY shadow-url "&github;/shadow-maint/shadow/releases/download/&shadow-version;/shadow-&shadow-version;.tar.xz">
|
||||
<!ENTITY shadow-md5 "b9a7f56d0c63297c0d11d742be2f8ffd">
|
||||
<!ENTITY shadow-md5 "452b0e59f08bf618482228ba3732d0ae">
|
||||
<!ENTITY shadow-home "&github;/shadow-maint/shadow/">
|
||||
<!ENTITY shadow-fin-du "46 MB">
|
||||
<!ENTITY shadow-fin-du "49 MB">
|
||||
<!ENTITY shadow-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY sysklogd-version "1.5.1">
|
||||
@ -669,7 +669,7 @@
|
||||
<!--<!ENTITY systemd-man-url "&anduin-sources;/systemd-man-pages-&systemd-version;-&systemd-stable;.tar.xz">-->
|
||||
<!ENTITY systemd-man-url "&anduin-sources;/systemd-man-pages-&systemd-man-version;.tar.xz">
|
||||
<!ENTITY systemd-man-md5 "1ebe54d7a80f9abf8f2d14ddfeb2432d">
|
||||
<!ENTITY systemd-fin-du "238 MB">
|
||||
<!ENTITY systemd-fin-du "247 MB">
|
||||
<!ENTITY systemd-fin-sbu "0.7 SBU">
|
||||
|
||||
<!ENTITY sysvinit-version "3.08">
|
||||
@ -677,7 +677,7 @@
|
||||
<!ENTITY sysvinit-url "&github;/slicer69/sysvinit/releases/download/&sysvinit-version;/sysvinit-&sysvinit-version;.tar.xz">
|
||||
<!ENTITY sysvinit-md5 "81a05f28d7b67533cfc778fcadea168c">
|
||||
<!ENTITY sysvinit-home "&savannah-nongnu;/projects/sysvinit">
|
||||
<!ENTITY sysvinit-fin-du "4.5 MB">
|
||||
<!ENTITY sysvinit-fin-du "3.5 MB">
|
||||
<!ENTITY sysvinit-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY tar-version "1.35">
|
||||
@ -688,7 +688,7 @@
|
||||
<!ENTITY tar-tmp-du "42 MB">
|
||||
<!ENTITY tar-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY tar-fin-du "43 MB">
|
||||
<!ENTITY tar-fin-sbu "1.7 SBU">
|
||||
<!ENTITY tar-fin-sbu "0.5 SBU">
|
||||
|
||||
<!ENTITY tcl-version "8.6.13">
|
||||
<!ENTITY tcl-major-version "8.6">
|
||||
@ -707,18 +707,18 @@
|
||||
<!ENTITY texinfo-url "&gnu;texinfo/texinfo-&texinfo-version;.tar.xz">
|
||||
<!ENTITY texinfo-md5 "edd9928b4a3f82674bcc3551616eef3b">
|
||||
<!ENTITY texinfo-home "&gnu-software;texinfo/">
|
||||
<!ENTITY texinfo-tmp-du "116 MB">
|
||||
<!ENTITY texinfo-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY texinfo-fin-du "128 MB">
|
||||
<!ENTITY texinfo-tmp-du "130 MB">
|
||||
<!ENTITY texinfo-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY texinfo-fin-du "139 MB">
|
||||
<!ENTITY texinfo-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY tzdata-version "2023d">
|
||||
<!ENTITY tzdata-size "440 KB">
|
||||
<!ENTITY tzdata-version "2024a">
|
||||
<!ENTITY tzdata-size "444 KB">
|
||||
<!ENTITY tzdata-url "https://www.iana.org/time-zones/repository/releases/tzdata&tzdata-version;.tar.gz">
|
||||
<!ENTITY tzdata-md5 "08b9d559939670725ec298fdbb029649">
|
||||
<!ENTITY tzdata-md5 "2349edd8335245525cc082f2755d5bf4">
|
||||
<!ENTITY tzdata-home "https://www.iana.org/time-zones">
|
||||
|
||||
<!ENTITY udev-fin-du "138 MB">
|
||||
<!ENTITY udev-fin-du "144 MB">
|
||||
<!ENTITY udev-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY udev-lfs-version "udev-lfs-20230818">
|
||||
@ -733,9 +733,9 @@
|
||||
<!ENTITY util-linux-url "&kernel;linux/utils/util-linux/v&util-linux-minor;/util-linux-&util-linux-version;.tar.xz">
|
||||
<!ENTITY util-linux-md5 "f3591e6970c017bb4bcd24ae762a98f5">
|
||||
<!ENTITY util-linux-home "https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/">
|
||||
<!ENTITY util-linux-tmp-du "169 MB">
|
||||
<!ENTITY util-linux-tmp-du "172 MB">
|
||||
<!ENTITY util-linux-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY util-linux-fin-du "310 MB">
|
||||
<!ENTITY util-linux-fin-du "313 MB">
|
||||
<!ENTITY util-linux-fin-sbu "0.5 SBU">
|
||||
|
||||
<!ENTITY vim-version "9.1.0041">
|
||||
@ -746,8 +746,8 @@
|
||||
<!--<!ENTITY vim-url "&anduin-sources;/vim-&vim-version;.tar.gz">-->
|
||||
<!ENTITY vim-md5 "79dfe62be5d347b1325cbd5ce2a1f9b3">
|
||||
<!ENTITY vim-home "https://www.vim.org">
|
||||
<!ENTITY vim-fin-du "229 MB">
|
||||
<!ENTITY vim-fin-sbu "2.3 SBU">
|
||||
<!ENTITY vim-fin-du "236 MB">
|
||||
<!ENTITY vim-fin-sbu "2.5 SBU">
|
||||
|
||||
<!ENTITY wheel-version "0.42.0">
|
||||
<!ENTITY wheel-size "97 KB">
|
||||
@ -762,29 +762,29 @@
|
||||
<!ENTITY xml-parser-url "https://cpan.metacpan.org/authors/id/T/TO/TODDR/XML-Parser-&xml-parser-version;.tar.gz">
|
||||
<!ENTITY xml-parser-md5 "89a8e82cfd2ad948b349c0a69c494463">
|
||||
<!ENTITY xml-parser-home "&github;/chorny/XML-Parser">
|
||||
<!ENTITY xml-parser-fin-du "2.3 MB">
|
||||
<!ENTITY xml-parser-fin-du "2.4 MB">
|
||||
<!ENTITY xml-parser-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY xz-version "5.4.5">
|
||||
<!ENTITY xz-size "1,642 KB">
|
||||
<!ENTITY xz-url "https://tukaani.org/xz/xz-&xz-version;.tar.xz">
|
||||
<!ENTITY xz-md5 "1d33e0be05c53e7a5641acf5c8b35fdd">
|
||||
<!ENTITY xz-version "5.4.6">
|
||||
<!ENTITY xz-size "1,645 KB">
|
||||
<!ENTITY xz-url "https://github.com/tukaani-project/xz/releases/download/v&xz-version;/xz-&xz-version;.tar.xz">
|
||||
<!ENTITY xz-md5 "7ade7bd1181a731328f875bec62a9377">
|
||||
<!ENTITY xz-home "https://tukaani.org/xz">
|
||||
<!ENTITY xz-tmp-du "22 MB">
|
||||
<!ENTITY xz-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY xz-fin-du "24 MB">
|
||||
<!ENTITY xz-fin-du "25 MB">
|
||||
<!ENTITY xz-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY zlib-version "1.3">
|
||||
<!ENTITY zlib-size "1,461 KB">
|
||||
<!ENTITY zlib-version "1.3.1">
|
||||
<!ENTITY zlib-size "1,478 KB">
|
||||
<!-- DO NOT remove "fossils"!
|
||||
The upstream removes https://zlib.net/zlib-&zlib-version;.tar.xz
|
||||
once a newer version is released EVEN IF there is no security fixes.
|
||||
Unfortunately there is no .xz files in fossils directory. -->
|
||||
<!ENTITY zlib-url "https://zlib.net/fossils/zlib-&zlib-version;.tar.gz">
|
||||
<!ENTITY zlib-md5 "60373b133d630f74f4a1f94c1185a53f">
|
||||
<!ENTITY zlib-md5 "9855b6d802d7fe5b7bd5b196a2271655">
|
||||
<!ENTITY zlib-home "https://zlib.net/">
|
||||
<!ENTITY zlib-fin-du "6.2 MB">
|
||||
<!ENTITY zlib-fin-du "6.4 MB">
|
||||
<!ENTITY zlib-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY zstd-version "1.5.5">
|
||||
@ -793,5 +793,5 @@
|
||||
<!ENTITY zstd-md5 "63251602329a106220e0a5ad26ba656f">
|
||||
<!ENTITY zstd-home "https://facebook.github.io/zstd/">
|
||||
<!ENTITY zstd-fin-du "77 MB">
|
||||
<!ENTITY zstd-fin-sbu "0.4 SBU">
|
||||
<!ENTITY zstd-fin-sbu "0.5 SBU">
|
||||
|
||||
|
@ -56,7 +56,7 @@
|
||||
<variablelist>
|
||||
<varlistentry><term>The build</term><listitem>
|
||||
<para>is the machine where we build programs. Note that this machine
|
||||
is also referred to as the <quote>host</quote>.</para></listitem>
|
||||
is also referred to as the <quote>host.</quote></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry><term>The host</term><listitem>
|
||||
|
27
patches.ent
27
patches.ent
@ -2,6 +2,10 @@
|
||||
|
||||
<!-- Start of Common Patches -->
|
||||
|
||||
<!ENTITY bash-upstream-fixes-patch "bash-&bash-version;-upstream_fixes-1.patch">
|
||||
<!ENTITY bash-upstream-fixes-patch-md5 "2d1691a629c558e894dbb78ee6bf34ef">
|
||||
<!ENTITY bash-upstream-fixes-patch-size "5.9 KB">
|
||||
|
||||
<!ENTITY bzip2-docs-patch "bzip2-&bzip2-version;-install_docs-1.patch">
|
||||
<!ENTITY bzip2-docs-patch-md5 "6a5ac7e89b791aae556de0f745916f7f">
|
||||
<!ENTITY bzip2-docs-patch-size "1.6 KB">
|
||||
@ -13,24 +17,23 @@
|
||||
<!ENTITY glibc-fhs-patch "glibc-&glibc-version;-fhs-1.patch">
|
||||
<!ENTITY glibc-fhs-patch-md5 "9a5997c3452909b1769918c759eff8a2">
|
||||
<!ENTITY glibc-fhs-patch-size "2.8 KB">
|
||||
|
||||
<!ENTITY glibc-upstream-fixes-patch "glibc-&glibc-version;-upstream_fixes-3.patch">
|
||||
<!ENTITY glibc-upstream-fixes-patch-md5 "545977e0b5c341ba945cf4b5de92f1e2">
|
||||
<!ENTITY glibc-upstream-fixes-patch-size "28 KB">
|
||||
|
||||
<!--
|
||||
<!ENTITY glibc-upstream-fixes-patch "glibc-&glibc-version;-upstream_fixes-4.patch">
|
||||
<!ENTITY glibc-upstream-fixes-patch-md5 "66e843b00688c641c9bdda684db45b43">
|
||||
<!ENTITY glibc-upstream-fixes-patch-size "36 KB">
|
||||
-->
|
||||
<!ENTITY kbd-backspace-patch "kbd-&kbd-version;-backspace-1.patch">
|
||||
<!ENTITY kbd-backspace-patch-md5 "f75cca16a38da6caa7d52151f7136895">
|
||||
<!ENTITY kbd-backspace-patch-size "12 KB">
|
||||
|
||||
<!ENTITY pkgconf-upstream-fix-patch "pkgconf-&pkgconf-version;-upstream_fix-1.patch">
|
||||
<!ENTITY pkgconf-upstream-fix-patch-md5 "77d5bb10840724a0e3dc08efee548363">
|
||||
<!ENTITY pkgconf-upstream-fix-patch-size "4 KB">
|
||||
|
||||
<!ENTITY readline-fixes-patch "readline-&readline-version;-upstream_fixes-2.patch">
|
||||
<!ENTITY readline-fixes-patch-md5 "d2477ebe908cc99763d90dde7fd9549a">
|
||||
<!ENTITY readline-fixes-patch-size "5.7 KB">
|
||||
<!ENTITY readline-fixes-patch "readline-&readline-version;-upstream_fixes-3.patch">
|
||||
<!ENTITY readline-fixes-patch-md5 "9ed497b6cb8adcb8dbda9dee9ebce791">
|
||||
<!ENTITY readline-fixes-patch-size "13 KB">
|
||||
|
||||
<!ENTITY sysvinit-consolidated-patch "sysvinit-&sysvinit-version;-consolidated-1.patch">
|
||||
<!ENTITY sysvinit-consolidated-patch-md5 "17ffccbb8e18c39e8cedc32046f3a475">
|
||||
<!ENTITY sysvinit-consolidated-patch-size "2.5 KB">
|
||||
|
||||
<!ENTITY systemd-upstream-patch "systemd-&systemd-version;-upstream_fixes-1.patch">
|
||||
<!ENTITY systemd-upstream-patch-md5 "8d9c1014445c463cf7c24c162b1e0686">
|
||||
<!ENTITY systemd-upstream-patch-size "7.2 KB">
|
||||
|
@ -49,7 +49,7 @@
|
||||
</itemizedlist>
|
||||
|
||||
<para>While it is possible to create a complete system that will pass the LSB
|
||||
certification tests "from scratch", this can't be done without many additional packages
|
||||
certification tests <quote>from scratch,</quote> this can't be done without many additional packages
|
||||
that are beyond the scope of the LFS book. Installation instructions for these
|
||||
additional packages can be found in BLFS. </para>
|
||||
|
||||
|
@ -74,22 +74,27 @@ EOF</userinput></screen>
|
||||
|
||||
<para>This format is used to encapsulate text that is optional.</para>
|
||||
|
||||
<para><filename>passwd(5)</filename></para>
|
||||
<para><ulink role='man' url='&man;passwd.5'>passwd(5)</ulink></para>
|
||||
|
||||
<para>This format is used to refer to a specific manual (man) page. The number inside parentheses
|
||||
indicates a specific section inside the manuals. For example,
|
||||
<command>passwd</command> has two man pages. Per LFS installation instructions,
|
||||
those two man pages will be located at
|
||||
<filename>/usr/share/man/man1/passwd.1</filename> and
|
||||
<filename>/usr/share/man/man5/passwd.5</filename>. When the book uses <filename>passwd(5)</filename> it is
|
||||
<filename>/usr/share/man/man5/passwd.5</filename>. When the book uses
|
||||
<ulink role='man' url='&man;/passwd.5'>passwd(5)</ulink> it is
|
||||
specifically referring to <filename>/usr/share/man/man5/passwd.5</filename>.
|
||||
<command>man passwd</command> will print the first man page it finds that
|
||||
matches <quote>passwd</quote>, which will be
|
||||
matches <quote>passwd,</quote> which will be
|
||||
<filename>/usr/share/man/man1/passwd.1</filename>. For this example, you will
|
||||
need to run <command>man 5 passwd</command> in order to read the page
|
||||
being specified. Note that most man pages do not have duplicate
|
||||
page names in different sections. Therefore, <command>man <replaceable><program
|
||||
name></replaceable></command> is generally sufficient.</para>
|
||||
name></replaceable></command> is generally sufficient. In the LFS
|
||||
book these references to man pages are also hyperlinks, so clicking on
|
||||
such a reference will open the man page rendered in HTML from
|
||||
<ulink url='https://man.archlinux.org/'>Arch Linux manual
|
||||
pages</ulink>.</para>
|
||||
|
||||
</sect1>
|
||||
|
||||
|
@ -1,14 +1,13 @@
|
||||
<?xml version="1.0"?>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
extension-element-prefixes="exsl"
|
||||
version="1.0">
|
||||
xmlns:exsl="http://exslt.org/common"
|
||||
extension-element-prefixes="exsl"
|
||||
version="1.0">
|
||||
|
||||
<!-- XSLT stylesheet to extract commands from [B,H]LFS books. -->
|
||||
|
||||
<xsl:variable name="newline">
|
||||
<xsl:text>
|
||||
</xsl:text>
|
||||
<xsl:text>
</xsl:text>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:template match="/">
|
||||
|
@ -10,6 +10,14 @@
|
||||
<!-- Upstream XHTML presentation templates -->
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"/>
|
||||
|
||||
<xsl:param name="chunker.output.method" select="'xml'"/>
|
||||
<xsl:param name="chunker.output.encoding" select="'UTF-8'"/>
|
||||
<xsl:param name="chunker.output.media-type" select="'application/xhtml+xml'"/>
|
||||
<xsl:param name="chunker.output.doctype-public" select="'-//W3C//DTD XHTML 1.0 Strict//EN'"/>
|
||||
<xsl:param name="chunker.output.doctype-system" select="'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'"/>
|
||||
<xsl:param name="chunker.output.omit-xml-declaration" select="'yes'"/>
|
||||
<xsl:param name="chunker.output.indent" select="'no'"/>
|
||||
|
||||
<!-- Including our customized elements templates -->
|
||||
<xsl:include href="common.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-admon.xsl"/>
|
||||
@ -31,9 +39,6 @@
|
||||
<xsl:param name="ulink.target" select="''"/>
|
||||
<xsl:param name="css.decoration" select="0"/>
|
||||
|
||||
<!-- No XML declaration -->
|
||||
<xsl:param name="chunker.output.omit-xml-declaration" select="'yes'"/>
|
||||
|
||||
<!-- Control generation of ToCs and LoTs -->
|
||||
<xsl:param name="generate.toc">
|
||||
book toc,title
|
||||
|
@ -1,5 +1,5 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!DOCTYPE l:i18n SYSTEM "https://cdn.docbook.org/release/xsl-nons/current/common/l10n.dtd">
|
||||
<!DOCTYPE l:i18n SYSTEM "http://cdn.docbook.org/release/xsl-nons/current/common/l10n.dtd">
|
||||
|
||||
<l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">
|
||||
|
||||
|
@ -1,13 +1,13 @@
|
||||
/* Global settings */
|
||||
body {
|
||||
font-family: verdana, tahoma, helvetica, arial, sans-serif;
|
||||
font-family: verdana, tahoma, arial, sans-serif;
|
||||
text-align: left;
|
||||
background: #fff;
|
||||
color: #222;
|
||||
margin: 1em;
|
||||
padding: 0;
|
||||
font-size: 1em;
|
||||
line-height: 1.2em
|
||||
line-height: 1.2em;
|
||||
}
|
||||
|
||||
|
||||
@ -38,10 +38,36 @@ div.dedication {
|
||||
padding-left: 1em;
|
||||
}
|
||||
|
||||
/* Section titles */
|
||||
h1.sect1, h1.preface, h1.part, h1.chapter, h1.appendix, .glossary h1, .index h1
|
||||
{
|
||||
background: #f5f6f7;
|
||||
border-bottom: .1em solid #dbddec;
|
||||
margin-bottom:1em;
|
||||
margin-top: 0;
|
||||
padding: .4em;
|
||||
}
|
||||
|
||||
/* Sections */
|
||||
div.sect1, div.appendix {
|
||||
padding-left: .3em;
|
||||
/* Scrolling parts
|
||||
The header is taller for sect1 and chapter pages than on the
|
||||
other pages. Since we want fixed boxes, their top has to be calculated
|
||||
by trial and errors to fit below the static header box.*/
|
||||
|
||||
div.sect1, div.chapter, div.appendix, div.wrap {
|
||||
top: 11.55em;
|
||||
}
|
||||
div.preface, div.part, .index div.index {
|
||||
top: 10.15em;
|
||||
}
|
||||
div.sect1, div.appendix, div.preface, div.part, div.chapter, div.wrap, .index div.index {
|
||||
/* padding-left: .3em;*/
|
||||
overflow:auto;
|
||||
height: auto;
|
||||
position: fixed;
|
||||
left:1em;
|
||||
right:1em;
|
||||
bottom: 1em;
|
||||
border-bottom: 1em solid #dbddec;
|
||||
}
|
||||
|
||||
div.important ul {
|
||||
@ -63,8 +89,12 @@ div.important ul li p {
|
||||
background: #f5f6f7;
|
||||
border-bottom: 0.2em solid #dbddec;
|
||||
padding-top: .1em;
|
||||
margin-top: 0;
|
||||
/* margin-top: 0;*/
|
||||
}
|
||||
/*
|
||||
.lfs .package p:first-child {
|
||||
margin-top: 0;
|
||||
}*/
|
||||
|
||||
.lfs .configuration {
|
||||
background: #fefefe;
|
||||
@ -74,11 +104,11 @@ div.important ul li p {
|
||||
.lfs .content {
|
||||
background: #f5f6f7;
|
||||
border-top: 0.2em solid #dbddec;
|
||||
border-bottom: 0.2em solid #dbddec;
|
||||
padding-bottom: .1em;
|
||||
margin-bottom: 0;
|
||||
margin-bottom: .5em;
|
||||
}
|
||||
|
||||
|
||||
/* Headers */
|
||||
h1, h2, h3, h4, h5, h6, b, .strong {
|
||||
color: #000;
|
||||
@ -96,18 +126,6 @@ h1 {
|
||||
padding: 0.4em;
|
||||
}
|
||||
|
||||
.preface h1, .part h1, .chapter h1, .appendix h1, .index h1, .sect1 h1, .glossary h1 {
|
||||
background: #f5f6f7;
|
||||
border-bottom: .1em solid #dbddec;
|
||||
margin-bottom: 1em;
|
||||
margin-top: 0;
|
||||
padding: .4em;
|
||||
}
|
||||
|
||||
.sect1 h1, .appendix h1 {
|
||||
margin-left: -.2em;
|
||||
}
|
||||
|
||||
.wrap h1 {
|
||||
background: #f5f6f7;
|
||||
margin: 0;
|
||||
@ -157,13 +175,19 @@ div.navheader, div.navfooter {
|
||||
}
|
||||
|
||||
div.navheader {
|
||||
border-bottom: 1px solid #dbddec;
|
||||
position: sticky;
|
||||
top: 0;
|
||||
border-bottom: .1em solid #dbddec;
|
||||
}
|
||||
|
||||
/* no need for a footer now that the header is always visible */
|
||||
div.navfooter {
|
||||
border-top: 1px solid #dbddec;
|
||||
display:none;
|
||||
}
|
||||
|
||||
/* Except for the first page (TOC), where the bottom is the only
|
||||
place where navigation is displayed. */
|
||||
|
||||
div.book + div.navfooter {
|
||||
display:block
|
||||
}
|
||||
|
||||
div.navheader h4 {
|
||||
@ -179,7 +203,7 @@ div.navheader h3 {
|
||||
}
|
||||
|
||||
div.navheader ul, div.navfooter ul {
|
||||
padding: .2em .5em .5em 0;
|
||||
padding: .2em .5em .5em .5em; /*top right bottom left*/
|
||||
margin: .5em 0;
|
||||
position: relative;
|
||||
background: #dbddec;
|
||||
@ -196,29 +220,29 @@ div.navheader ul li.prev, div.navfooter ul li.prev {
|
||||
left: 0;
|
||||
text-align: left;
|
||||
padding: 0.2em 1em;
|
||||
margin-left: 6px;
|
||||
margin-left: .4em;
|
||||
}
|
||||
|
||||
div.navheader ul li.next, div.navfooter ul li.next {
|
||||
position: absolute;
|
||||
display: block;
|
||||
text-align: right;
|
||||
right: 5px;
|
||||
padding: 0.2em 0.5em;
|
||||
margin-right: 7px;
|
||||
right: 0;
|
||||
padding: 0.2em 1em;
|
||||
margin-right: .4em;
|
||||
}
|
||||
|
||||
div.navheader ul li.prev p, div.navfooter ul li.prev p,
|
||||
div.navheader ul li.next p, div.navfooter ul li.next p {
|
||||
padding: 0;
|
||||
margin: 1px 0px;
|
||||
margin: .1em 0;
|
||||
}
|
||||
|
||||
div.navheader ul li.home, div.navheader ul li.up,
|
||||
div.navfooter ul li.home, div.navfooter ul li.up {
|
||||
text-align: center;
|
||||
padding: 0;
|
||||
margin: 0px auto;
|
||||
margin: 0 auto;
|
||||
display: block;
|
||||
color: #dbddec;
|
||||
}
|
||||
|
@ -10,6 +10,13 @@
|
||||
<!-- Upstream XHTML templates -->
|
||||
<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"/>
|
||||
|
||||
<xsl:output method="xml"
|
||||
encoding="UTF-8"
|
||||
media-type="application/xhtml+xml"
|
||||
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
|
||||
omit-xml-declaration="yes"
|
||||
indent="no" />
|
||||
<!-- Include our customized templates -->
|
||||
<xsl:include href="common.xsl"/>
|
||||
<xsl:include href="xhtml/lfs-index.xsl"/>
|
||||
|
@ -53,8 +53,8 @@
|
||||
We have expanded the support to several inline tags.
|
||||
See pdf/lfs-mixed.xsl.
|
||||
Note: the argument in select= is a zero-width space
|
||||
(unicode 200b, encoded in utf-8)-->
|
||||
<xsl:param name="ulink.hyphenate" select="''"/>
|
||||
(unicode 200b)-->
|
||||
<xsl:param name="ulink.hyphenate" select="'​'"/>
|
||||
|
||||
<!-- List of characters to allow ulink URLs, and supported inline tags,
|
||||
to be automatically hyphenated on.
|
||||
|
@ -18,6 +18,7 @@
|
||||
|
||||
<!-- Generate DocBook instance with correct DOCTYPE -->
|
||||
<xsl:output method="xml"
|
||||
encoding="UTF-8"
|
||||
doctype-public="-//OASIS//DTD DocBook XML V4.5//EN"
|
||||
doctype-system="http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"/>
|
||||
|
||||
|
@ -11,10 +11,14 @@
|
||||
<xsl:param name="chunk.first.sections" select="1"/>
|
||||
|
||||
<!-- preface:
|
||||
Output non sect1 child elements before the TOC -->
|
||||
Output non sect1 child elements before the TOC
|
||||
Output title outside of the <div> because we want to be able to
|
||||
use it at a fixed position -->
|
||||
<!-- The original template is in {docbook-xsl}/xhtml/components.xsl -->
|
||||
<xsl:template match="preface">
|
||||
<xsl:call-template name="id.warning"/>
|
||||
<xsl:call-template name="preface.titlepage"/>
|
||||
<xsl:call-template name="component.separator"/>
|
||||
<div>
|
||||
<xsl:apply-templates select="." mode="class.attribute"/>
|
||||
<xsl:call-template name="dir">
|
||||
@ -26,8 +30,6 @@
|
||||
<xsl:call-template name="object.id"/>
|
||||
</xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:call-template name="component.separator"/>
|
||||
<xsl:call-template name="preface.titlepage"/>
|
||||
<xsl:apply-templates/>
|
||||
<xsl:variable name="toc.params">
|
||||
<xsl:call-template name="find.path.params">
|
||||
@ -44,11 +46,42 @@
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<!-- part:
|
||||
Output non sect1 child elements before the TOC
|
||||
Output title outside of the <div> because we want to be able to
|
||||
use it at a fixed position -->
|
||||
<!-- The original template is in {docbook-xsl}/xhtml/divisions.xsl -->
|
||||
<xsl:template match="part">
|
||||
<xsl:call-template name="id.warning"/>
|
||||
|
||||
<xsl:call-template name="part.titlepage"/>
|
||||
|
||||
<div>
|
||||
<xsl:apply-templates select="." mode="common.html.attributes"/>
|
||||
<xsl:call-template name="id.attribute">
|
||||
<xsl:with-param name="conditional" select="0"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:apply-templates/>
|
||||
<xsl:variable name="toc.params">
|
||||
<xsl:call-template name="find.path.params">
|
||||
<xsl:with-param name="table" select="normalize-space($generate.toc)"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
<xsl:if test="not(partintro) and contains($toc.params, 'toc')">
|
||||
<xsl:call-template name="division.toc"/>
|
||||
</xsl:if>
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<!-- chapter:
|
||||
Output non sect1 child elements before the TOC -->
|
||||
Output non sect1 child elements before the TOC
|
||||
Output title before div to be able to fix the title position -->
|
||||
<!-- The original template is in {docbook-xsl}/xhtml/components.xsl -->
|
||||
<xsl:template match="chapter">
|
||||
<xsl:call-template name="id.warning"/>
|
||||
<xsl:call-template name="chapter.titlepage"/>
|
||||
<xsl:call-template name="component.separator"/>
|
||||
<div>
|
||||
<xsl:apply-templates select="." mode="class.attribute"/>
|
||||
<xsl:call-template name="dir">
|
||||
@ -60,8 +93,6 @@
|
||||
<xsl:call-template name="object.id"/>
|
||||
</xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:call-template name="component.separator"/>
|
||||
<xsl:call-template name="chapter.titlepage"/>
|
||||
<xsl:apply-templates/>
|
||||
<xsl:variable name="toc.params">
|
||||
<xsl:call-template name="find.path.params">
|
||||
@ -78,12 +109,50 @@
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<!-- appendix:
|
||||
Output non sect1 child elements before the TOC
|
||||
Output title before div to be able to fix the title position -->
|
||||
<!-- The original template is in {docbook-xsl}/xhtml/components.xsl -->
|
||||
<xsl:template match="appendix">
|
||||
|
||||
<xsl:call-template name="id.warning"/>
|
||||
|
||||
<xsl:call-template name="appendix.titlepage"/>
|
||||
|
||||
<xsl:element name="div" namespace="http://www.w3.org/1999/xhtml">
|
||||
<xsl:call-template name="common.html.attributes">
|
||||
<xsl:with-param name="inherit" select="1"/>
|
||||
</xsl:call-template>
|
||||
<xsl:call-template name="id.attribute">
|
||||
<xsl:with-param name="conditional" select="0"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:apply-templates/>
|
||||
|
||||
<xsl:variable name="toc.params">
|
||||
<xsl:call-template name="find.path.params">
|
||||
<xsl:with-param name="table" select="normalize-space($generate.toc)"/>
|
||||
</xsl:call-template>
|
||||
</xsl:variable>
|
||||
|
||||
<xsl:if test="contains($toc.params, 'toc')">
|
||||
<xsl:call-template name="component.toc">
|
||||
<xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/>
|
||||
</xsl:call-template>
|
||||
</xsl:if>
|
||||
|
||||
</xsl:element>
|
||||
</xsl:template>
|
||||
|
||||
<!-- sect1:
|
||||
When there is a role attibute, use it as the class value.
|
||||
Process the SVN keywords found in sect1info as a footnote.
|
||||
Output title before the containing <div> so that the title
|
||||
can be at a fixed position.
|
||||
Removed unused code. -->
|
||||
<!-- The original template is in {docbook-xsl}/xhtml/sections.xsl -->
|
||||
<xsl:template match="sect1">
|
||||
<xsl:call-template name="sect1.titlepage"/>
|
||||
<div>
|
||||
<xsl:choose>
|
||||
<xsl:when test="@role">
|
||||
@ -96,7 +165,6 @@
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:call-template name="language.attribute"/>
|
||||
<xsl:call-template name="sect1.titlepage"/>
|
||||
<xsl:apply-templates/>
|
||||
<xsl:apply-templates select="sect1info" mode="svn-keys"/>
|
||||
</div>
|
||||
|
@ -3,7 +3,7 @@
|
||||
<!-- Create a md5 list for packages and patches used. -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
version="1.0">
|
||||
version="1.0">
|
||||
|
||||
<xsl:output method="text"/>
|
||||
|
||||
@ -31,8 +31,7 @@
|
||||
</xsl:call-template>
|
||||
|
||||
<!-- Add a newline -->
|
||||
<xsl:text>
|
||||
</xsl:text>
|
||||
<xsl:text>
</xsl:text>
|
||||
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
@ -4,7 +4,7 @@
|
||||
with wget. -->
|
||||
|
||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
version="1.0">
|
||||
version="1.0">
|
||||
|
||||
<xsl:output method="text"/>
|
||||
|
||||
@ -28,8 +28,7 @@
|
||||
<xsl:value-of select="@url"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:text>
|
||||
</xsl:text>
|
||||
<xsl:text>
</xsl:text>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user