diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index e055613ab..f13bb6e3a 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -40,6 +40,24 @@
appropriate for the entry or if needed the entire day's listitem.
-->
+
+ 2022-05-29
+
+
+ [xry111] - Update to vim-8.2.5014 (security fixes).
+ Addresses #4500.
+
+
+ [xry111] - Update to ninja-1.11.0. Fixes
+ #5062.
+
+
+ [xry111] - Update to systemd-251. Fixes
+ #5064.
+
+
+
+
2022-05-16
diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml
index 045de4c9d..cf5a5bb88 100644
--- a/chapter01/whatsnew.xml
+++ b/chapter01/whatsnew.xml
@@ -194,9 +194,9 @@
-
+
Openssl-&openssl-version;
@@ -230,9 +230,9 @@
-
+
SysVinit-&sysvinit-version;
@@ -298,6 +298,12 @@
perl-5.34.0-upstream_fixes-1.patch
+
+ systemd-250-kernel_5.17_fixes-1.patch
+
+
+ systemd-250-upstream_fixes-1.patch
+
diff --git a/chapter03/patches.xml b/chapter03/patches.xml
index bed7d4735..1df01b443 100644
--- a/chapter03/patches.xml
+++ b/chapter03/patches.xml
@@ -135,22 +135,6 @@
-
- Systemd Upstream Fixes Patch - &systemd-upstream-fixes-patch-size;:
-
- Download:
- MD5 sum: &systemd-upstream-fixes-patch-md5;
-
-
-
-
- Systemd Kernel Fixes Patch - &systemd-kernel-fixes-patch-size;:
-
- Download:
- MD5 sum: &systemd-kernel-fixes-patch-md5;
-
-
-
Xz Upstream Fix Patch - &xz-upstream-fix-patch-size;:
diff --git a/chapter08/check.xml b/chapter08/check.xml
index 1e7e4ec17..cb6b3590d 100644
--- a/chapter08/check.xml
+++ b/chapter08/check.xml
@@ -92,7 +92,7 @@
- libcheck.{a,so}
+ libcheck.so
Contains functions that allow Check to be called from a test
program
diff --git a/chapter08/openssl.xml b/chapter08/openssl.xml
index e9d5d54ca..ab8d33054 100644
--- a/chapter08/openssl.xml
+++ b/chapter08/openssl.xml
@@ -81,12 +81,15 @@ make MANSUFFIX=ssl install
You should update OpenSSL when a new version which fixes vulnerabilities
- is announced. The releases run in series, with a letter for each release
- after the initial release (e.g. 1.1.1, 1.1.1a, 1.1.1b, etc). Because LFS
- installs only the shared libraries, there is no need to recompile packages
- which link to libcrypto.so or
+ is announced. Since OpenSSL 3.0.0, the OpenSSL versioning scheme
+ follows the MAJOR.MINOR.PATCH format. API/ABI compatibility
+ are guaranteed for the same MAJOR version number. Because LFS
+ installs only the shared libraries, there is no need to recompile
+ packages which link to
+ libcrypto.so or
libssl.so
- when upgrading in the same series.
+ when upgrading to a version with MAJOR version number
+ unchanged.
diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml
index 75b1231d8..07892faf4 100644
--- a/chapter08/systemd.xml
+++ b/chapter08/systemd.xml
@@ -40,16 +40,6 @@
Installation of systemd
- First, apply a patch to fix a security vulnerability and regressions
- with hostnames and idle units:
-
-patch -Np1 -i ../systemd-&systemd-version;-upstream_fixes-1.patch
-
- Now, apply a patch to fix a problem with the linux kernel's headers in
- version 5.17 and later:
-
-patch -Np1 -i ../systemd-&systemd-version;-kernel_5.17_fixes-1.patch
-
Remove two unneeded groups,
render and
sgx, from the default udev
@@ -64,21 +54,18 @@
cd build
meson --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
--buildtype=release \
- -Dblkid=true \
-Ddefault-dnssec=no \
-Dfirstboot=false \
-Dinstall-tests=false \
-Dldconfig=false \
-Dsysusers=false \
- -Db_lto=false \
-Drpmmacrosdir=no \
-Dhomed=false \
-Duserdb=false \
-Dman=false \
-Dmode=release \
+ -Dpamconfdir=no \
-Ddocdir=/usr/share/doc/systemd-&systemd-version; \
..
@@ -173,6 +160,13 @@ meson --prefix=/usr \
+
+ -Dpamconfdir=no
+
+ Prevent the installation of a PAM configuration file not
+ functional on LFS.
+
+
Compile the package:
@@ -185,11 +179,9 @@ meson --prefix=/usr \
Install the man pages:
-tar -xf ../../systemd-man-pages-&systemd-man-version;.tar.xz -C /usr/share/man
-
- Remove a useless directory:
-
-rm -rf /usr/lib/pam.d
+
+tar -xf ../../systemd-man-pages-&systemd-man-version;.tar.xz --strip-components=1 -C /usr/share/man
Create the /etc/machine-id file needed by
systemd-journald:
@@ -200,6 +192,12 @@ meson --prefix=/usr \
systemctl preset-all
+ Disable a service for upgrading binary distros. It's useless for
+ a basic Linux system built from source, and it will report an error if
+ it's enabled but not configured:
+
+systemctl disable systemd-sysupdate
+
-
+
-
+
-
+
-
+
@@ -729,13 +729,13 @@
-
+
-
+
-
+
diff --git a/patches.ent b/patches.ent
index 2bd68296b..6c5acb77c 100644
--- a/patches.ent
+++ b/patches.ent
@@ -85,14 +85,6 @@
-
-
-
-
-
-
-
-