From 0fd7f40bc796ec615fd2b26ee5e36320f6945f61 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 2 Mar 2024 17:37:09 +0800 Subject: [PATCH 01/30] kernel: No longer disable CONFIG_AUDIT for systemd The incompatibilty between systemd and CONFIG_AUDIT has been fixed since Linux kernel 3.14, thus there is no reason to disable it on LFS. And we are referring to pam_loginuid.so from /etc/pam.d in BLFS, which is completely useless if CONFIG_AUDIT is disabled. Link: https://github.com/systemd/systemd/commit/db999e0f923c --- chapter10/kernel/kernel.version | 2 +- chapter10/kernel/systemd.toml | 1 - chapter10/kernel/systemd.xml | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/chapter10/kernel/kernel.version b/chapter10/kernel/kernel.version index 06a765991..29310f454 100644 --- a/chapter10/kernel/kernel.version +++ b/chapter10/kernel/kernel.version @@ -1 +1 @@ -6.7.1 +6.7.4 diff --git a/chapter10/kernel/systemd.toml b/chapter10/kernel/systemd.toml index dae4a4049..b930e01a6 100644 --- a/chapter10/kernel/systemd.toml +++ b/chapter10/kernel/systemd.toml @@ -14,7 +14,6 @@ UEVENT_HELPER=' ' DEVTMPFS='*' DEVTMPFS_MOUNT='*' DRM=' *M' -AUDIT=' ' NET='*' INET='*' IPV6='*' diff --git a/chapter10/kernel/systemd.xml b/chapter10/kernel/systemd.xml index 5ed373790..b21d7d183 100644 --- a/chapter10/kernel/systemd.xml +++ b/chapter10/kernel/systemd.xml @@ -5,7 +5,6 @@ DO NOT EDIT! --> General setup ---> [ ] Compile the kernel with warnings as errors [WERROR] - [ ] Auditing support [AUDIT] CPU/Task time and stats accounting ---> [*] Pressure stall information tracking [PSI] [ ] Require boot parameter to enable pressure stall information tracking From 0566a056ba6c9c211b2810bfa648fd5f74a74182 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sat, 2 Mar 2024 09:15:52 -0600 Subject: [PATCH 02/30] Package updates. Update to iana-etc-20240222. Update to vim-9.1.0145. Update to xz-5.6.0. Update to tcl-8.6.14. Update to shadow-4.14.6. Update to setuptools-69.1.1. Update to linux-6.7.7. Update to libffi-3.4.6. Update to gettext-0.22.5. Update to expat-2.6.1. --- chapter01/changelog.xml | 46 ++++++++++++ chapter01/whatsnew.xml | 154 ++++++++++++++++++++-------------------- chapter08/tcl.xml | 4 +- packages.ent | 58 +++++++-------- 4 files changed, 154 insertions(+), 108 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 5a29d104f..c60e48ee0 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,52 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-03-02 + + + [bdubbs] - Update to iana-etc-20240222. Addresses + #5006. + + + [bdubbs] - Update to vim-9.1.0145. Addresses + #4500. + + + [bdubbs] - Update to xz-5.6.0. Fixes + #5447. + + + [bdubbs] - Update to tcl-8.6.14. Fixes + #5448. + + + [bdubbs] - Update to shadow-4.14.6. Fixes + #5450. + + + [bdubbs] - Update to setuptools-69.1.1. Fixes + #5446. + + + [bdubbs] - Update to linux-6.7.7. Fixes + #5444. + + + [bdubbs] - Update to libffi-3.4.6. Fixes + #5443. + + + [bdubbs] - Update to gettext-0.22.5. Fixes + #5445. + + + [bdubbs] - Update to expat-2.6.1. Fixes + #5449. + + + + 2024-03-01 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index b98cd66a3..f45c5a2c7 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -26,27 +26,27 @@ - + + + - + + + @@ -56,15 +56,15 @@ - + - + @@ -89,9 +89,9 @@ - + @@ -101,9 +101,9 @@ Gettext-&gettext-version; - + @@ -116,33 +116,33 @@ - + + Iana-Etc-&iana-etc-version; - + - + + + + @@ -152,12 +152,12 @@ - - Libelf from Elfutils-&elfutils-version; - + + Libffi-&libffi-version; + @@ -173,58 +173,58 @@ - + + + + - + + - + - + + + - + - + Setuptools-&setuptools-version; @@ -236,42 +236,42 @@ - + - - + + + - + Vim-&vim-version; - + + Xz-&xz-version; - + diff --git a/chapter08/tcl.xml b/chapter08/tcl.xml index 8a7884804..fd920e2c9 100644 --- a/chapter08/tcl.xml +++ b/chapter08/tcl.xml @@ -3,8 +3,8 @@ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ %general-entities; - - + + ]> diff --git a/packages.ent b/packages.ent index 28a3140ce..5017a8bf4 100644 --- a/packages.ent +++ b/packages.ent @@ -156,10 +156,10 @@ - + - + @@ -245,10 +245,10 @@ - - + + - + @@ -317,10 +317,10 @@ - + - + @@ -397,10 +397,10 @@ - - + + - + @@ -431,12 +431,12 @@ - + - + - + - + - + @@ -765,10 +765,10 @@ - - + + - + From c301941b9aee83ec158a13658715ba4b3ca1d160 Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Sat, 2 Mar 2024 15:02:00 -0600 Subject: [PATCH 03/30] vim: typo fix from rhubarbpieguy --- chapter08/vim.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/vim.xml b/chapter08/vim.xml index 88322132e..2ed5cf238 100644 --- a/chapter08/vim.xml +++ b/chapter08/vim.xml @@ -76,7 +76,7 @@ The test suite outputs a lot of binary data to the screen. This can cause issues with the settings of the current terminal (especially while - we are overriding the TERM variable to satisify some + we are overriding the TERM variable to satisfy 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 From 37823511a60550b48f1e30f4c112d952166f4144 Mon Sep 17 00:00:00 2001 From: Pierre Labastie Date: Mon, 4 Mar 2024 17:30:22 +0100 Subject: [PATCH 04/30] Fix rendering of non-chunked output Thanks to Vladimir Pertsev for the patch --- stylesheets/lfs-xsl/nochunks.xsl | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/stylesheets/lfs-xsl/nochunks.xsl b/stylesheets/lfs-xsl/nochunks.xsl index 896449d7c..d5afb4473 100644 --- a/stylesheets/lfs-xsl/nochunks.xsl +++ b/stylesheets/lfs-xsl/nochunks.xsl @@ -123,7 +123,7 @@ a:active { color: #6b77b1 ! important;} padding: 0 1em; } -.book h1, .book .authorgroup, .book .copyright, .book .legalnotice .revhistory { +/*.book h1,*/ .book .authorgroup, .book .copyright, .book .legalnotice .revhistory { background: #f5f6f7; margin: 0px auto; padding: .1em 1em; @@ -188,6 +188,10 @@ h1 { .book h1 { margin: 0; padding: 0.4em; + background: #f5f6f7; + border-top: .2em solid #dbddec; + border-bottom: .2em solid #dbddec; + text-align: center; } h1.title sup { @@ -198,7 +202,7 @@ h2 { font-size: 144%; } -.preface h2, .part h1, .chapter h2, .appendix h2, .index h1, .sect1 h2 { +.preface h2, .part h1, .chapter h2, .appendix h2, .index h1, .sect1 h2, .part h2 { background: #f5f6f7; border-top: .2em solid #dbddec; border-bottom: .2em solid #dbddec; From eb7223e8047505a2c7ef8c6d79bb5bbefbb61ed3 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Tue, 12 Mar 2024 18:50:42 +0800 Subject: [PATCH 05/30] shadow: Add an for using BLFS instruction if PAM installed --- chapter08/shadow.xml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/chapter08/shadow.xml b/chapter08/shadow.xml index 89678b3f4..8fb11e138 100644 --- a/chapter08/shadow.xml +++ b/chapter08/shadow.xml @@ -41,6 +41,15 @@ Installation of Shadow + + + If you've installed Linux-PAM, you should follow + the BLFS shadow + page instead of this page to build (or, rebuild or upgrade) + Shadow. + + + If you would like to enforce the use of strong passwords, refer to for installing From dcf5543233a7cda1ee3443542748153da4626df3 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Thu, 14 Mar 2024 09:36:53 -0500 Subject: [PATCH 06/30] Package updates. Update to wheel-0.43.0. Update to setuptools-69.2.0 (Python module). Update to meson-1.4.0. Update to expat-2.6.2 (Security fix). Update to iana-etc-20240305. Update to vim-9.1.0161. Update to xz-5.6.1. Update to shadow-4.15.0. Update to psmisc-23.7. Update to kmod-32. Update to elfutils-0.191. --- chapter01/changelog.xml | 50 +++++++++++++++++++++++++++++++++ chapter01/whatsnew.xml | 20 ++++++------- chapter08/kmod.xml | 1 + packages.ent | 62 ++++++++++++++++++++--------------------- 4 files changed, 92 insertions(+), 41 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index c60e48ee0..7caece337 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,56 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-03-15 + + + [bdubbs] - Update to wheel-0.43.0. Fixes + #5459. + + + [bdubbs] - Update to setuptools-69.2.0 (Python module). Fixes + #5462. + + + [bdubbs] - Update to meson-1.4.0. Fixes + #5460. + + + [bdubbs] - Update to expat-2.6.2 (Security fix). Fixes + #5461. + + + [bdubbs] - Update to iana-etc-20240305. Addresses + #5006. + + + [bdubbs] - Update to vim-9.1.0161. Addresses + #4500. + + + [bdubbs] - Update to xz-5.6.1. Fixes + #5457. + + + [bdubbs] - Update to shadow-4.15.0. Fixes + #5456. + + + [bdubbs] - Update to psmisc-23.7. Fixes + #5454. + + + [bdubbs] - Update to kmod-32. Fixes + #5455. + + + [bdubbs] - Update to elfutils-0.191. Fixes + #5451. + + + + 2024-03-02 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index f45c5a2c7..293478eae 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -140,9 +140,9 @@ - + @@ -152,9 +152,9 @@ - + Libffi-&libffi-version; @@ -182,9 +182,9 @@ - + @@ -212,9 +212,9 @@ - + @@ -260,9 +260,9 @@ Vim-&vim-version; - + diff --git a/chapter08/kmod.xml b/chapter08/kmod.xml index 9a16da3f0..4b194ea13 100644 --- a/chapter08/kmod.xml +++ b/chapter08/kmod.xml @@ -92,6 +92,7 @@ for target in depmod insmod modinfo modprobe rmmod; do ln -sfv ../bin/kmod /usr/sbin/$target + rm -fv /usr/bin/$target done ln -sfv kmod /usr/bin/lsmod diff --git a/packages.ent b/packages.ent index 5017a8bf4..815b57ca5 100644 --- a/packages.ent +++ b/packages.ent @@ -148,18 +148,18 @@ - - + + - + - - + + - + @@ -317,10 +317,10 @@ - + - + @@ -365,10 +365,10 @@ - - + + - + @@ -494,10 +494,10 @@ - - + + - + @@ -587,10 +587,10 @@ - - + + - + @@ -631,18 +631,18 @@ - - + + - + - - + + - + @@ -738,21 +738,21 @@ - + - + - + - + - + @@ -765,10 +765,10 @@ - - + + - + From e7231421fde669663d88722bb8fcba2a1e0bb10c Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 14 Mar 2024 22:53:21 +0800 Subject: [PATCH 07/30] kmod: Remove an unnecessary command and adjust the description /usr/bin/lsmod is already created by the building system. --- chapter08/kmod.xml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/chapter08/kmod.xml b/chapter08/kmod.xml index 4b194ea13..6f30185d2 100644 --- a/chapter08/kmod.xml +++ b/chapter08/kmod.xml @@ -84,18 +84,19 @@ (not the sanitized kernel headers installed earlier), which are beyond the scope of LFS. - Install the package and create symlinks for + Install the package and recreate some symlinks for compatibility with Module-Init-Tools (the package that previously handled - Linux kernel modules): + Linux kernel modules) in + /usr/sbin instead of + /usr/bin (where the building + system will create these symlinks): make install for target in depmod insmod modinfo modprobe rmmod; do ln -sfv ../bin/kmod /usr/sbin/$target rm -fv /usr/bin/$target -done - -ln -sfv kmod /usr/bin/lsmod +done From 98bdf39b6c4dad570b06ee5697bd1615ac7bac99 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 14 Mar 2024 22:59:27 +0800 Subject: [PATCH 08/30] shadow: Capitalization adjustment --- chapter08/shadow.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/shadow.xml b/chapter08/shadow.xml index 8fb11e138..315e3cc5e 100644 --- a/chapter08/shadow.xml +++ b/chapter08/shadow.xml @@ -46,7 +46,7 @@ If you've installed Linux-PAM, you should follow the BLFS shadow page instead of this page to build (or, rebuild or upgrade) - Shadow. + shadow. From 68215a4ed77a35f07aebda70d7ea3a045e772c17 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 14 Mar 2024 23:01:43 +0800 Subject: [PATCH 09/30] kmod: Emphasis that we don't want --- chapter08/kmod.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/kmod.xml b/chapter08/kmod.xml index 6f30185d2..459a2d5d9 100644 --- a/chapter08/kmod.xml +++ b/chapter08/kmod.xml @@ -89,7 +89,7 @@ Linux kernel modules) in /usr/sbin instead of /usr/bin (where the building - system will create these symlinks): + system will create these symlinks but we don't want them there): make install From e2d3b4b0bc1db527317b617f2919c694dce7e47c Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 14 Mar 2024 23:04:38 +0800 Subject: [PATCH 10/30] kmod: Use a more natural expression for symlink location issue --- chapter08/kmod.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/chapter08/kmod.xml b/chapter08/kmod.xml index 459a2d5d9..6c875caed 100644 --- a/chapter08/kmod.xml +++ b/chapter08/kmod.xml @@ -86,10 +86,10 @@ Install the package and recreate some symlinks for compatibility with Module-Init-Tools (the package that previously handled - Linux kernel modules) in - /usr/sbin instead of - /usr/bin (where the building - system will create these symlinks but we don't want them there): + Linux kernel modules). The building system will create all these + symlinks in /usr/bin, but we + only want lsmod there and all other symlinks in + /usr/sbin instead: make install From e31b6c53cb6abb0cac68da485dcfd56052c88c1c Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Tue, 19 Mar 2024 10:14:02 -0500 Subject: [PATCH 11/30] Fix Python currency --- lfs-latest-git.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lfs-latest-git.php b/lfs-latest-git.php index c2414789a..30d960b8e 100644 --- a/lfs-latest-git.php +++ b/lfs-latest-git.php @@ -15,7 +15,7 @@ $regex = array(); $regex[ 'intltool' ] = "/^.*Latest version is (\d[\d\.]+\d).*$/"; $regex[ 'less' ] = "/^.*current released version is less-(\d+).*$/"; $regex[ 'mpfr' ] = "/^mpfr-([\d\.]+)\.tar.*$/"; -$regex[ 'Python' ] = "/^.*Latest Python 3.*Python (3[\d\.]+\d).*$/"; +//$regex[ 'Python' ] = "/^.*Latest Python 3.*Python (3[\d\.]+\d).*$/"; //$regex[ 'sysvinit' ] = "/^.*sysvinit-([\d\.]+)dsf\.tar.*$/"; $regex[ 'tzdata' ] = "/^.*tzdata([\d]+[a-z]).*$/"; $regex[ 'xz' ] = "/^.*xz-([\d\.]*\d).*$/"; @@ -314,6 +314,9 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd"); if ( $package == "openssl" ) return find_max( $lines, "/openssl/", "/^.*openssl-([\d\.p]*\d.?).tar.*$/" ); + if ( $package == "Python" ) + return find_max( $lines, "/Python 3/", "/^.*Python (3[\d\]*\d) .*$/" ); + if ( $package == "vim" ) return find_max( $lines, "/v\d\./", "/^.*v([\d\.]+).*$/" ); From c5ae777ac2e42c4bb277943e04e12a92757c3399 Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Tue, 19 Mar 2024 17:56:41 -0500 Subject: [PATCH 12/30] Package updates and a new addition: Update to Linux-6.8.1 Update to iproute2-6.8.0 Add LZ4 to the book --- appendices/dependencies.xml | 45 +++++++++++- chapter01/changelog.xml | 14 ++++ chapter01/whatsnew.xml | 12 ++- chapter03/packages.xml | 9 +++ chapter08/chapter08.xml | 1 + chapter08/lz4.xml | 141 ++++++++++++++++++++++++++++++++++++ packages.ent | 22 ++++-- 7 files changed, 229 insertions(+), 15 deletions(-) create mode 100644 chapter08/lz4.xml diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index 9d92de448..7aa76eca7 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -1980,6 +1980,44 @@ + + Lz4 + + + &dependencies; + + Bash, Binutils, Coreutils, GCC, Glibc, and Make + + + + + &runtime; + + Glibc + + + + + &testsuites; + + Python + + + + + &before; + + Zstd and Systemd + + + + + &external; + + None + + + M4 @@ -2876,7 +2914,7 @@ &dependencies; Acl, Bash, Binutils, Coreutils, Diffutils, Gawk, - GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Libxcrypt, Meson, + GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Libxcrypt, Lz4, Meson, OpenSSL, Pkgconf, Sed, Util-linux, and Zstd @@ -2942,7 +2980,6 @@ Linux-PAM, lxml, - LZ4, make-ca, p11-kit, PCRE2, @@ -3426,7 +3463,7 @@ &dependencies; - Binutils, Coreutils, GCC, Glibc, Gzip, Make, Xz, and Zlib + Binutils, Coreutils, GCC, Glibc, Gzip, Lz4, Make, Xz, and Zlib @@ -3455,7 +3492,7 @@ &external; - LZ4 + None diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 7caece337..f7c12b29d 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,20 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-03-19 + + + [renodr] - Update to Linux-6.8.1. Fixes + #5453. + + + [renodr] - Added LZ4 to the book. Fixes + #5463. + + + + 2024-03-15 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 293478eae..c23697854 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -131,9 +131,9 @@ - + @@ -167,6 +167,9 @@ Linux-&linux-version; + @@ -288,8 +291,9 @@ Added: - - + + Lz4-&lz4-version; + diff --git a/chapter03/packages.xml b/chapter03/packages.xml index 1f5b55427..edc5cd611 100644 --- a/chapter03/packages.xml +++ b/chapter03/packages.xml @@ -489,6 +489,15 @@ + + Lz4 (&lz4-version;) - &lz4-size;: + + Home page: + Download: + MD5 sum: &lz4-md5; + + + M4 (&m4-version;) - &m4-size;: diff --git a/chapter08/chapter08.xml b/chapter08/chapter08.xml index c3ded2719..43bb6404a 100644 --- a/chapter08/chapter08.xml +++ b/chapter08/chapter08.xml @@ -19,6 +19,7 @@ + diff --git a/chapter08/lz4.xml b/chapter08/lz4.xml new file mode 100644 index 000000000..993d213e2 --- /dev/null +++ b/chapter08/lz4.xml @@ -0,0 +1,141 @@ + + + %general-entities; +]> + + + + + + Lz4 + &lz4-version; +
&lz4-url;
+
+ + Lz4-&lz4-version; + + + Lz4 + + + + + + <para>Lz4 is a lossless compression algorithm, providing compression speed + greater than 500 MB/s per core. It features an extremely fast decoder, with + speed in multiple GB/s per core. Lz4 can work with Zstandard to allow both + algorithms to compress data faster.</para> + + <segmentedlist> + <segtitle>&buildtime;</segtitle> + <segtitle>&diskspace;</segtitle> + + <seglistitem> + <seg>&lz4-fin-sbu;</seg> + <seg>&lz4-fin-du;</seg> + </seglistitem> + </segmentedlist> + + </sect2> + + <sect2 role="installation"> + <title>Installation of Lz4 + + Compile the package: + +make BUILD_STATIC=no + + To test the results, issue: + + + +make -j1 check + + Install the package: + +make BUILD_STATIC=no PREFIX=/usr install + + + + + Contents of Lz4 + + + Installed programs + Installed library + + + lz4, + lz4c (link to lz4), + lz4cat (link to lz4), and + unlz4 (link to lz4) + + + liblz4.so + + + + + Short Descriptions + + + + + lz4 + + Compresses or decompresses files using the LZ4 format + + lz4 + + + + + + lz4c + + Compresses files using the LZ4 format + + lz4c + + + + + + lz4cat + + Lists the contents of a file compressed using the LZ4 format + + lz4cat + + + + + + unlz4 + + Decompresses files using the LZ4 format + + unlz4 + + + + + + liblz4 + + The library implementing lossless data + compression, using the LZ4 algorithm + + liblz4 + + + + + + + + +
diff --git a/packages.ent b/packages.ent index 815b57ca5..ea4faf4ed 100644 --- a/packages.ent +++ b/packages.ent @@ -341,10 +341,10 @@ - - + + - + @@ -430,13 +430,13 @@ - - + + - + - + - +
diff --git a/packages.ent b/packages.ent index ea4faf4ed..408bf6264 100644 --- a/packages.ent +++ b/packages.ent @@ -486,10 +486,10 @@ - - + + - + From 4aa6ea3d1c19ea46952f5ce2f670a5137dea31d3 Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Tue, 19 Mar 2024 18:07:24 -0500 Subject: [PATCH 14/30] Add forgotten changelog entry for iproute2 --- chapter01/changelog.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index b91d7b632..7af0a6b3f 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -43,6 +43,10 @@ 2024-03-19 + + [renodr] - Update to iproute2-6.8.0. Fixes + #5458. + [renodr] - Update to man-pages-6.7. Fixes #5464. From 9694f4b6be04c92764140a277b74ce90144a27ce Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Tue, 19 Mar 2024 18:08:24 -0500 Subject: [PATCH 15/30] Add stats for LZ4. --- packages.ent | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages.ent b/packages.ent index 408bf6264..f00b02811 100644 --- a/packages.ent +++ b/packages.ent @@ -455,8 +455,8 @@ - - + + From 3d50ab19d09dd3647f8261a3054eaadd75ebcd39 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Wed, 20 Mar 2024 15:21:19 +0800 Subject: [PATCH 16/30] changelog: Fix typos --- chapter01/changelog.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 7af0a6b3f..2f2fcfa9d 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -45,19 +45,19 @@ [renodr] - Update to iproute2-6.8.0. Fixes - #5458. + #5458. [renodr] - Update to man-pages-6.7. Fixes - #5464. + #5464. [renodr] - Update to Linux-6.8.1. Fixes - #5453. + #5453. [renodr] - Added LZ4 to the book. Fixes - #5463. + #5463. From acaeb102aee13f921d65e61c96a689fd43f9d8f5 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Wed, 20 Mar 2024 18:30:45 +0800 Subject: [PATCH 17/30] packages: Fix and simplify for vim tags page Vladimir has reported that the link target of this is wrong. Note that the link target and the displayed text should be the same, thus use instead of ... to simplify it. --- chapter03/packages.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/chapter03/packages.xml b/chapter03/packages.xml index edc5cd611..dbbb43eae 100644 --- a/chapter03/packages.xml +++ b/chapter03/packages.xml @@ -822,8 +822,7 @@ The version of vim changes daily. To get the latest version, go to - - https://github.com/vim/vim/tags. + . From c3a956946d0d4849b45f1a39aeb1998ceaff08db Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Wed, 20 Mar 2024 09:46:44 -0500 Subject: [PATCH 18/30] Fix currency and cleanup Fix currency for upstream changes for Python psmisc Add currency for lz Remove a lot of old commented code. --- lfs-latest-git.php | 58 ++++++---------------------------------------- 1 file changed, 7 insertions(+), 51 deletions(-) diff --git a/lfs-latest-git.php b/lfs-latest-git.php index 30d960b8e..95abb7c28 100644 --- a/lfs-latest-git.php +++ b/lfs-latest-git.php @@ -77,6 +77,7 @@ function http_get_file( $url ) } if ( preg_match( "/sourceforge/", $url ) || + preg_match( "/python/", $url ) || preg_match( "/psmisc/", $url ) ) { exec( "lynx -dump $url 2>/dev/null", $lines ); @@ -134,6 +135,7 @@ if ( $package == "iana-etc" ) $dirpath = github("Mic92/iana-etc"); if ( $package == "intltool" ) $dirpath = "https://launchpad.net/intltool/trunk"; if ( $package == "libffi" ) $dirpath = github("libffi/libffi"); if ( $package == "libxcrypt" ) $dirpath = github("besser82/libxcrypt"); +if ( $package == "lz" ) $dirpath = github("lz4/lz4"); if ( $package == "meson" ) $dirpath = github("mesonbuild/meson"); if ( $package == "mpc" ) $dirpath = "https://ftp.gnu.org/gnu/mpc"; if ( $package == "mpfr" ) $dirpath = "https://mpfr.loria.fr/mpfr-current"; @@ -160,53 +162,6 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd"); if ( preg_match( "/^ftp/", $dirpath ) ) { echo "ftp should not occur\n"; - /* - $dirpath = substr( $dirpath, 6 ); // Remove ftp:// - $dirpath = rtrim ( $dirpath, "/" ); // Trim any trailing slash - $position = strpos( $dirpath, "/" ); // Divide at first slash - $server = substr( $dirpath, 0, $position ); - $path = substr( $dirpath, $position ); - - $conn = ftp_connect( $server ); - ftp_login( $conn, "anonymous", "" ); - - // See if we need special handling - if ( isset( $exceptions[ $package ] ) ) - { - $specials = explode( ":", $exceptions[ $package ] ); - - foreach ( $specials as $i ) - { - list( $op, $regexp ) = explode( "=", $i ); - - switch ($op) - { - case "UPDIR": - // Remove last dir from $path - $position = strrpos( $path, "/" ); - $path = substr( $path, 0, $position ); - - // Get dir listing - $lines = ftp_rawlist ($conn, $path); - $max = find_max( $lines, $regexp, $regexp ); - break; - - case "DOWNDIR": - // Append found directory - $path .= "/$max"; - break; - - default: - echo "Error in specials array for $package\n"; - return -5; - break; - } - } - } - - $lines = ftp_rawlist ($conn, $path); - ftp_close( $conn ); -*/ } else // http(s) { @@ -303,7 +258,7 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd"); return find_max( $lines, "/v\d/", "/^.*v([\d\.]+)$/" ); if ( $package == "psmisc" ) - return find_max( $lines, "/v\d/", "/^.*v([\d\.]+).tar.*$/" ); + return find_max( $lines, "/v\d/", "/^.*v([\d\.]+)$/" ); if ( $package == "grub" ) return find_max( $lines, "/grub/", "/^.*grub-([\d\.]+).tar.xz.*$/" ); @@ -311,11 +266,14 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd"); if ( $package == "Jinja" ) return find_max( $lines, "/Jinja/", "/^.*Jinja2 ([\d\.]+).*$/" ); + if ( $package == "lz" ) + return find_max( $lines, "/name.:/", '/^.*LZ4 v([\d\.]+)".*$/' ); + if ( $package == "openssl" ) return find_max( $lines, "/openssl/", "/^.*openssl-([\d\.p]*\d.?).tar.*$/" ); if ( $package == "Python" ) - return find_max( $lines, "/Python 3/", "/^.*Python (3[\d\]*\d) .*$/" ); + return find_max( $lines, "/Python 3/", "/^.*Python (3[\d\.]*\d) .*$/" ); if ( $package == "vim" ) return find_max( $lines, "/v\d\./", "/^.*v([\d\.]+).*$/" ); @@ -335,7 +293,6 @@ function get_current() // Fetech from git and get wget-list $current = array(); - #$lfssvn = "svn://svn.linuxfromscratch.org/LFS/trunk"; $lfsgit = "https://git.linuxfromscratch.org/lfs.git"; $tmpdir = exec( "mktemp -d /tmp/lfscheck.XXXXXX" ); @@ -367,7 +324,6 @@ function get_current() $file = rtrim( $file ); $pkg_pattern = "/(\D*).*/"; - //$pattern = "/\D*(\d.*\d)\D*/"; $pattern = "/\D*(\d.*\d)\D*/"; if ( preg_match( "/e2fsprogs/", $file ) ) From ae4e8da2c3630d716d916465a8801621a35b8347 Mon Sep 17 00:00:00 2001 From: Tim Tassonis Date: Mon, 25 Mar 2024 21:50:26 +0100 Subject: [PATCH 19/30] Update to sysvinit-3.09. --- chapter01/changelog.xml | 11 +++++++++++ packages.ent | 8 ++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 2f2fcfa9d..a3a80e818 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,17 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-04-25 + + + [timtas] - Update to sysvinit-3.09. Fixes + #5466. + + + + + 2024-03-19 diff --git a/packages.ent b/packages.ent index f00b02811..aecd85144 100644 --- a/packages.ent +++ b/packages.ent @@ -680,12 +680,12 @@ - - + + - + - + From cbf19601bc69be8811e2a1a910d46361037ff1a1 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Fri, 29 Mar 2024 15:04:03 -0500 Subject: [PATCH 20/30] Revert to xz-5.4.6 due to uptream compromise. --- chapter01/changelog.xml | 10 ++++++++++ packages.ent | 6 +++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 2f2fcfa9d..480b13d44 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,16 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-03-29 + + + [renodr] - Revert to xz-5.4.6 due to uptream + compromise. + + + + 2024-03-19 diff --git a/packages.ent b/packages.ent index f00b02811..17d168c2e 100644 --- a/packages.ent +++ b/packages.ent @@ -773,10 +773,10 @@ - - + + - + From 31336718bc2fe6df94db5a4290969b5bfd5a4c22 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 30 Mar 2024 09:09:26 +0800 Subject: [PATCH 21/30] xz: Host on anduin for now The GitHub repo is suspended due to malicious code injection. --- packages.ent | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages.ent b/packages.ent index ba791e166..e6fc1e59c 100644 --- a/packages.ent +++ b/packages.ent @@ -775,7 +775,7 @@ - + From 9b01d1b4ba6fc649623084522284fd4cdb123fbb Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 31 Mar 2024 17:10:23 -0500 Subject: [PATCH 22/30] Package updates. Update to iana-etc-20240318. Update to zstd-1.5.6. Update to util-linux-2.40. Update to shadow-4.15.1. Update to pkgconf-2.2.0. Update to linux-6.8.2. Update to coreutils-9.5. --- chapter01/changelog.xml | 34 ++++++++++++++++++ chapter01/whatsnew.xml | 16 ++++----- chapter07/util-linux.xml | 23 ++++++------ chapter08/coreutils.xml | 12 +++---- chapter08/util-linux.xml | 77 +++++++++++++++++++++------------------- packages.ent | 40 ++++++++++----------- patches.ent | 4 +-- 7 files changed, 122 insertions(+), 84 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index d85a43b39..7ce8db755 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -40,6 +40,40 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2024-03-31 + + + [bdubbs] - Update to iana-etc-20240318. Addresses + #5006. + + + [bdubbs] - Update to zstd-1.5.6. Fixes + #5468. + + + [bdubbs] - Update to util-linux-2.40. Fixes + #5430. + + + [bdubbs] - Update to shadow-4.15.1. Fixes + #5465. + + + [bdubbs] - Update to pkgconf-2.2.0. Fixes + #5469. + + + [bdubbs] - Update to linux-6.8.2. Fixes + #5467. + + + [bdubbs] - Update to coreutils-9.5. Fixes + #5470. + + + + 2024-03-29 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 5dffe2d9a..f856866bd 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -56,9 +56,9 @@ - + @@ -209,9 +209,9 @@ - + @@ -257,9 +257,9 @@ - + Vim-&vim-version; @@ -275,9 +275,9 @@ - +
- Fix a security vulnerability in the split - utility: - -sed -e '/n_out += n_hold/,+4 s|.*bufsize.*|//&|' \ - -i src/split.c - Now prepare Coreutils for compilation: autoreconf -fiv @@ -140,6 +133,11 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \ groupdel dummy + + Two tests, tests/cp/preserve-mode.sh and tests/mv/acl.sh, are known to + fail in the chroot environment, but pass in a complete system. + + Install the package: make install diff --git a/chapter08/util-linux.xml b/chapter08/util-linux.xml index 4c53b4eb5..4df6e04dd 100644 --- a/chapter08/util-linux.xml +++ b/chapter08/util-linux.xml @@ -42,43 +42,46 @@ Installation of Util-linux + Prepare Util-linux for compilation: -./configure --bindir=/usr/bin \ - --libdir=/usr/lib \ - --runstatedir=/run \ - --sbindir=/usr/sbin \ - --disable-chfn-chsh \ - --disable-login \ - --disable-nologin \ - --disable-su \ - --disable-setpriv \ - --disable-runuser \ - --disable-pylibmount \ - --disable-static \ - --without-python \ - --without-systemd \ + ./configure --bindir=/usr/bin \ + --libdir=/usr/lib \ + --runstatedir=/run \ + --sbindir=/usr/sbin \ + --disable-chfn-chsh \ + --disable-login \ + --disable-nologin \ + --disable-su \ + --disable-setpriv \ + --disable-runuser \ + --disable-pylibmount \ + --disable-liblastlog2 \ + --disable-static \ + --without-python \ + --without-systemd \ --without-systemdsystemunitdir \ ADJTIME_PATH=/var/lib/hwclock/adjtime \ --docdir=/usr/share/doc/util-linux-&util-linux-version; -./configure --bindir=/usr/bin \ - --libdir=/usr/lib \ - --runstatedir=/run \ - --sbindir=/usr/sbin \ - --disable-chfn-chsh \ - --disable-login \ - --disable-nologin \ - --disable-su \ - --disable-setpriv \ - --disable-runuser \ - --disable-pylibmount \ - --disable-static \ - --without-python \ + ./configure --bindir=/usr/bin \ + --libdir=/usr/lib \ + --runstatedir=/run \ + --sbindir=/usr/sbin \ + --disable-chfn-chsh \ + --disable-login \ + --disable-nologin \ + --disable-su \ + --disable-setpriv \ + --disable-runuser \ + --disable-pylibmount \ + --disable-liblastlog2 \ + --disable-static \ + --without-python \ ADJTIME_PATH=/var/lib/hwclock/adjtime \ --docdir=/usr/share/doc/util-linux-&util-linux-version; @@ -106,14 +109,16 @@ chown -R tester . su tester -c "make -k check" - The hardlink tests will fail if the host's kernel - does not have the option - enabled or does not have any options providing a SHA256 implementation - (for example, , or - if the CPU supports - Supplemental SSE3) enabled. In addition, - two sub-tests from misc: mbsencode and one sub-test from script: replay are - known to fail. + + The hardlink tests will fail if the host's kernel + does not have the option + enabled or does not have any options providing a SHA256 implementation + (for example, , or + if the CPU supports + Supplemental SSE3) enabled. In addition, the lsfd: inotify test will + fail if the kernel option is not + enabled. + Install the package: diff --git a/packages.ent b/packages.ent index e6fc1e59c..69ff0b3e5 100644 --- a/packages.ent +++ b/packages.ent @@ -104,10 +104,10 @@ - - + + - + @@ -317,10 +317,10 @@ - + - + @@ -431,12 +431,12 @@ - + - + - + - + + + - + @@ -795,10 +795,10 @@ - - + + - + diff --git a/patches.ent b/patches.ent index 17966e30c..fabb2f7ad 100644 --- a/patches.ent +++ b/patches.ent @@ -11,8 +11,8 @@ - - + + From 7a8f589df16e23bc0a8d42745f99dfd897dd922f Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Tue, 2 Apr 2024 18:06:25 +0800 Subject: [PATCH 23/30] changelog: Add revision='sysv' for sysvinit-3.09 entry --- chapter01/changelog.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 7ce8db755..70784a502 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -84,7 +84,7 @@ - + 2024-04-25 From ba64c50ecc9130acc178eb90b3745ff1fe9d8c85 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Tue, 2 Apr 2024 18:13:33 +0800 Subject: [PATCH 24/30] coreutils: Test names are filenames --- chapter08/coreutils.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chapter08/coreutils.xml b/chapter08/coreutils.xml index cd57219ca..1f935809b 100644 --- a/chapter08/coreutils.xml +++ b/chapter08/coreutils.xml @@ -134,7 +134,8 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \ groupdel dummy - Two tests, tests/cp/preserve-mode.sh and tests/mv/acl.sh, are known to + Two tests, tests/cp/preserve-mode.sh and + tests/mv/acl.sh, are known to fail in the chroot environment, but pass in a complete system. From 0dde2f570e6a67873937e8ef96902c4efe0f794b Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Tue, 2 Apr 2024 18:51:47 +0800 Subject: [PATCH 25/30] changelog: Fix date of sysvinit-3.09 update Well, we've had a time travaling! :) --- chapter01/changelog.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 70784a502..9f6d42bd0 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -85,7 +85,7 @@ - 2024-04-25 + 2024-03-25 [timtas] - Update to sysvinit-3.09. Fixes From 658401054ae3b9dcdbebb9ed63ca6092e980ffb2 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Thu, 4 Apr 2024 09:24:08 -0500 Subject: [PATCH 26/30] Typo --- chapter01/changelog.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 9f6d42bd0..58c013bdf 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -78,7 +78,7 @@ 2024-03-29 - [bdubbs] - Revert to xz-5.4.6 due to uptream + [bdubbs] - Revert to xz-5.4.6 due to upstream compromise. From a093e70903b0927261c63c2af364179e5d978362 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 5 Apr 2024 21:58:39 +0800 Subject: [PATCH 27/30] python: Run test suite with a time limit The test hang issue is not related to partial environment. It's just a known issue (for eg https://github.com/python/cpython/issues/91155) and happens when we are unlucky. So just run the test suite with a timeout. 1 SBU should be enough: it's approximately 4 times of the time used by the slowest test case, on both an old Athlon 64 3000+ and a Core i5-11300H. I've not seen any test failure on a complete system (the expat-related failure seems fixed by expat-2.6.2 or 2.6.1). TODO: really test this with LFS chroot and document failures if any. --- chapter08/python.xml | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/chapter08/python.xml b/chapter08/python.xml index 7ac618c09..8d3c1f905 100644 --- a/chapter08/python.xml +++ b/chapter08/python.xml @@ -78,11 +78,17 @@ make - Running the tests at this point is not recommended. The - tests are known to hang indefinitely in the partial LFS environment. - If desired, the tests can be rerun at the end of this chapter, or - when Python 3 is reinstalled in BLFS. To run the tests anyway, - issue make test. + Some tests are known to hang indefinitely. So to test the + results, run the test suite but set a 2-minute time limit for each + test case: + +make test TESTOPTS="--timeout 120" + + For a relatively slow system you may need to increase the time + limit and 1 SBU (measured when building Binutils pass 1 with one CPU + core) should be enough. Some tests are flaky, so the test suite will + automatically re-run failed tests. If a test failed but then passed + when re-run, it should be considered as passed. Install the package: From 91cf49535a74b1acde7dc1ba5762c8f774ea1241 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 6 Apr 2024 11:24:05 +0800 Subject: [PATCH 28/30] python: Make it clear that the test indefinitely hanging issue is occasional Or people will report things like "hey I didn't see any test had timed out." --- chapter08/python.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/python.xml b/chapter08/python.xml index 8d3c1f905..0f22ab2a9 100644 --- a/chapter08/python.xml +++ b/chapter08/python.xml @@ -78,7 +78,7 @@ make - Some tests are known to hang indefinitely. So to test the + Some tests are known to occasionally hang indefinitely. So to test the results, run the test suite but set a 2-minute time limit for each test case: From 9977b8f05b637ba681d93eff617b3b4507e5705b Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 6 Apr 2024 17:38:09 +0800 Subject: [PATCH 29/30] generalinstructions: Remove a false statement about "cp -R destroys symlink" It's just wrong (at least with all recent Coreutils releases). Note that hard links are really destroyed, but AFAIK tar does not keep hard links correctly anyway and destroying hard links won't cause packages fail to build at all. --- part3intro/generalinstructions.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/part3intro/generalinstructions.xml b/part3intro/generalinstructions.xml index 624771c2d..37e07f862 100644 --- a/part3intro/generalinstructions.xml +++ b/part3intro/generalinstructions.xml @@ -114,7 +114,7 @@ Do not use any method except the tar command to extract the source code. Notably, using the cp -R command to copy the - source code tree somewhere else can destroy links and + source code tree somewhere else can destroy timestamps in the source tree, and cause the build to fail. From 2f115238afad98b8b734bfccba61a0492fae67b4 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sun, 7 Apr 2024 21:04:05 +0800 Subject: [PATCH 30/30] kernel: Regenerate kernel config with 6.8.2 No real change. --- chapter10/kernel/kernel.version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter10/kernel/kernel.version b/chapter10/kernel/kernel.version index 29310f454..166d79d6d 100644 --- a/chapter10/kernel/kernel.version +++ b/chapter10/kernel/kernel.version @@ -1 +1 @@ -6.7.4 +6.8.2