diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml
index 66c6ca6f2..6387743a7 100644
--- a/appendices/dependencies.xml
+++ b/appendices/dependencies.xml
@@ -876,6 +876,48 @@
+
+ Flit-Core
+
+
+ &dependencies;
+
+ Python
+
+
+
+
+ &runtime;
+
+ Python
+
+
+
+
+ &testsuites;
+
+ No test suite available
+
+
+
+
+ &before;
+
+ Wheel
+
+
+
+
+ &external;
+
+
+ pytest
+ and
+ testpath
+
+
+
+
Gawk
@@ -3104,7 +3146,7 @@
&dependencies;
- Python
+ Python and Flit-core
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index aafec2bb0..384b2c59d 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -39,6 +39,55 @@
or as
appropriate for the entry or if needed the entire day's listitem.
-->
+
+ 2023-03-31
+
+
+ [xry111] - Update to linux-6.2.9 (security fix). Fixes
+ #5230.
+
+
+ [xry111] - Update to grep-3.10. Fixes
+ #5234.
+
+
+ [xry111] - Update to wheel-0.40.0. Fixes
+ #5229.
+
+
+ [xry111] - Update to bc-6.5.0. Fixes
+ #5228.
+
+
+ [xry111] - Update to texinfo-7.0.3. Fixes
+ #5235.
+
+
+ [xry111] - Update to coreutils-9.2. Fixes
+ #5232.
+
+
+ [xry111] - Update to libcap-2.68. Fixes
+ #5236.
+
+
+ [xry111] - Update to tzdata-2023c. Fixes
+ #5237.
+
+
+ [xry111] - Update to xz-5.4.2. Fixes
+ #5233.
+
+
+ [xry111] - Update to openssl-3.1.0. Fixes
+ #5227.
+
+
+ [xry111] - Add flit-core-3.8.0.
+
+
+
+
2023-03-15
diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml
index 6153628ac..4f38a75a7 100644
--- a/chapter01/whatsnew.xml
+++ b/chapter01/whatsnew.xml
@@ -292,6 +292,10 @@
Added:
+
+ Flit-core-&flit-core-version;
+
+
diff --git a/chapter03/packages.xml b/chapter03/packages.xml
index 975383fd4..5ce8dc9b0 100644
--- a/chapter03/packages.xml
+++ b/chapter03/packages.xml
@@ -227,6 +227,15 @@
+
+ Flit-core (&flit-core-version;) - &flit-core-size;:
+
+ Home page:
+ Download:
+ MD5 sum: &flit-core-md5;
+
+
+
Gawk (&gawk-version;) - &gawk-size;:
diff --git a/chapter08/chapter08.xml b/chapter08/chapter08.xml
index 437316b5f..c45c6cc4b 100644
--- a/chapter08/chapter08.xml
+++ b/chapter08/chapter08.xml
@@ -64,6 +64,7 @@
+
diff --git a/chapter08/coreutils.xml b/chapter08/coreutils.xml
index 77c6a7a92..7c528d6c4 100644
--- a/chapter08/coreutils.xml
+++ b/chapter08/coreutils.xml
@@ -53,14 +53,12 @@
those bugs are reproducible without this patch.
-
-
+ Fix a bug in checksum utilities causing failed checks not
+ reported correctly:
+
+sed '/if ( ! match/s/ed_checksums//' -i src/digest.c
-patch -Np1 -i ../&coreutils-chmod-patch;
--->
Now prepare Coreutils for compilation:
autoreconf -fiv
diff --git a/chapter08/flit-core.xml b/chapter08/flit-core.xml
new file mode 100644
index 000000000..641ff73b7
--- /dev/null
+++ b/chapter08/flit-core.xml
@@ -0,0 +1,115 @@
+
+
+ %general-entities;
+]>
+
+
+
+
+
+ flit-core
+ &flit-core-version;
+ &flit-core-url;
+
+
+ Flit-Core-&flit-core-version;
+
+
+ Flit-core
+
+
+
+
+
+ Flit-core is the distribution-building parts of Flit (a packaging
+ tool for simple Python modules).
+
+
+ &buildtime;
+ &diskspace;
+
+ &flit-core-fin-sbu;
+ &flit-core-fin-du;
+
+
+
+
+
+
+ Installation of Flit-Core
+
+ Build the package:
+
+pip3 wheel -w dist --no-build-isolation --no-deps $PWD
+
+ Install the package:
+
+pip3 install --no-index --no-user --find-links dist flit_core
+
+
+ The meaning of the pip3 configuration options and commands:
+
+
+ wheel
+
+ This command builds the wheel archive for this package.
+
+
+
+
+ -w dist
+
+ Instructs pip to put the created wheel into the
+ dist directory.
+
+
+
+
+ install
+
+ This command installs the package.
+
+
+
+
+ --no-build-isolation,
+ --no-deps, and
+ --no-index
+
+ These options prevent fetching files from the online package
+ repository (PyPI). If packages are installed in the correct order,
+ pip won't need to fetch any files in the first place; these
+ options add some safety in case of user error.
+
+
+
+
+ --find-links dist
+
+ Instructs pip to search for wheel archives in the
+ dist directory.
+
+
+
+
+
+
+ Contents of Flit-Core
+
+
+ Installed directory
+
+
+
+ /usr/lib/python&python-minor;/site-packages/flit_core and
+ /usr/lib/python&python-minor;/site-packages/flit_core-&flit-core-version;.dist-info
+
+
+
+
+
+
+
+
diff --git a/chapter08/stripping.xml b/chapter08/stripping.xml
index a4a960464..5eb5b728a 100644
--- a/chapter08/stripping.xml
+++ b/chapter08/stripping.xml
@@ -54,10 +54,10 @@
- If any package of which the version is different from the version
+ If there is any package whose version is different from the version
specified by the book (either following a security advisory or
satisfying personal preference), it may be necessary to update the
- the library file name in save_usrlib or
+ library file name in save_usrlib or
online_usrlib.
Failing to do so may render the system
completely unusable.
diff --git a/chapter08/wheel.xml b/chapter08/wheel.xml
index 57457dacc..88e47d556 100644
--- a/chapter08/wheel.xml
+++ b/chapter08/wheel.xml
@@ -42,65 +42,12 @@
Compile Wheel with the following command:
-PYTHONPATH=src pip3 wheel -w dist --no-build-isolation --no-deps $PWD
+pip3 wheel -w dist --no-build-isolation --no-deps $PWD
Install Wheel with the following command:
pip3 install --no-index --find-links=dist wheel
-
- The meaning of the pip3 configuration options and commands:
-
-
- PYTHONPATH=src
-
- Allows this package (not installed yet) to build a
- wheel archive for itself, to avoid a chicken-or-egg problem.
-
-
-
-
- wheel
-
- This command builds the wheel archive for this package.
-
-
-
-
- -w dist
-
- Instructs pip to put the created wheel into the
- dist directory.
-
-
-
-
- install
-
- This command installs the package.
-
-
-
-
- --no-build-isolation,
- --no-deps, and
- --no-index
-
- These options prevent fetching files from the online package
- repository (PyPI). If packages are installed in the correct order,
- pip won't need to fetch any files in the first place; these
- options add some safety in case of user error.
-
-
-
-
- --find-links dist
-
- Instructs pip to search for wheel archives in the
- dist directory.
-
-
-
diff --git a/gen-changelog.py b/gen-changelog.py
new file mode 100755
index 000000000..2932dd9ec
--- /dev/null
+++ b/gen-changelog.py
@@ -0,0 +1,108 @@
+#!/usr/bin/env python3
+
+# LFS ChangeLog generator for trivial package addition, removal, and update
+
+from subprocess import Popen, PIPE
+from urllib.request import urlopen
+from os import getenv
+
+def get_entity(line):
+ line = line[1:]
+ if not line.startswith("= 2:
+ pkg = fields[1].lower()
+ pos = pkg.find(' ')
+ if pos > 0:
+ pkg = pkg[:pos]
+ tic = fields[0]
+ if len(fields) >= 3 and fields[2].startswith("high"):
+ security.add(pkg)
+ ticket[pkg] = tic
+
+print("Plain Text:")
+for (s, act) in [(upd, "Update to "), (add, "Add ")]:
+ for i in s:
+ pkgver = i + "-" + expand_entity(ent, i + "-version")
+ out = act + pkgver
+ if pkgver in ticket:
+ out += ' (#' + ticket[pkgver] + ')'
+ print(out)
+for i in rem:
+ print("Remove", i)
+
+print("---------------------")
+
+print("XML")
+name = getenv("USER")
+for (s, act) in [(upd, "Update to "), (add, "Add ")]:
+ for i in s:
+ print(' ')
+ pkgver = i + "-" + expand_entity(ent, i + "-version")
+ out = ' [' + name + '] - ' + act + pkgver
+ if pkgver in security:
+ out += " (security fix)"
+ out += "."
+ if pkgver in ticket:
+ out += " Fixes\n "
+ out += "#"
+ out += ticket[pkgver] + "."
+ out += ""
+ print(out)
+ print(' ')
diff --git a/packages.ent b/packages.ent
index 2fb7b7cf2..245df3247 100644
--- a/packages.ent
+++ b/packages.ent
@@ -58,10 +58,10 @@
-
-
+
+
-
+
@@ -104,10 +104,10 @@
-
-
+
+
-
+
@@ -207,6 +207,14 @@
+
+
+
+
+
+
+
+
@@ -281,10 +289,10 @@
-
-
+
+
-
+
@@ -399,10 +407,10 @@
-
-
+
+
-
+
@@ -433,12 +441,12 @@
-
+
-
+
-
+