From d0a9bda4e696f4be02499b87c2bd6d8f40a3d4a3 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 9 Mar 2023 01:14:15 +0800 Subject: [PATCH 01/34] kernel: Use for make defconfig and... tell people not to messing the options enabled by defconfig up. Yes, I messed them up and shot my own foot. --- chapter10/kernel.xml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index 4618cc18e..7c64e0983 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -96,12 +96,18 @@ information about configuring and building the kernel can be found at - + A good starting place for setting up the kernel configuration is to run make defconfig. This will set the base configuration to a good state that takes your current system architecture into account. + Do not disable any option enabled by make + defconfig unless the following note explicitly makes it + disabled or you really know what you are doing. + + + Be sure to enable/disable/set the following features or the system might not work correctly or boot at all: From de679165f9a63ce94202d356abbae2b9a3bff5c3 Mon Sep 17 00:00:00 2001 From: Pierre Labastie Date: Wed, 8 Mar 2023 22:27:34 +0100 Subject: [PATCH 02/34] Suggest make localmodconfig for kernel This is less generic than defconfig, and you can then tell not to tweak options... --- chapter10/kernel.xml | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index 7c64e0983..023aa32b9 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -98,15 +98,25 @@ A good starting place for setting up the kernel configuration is to - run make defconfig. This will set the base - configuration to a good state that takes your current system architecture - into account. + run make localmodconfig. If the host kernel version + is not too different from the version of the kernel you are building, + this will set the base configuration to a good state similar to what + the host uses. Another possibility is to use make + localyesconfig, which does the same except everything is built + into the kernel. Do not disable any option enabled by make - defconfig unless the following note explicitly makes it + localmodconfig unless the following notes explicitly make it disabled or you really know what you are doing. + + Another possibility is to run make defconfig, + which creates a more generic configuration for your architecture. You + may then have to disable drivers for hardware you do not have if + you want to reduce the kernel size. + + Be sure to enable/disable/set the following features or the system might not work correctly or boot at all: @@ -312,7 +322,7 @@ Device Drivers ---> Support running the interrupt controller of 64-bit x86 processors in x2APIC mode. x2APIC may be enabled by firmware on 64-bit x86 systems, and a kernel without this option enabled will - panic on boot if x2APIC is enabled by firmware. This option has + panic on boot if x2APIC is enabled by firmware. This option has no effect, but also does no harm if x2APIC is disabled by the firmware. From 6e4dfa7528a5098c09ad5dcfe26ba2b2e504a3b1 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Thu, 9 Mar 2023 19:51:31 -0600 Subject: [PATCH 03/34] Tweak kernel version in host requirements --- chapter02/hostreqs.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter02/hostreqs.xml b/chapter02/hostreqs.xml index e3a06df4e..801a7e992 100644 --- a/chapter02/hostreqs.xml +++ b/chapter02/hostreqs.xml @@ -197,7 +197,7 @@ ver_check() ver_kernel() { - kver=$(uname -r | grep -E -o '[0-9\.]+') + kver=$(uname -r | grep -E -o '^[0-9\.]+') if printf '%s\n' $1 $kver | sort --version-sort --check &>/dev/null then printf "OK: Linux Kernel $kver >= $1\n"; return 0; From 34f1344072936506032e2ef77bf8aac5eef1ec2b Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 9 Mar 2023 13:57:45 +0800 Subject: [PATCH 04/34] Revert "Suggest make localmodconfig for kernel" This reverts commit de679165f9a63ce94202d356abbae2b9a3bff5c3. localmodconfig does not work very well. It can only *un*select things already enabled as modules if the module is not loaded by the host. It won't select anything new, nor unselect unneeded things already set to "y" instead of "m". Maybe you think we can copy .config from a "mainstream" distro (producing a highly modular kernel) and use "make localmodconfig", but when we tested it with a Debian host kernel config, the resulted kernel refuses to boot. "make allmodconfig && make localmodconfig" does not work well either: "allmodconfig" selects many things as y (these thing are not available as a module) but "localmodconfig" fails to unselect them. --- chapter10/kernel.xml | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index 023aa32b9..7c64e0983 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -98,25 +98,15 @@ A good starting place for setting up the kernel configuration is to - run make localmodconfig. If the host kernel version - is not too different from the version of the kernel you are building, - this will set the base configuration to a good state similar to what - the host uses. Another possibility is to use make - localyesconfig, which does the same except everything is built - into the kernel. + run make defconfig. This will set the base + configuration to a good state that takes your current system architecture + into account. Do not disable any option enabled by make - localmodconfig unless the following notes explicitly make it + defconfig unless the following note explicitly makes it disabled or you really know what you are doing. - - Another possibility is to run make defconfig, - which creates a more generic configuration for your architecture. You - may then have to disable drivers for hardware you do not have if - you want to reduce the kernel size. - - Be sure to enable/disable/set the following features or the system might not work correctly or boot at all: @@ -322,7 +312,7 @@ Device Drivers ---> Support running the interrupt controller of 64-bit x86 processors in x2APIC mode. x2APIC may be enabled by firmware on 64-bit x86 systems, and a kernel without this option enabled will - panic on boot if x2APIC is enabled by firmware. This option + panic on boot if x2APIC is enabled by firmware. This option has has no effect, but also does no harm if x2APIC is disabled by the firmware. From 10262709515b6e4f5355441e7e7f3c8853f5b95d Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 10 Mar 2023 18:07:46 +0800 Subject: [PATCH 05/34] Revert "kernel: Use for make defconfig and..." This reverts commit d0a9bda4e696f4be02499b87c2bd6d8f40a3d4a3. "Don't change anything enabled by defconfig" seems too strong. --- chapter10/kernel.xml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index 7c64e0983..4618cc18e 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -96,18 +96,12 @@ information about configuring and building the kernel can be found at - + A good starting place for setting up the kernel configuration is to run make defconfig. This will set the base configuration to a good state that takes your current system architecture into account. - Do not disable any option enabled by make - defconfig unless the following note explicitly makes it - disabled or you really know what you are doing. - - - Be sure to enable/disable/set the following features or the system might not work correctly or boot at all: From 0bf56aadbd89606633c1bf75baef79f27a4efe6e Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 10 Mar 2023 18:47:59 +0800 Subject: [PATCH 06/34] kernel: Some adjustments - Mention NVME. - Mention PAE (CONFIG_HIGHMEM64G) for 32-bit. - Don't repeat the link to BLFS kernel config index twice on SysV. And don't display the long URL for it. - Emphasis that BLFS UEFI kernel config is needed even if you'll use the UEFI bootloader of the host distro. --- chapter10/kernel.xml | 32 +++++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index 4618cc18e..9224cbbf3 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -89,12 +89,9 @@ For general information on kernel configuration see . BLFS has some information - regarding particular kernel configuration requirements of packages outside - of LFS at . Additional + url="&hints-root;kernel-configuration.txt"/>. Additional information about configuring and building the kernel can be found at - + . A good starting place for setting up the kernel configuration is to @@ -179,6 +176,23 @@ Device Drivers ---> [*] Message Signaled Interrupts (MSI and MSI-X) [CONFIG_PCI_MSI] [*] IOMMU Hardware Support ---> [CONFIG_IOMMU_SUPPORT] [*] Support for Interrupt Remapping [CONFIG_IRQ_REMAP] + + If you are building a 32-bit system running on a hardware + with RAM more than 4GB, adjust the configuration so the kernel will + be able to use up to 64GB physical RAM: + + Processor type and features ---> + High Memory Support ---> + (X) 64GB [CONFIG_HIGHMEM64G] + + If the partition for the LFS system is in a NVME SSD (i. e. the + device node for the parition is /dev/nvme* + instead of /dev/sd*), enable NVME support or + the LFS system won't boot: + + Device Drivers ---> + NVME Support ---> + <*> NVM Express block device [CONFIG_BLK_DEV_NVME] @@ -186,18 +200,18 @@ Device Drivers ---> required, it is highly recommended by the systemd developers. - There are several other options that may be desired + There are several other options that may be desired depending on the requirements for the system. For a list of options needed for BLFS packages, see the BLFS - Index of Kernel Settings - (&lfs-root;blfs/view/&short-version;/longindex.html#kernel-config-index). + Index of Kernel Settings. If your host hardware is using UEFI and you wish to boot the LFS system with it, you should adjust some kernel configuration following - the BLFS page. + the BLFS page even if you'll use the + UEFI bootloader from the host distro. From d94339982d3cdbcdd5ba03a7e477b525096d824a Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Fri, 10 Mar 2023 18:46:52 -0600 Subject: [PATCH 07/34] Add kernel configureation introduction. Add an note as an introduction to configuring the kernel. --- chapter10/kernel.xml | 35 +++++++++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index 9224cbbf3..f5b5a4aa4 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -45,6 +45,37 @@ in the kernel source tree for alternative methods to the way this book configures the kernel. + + + Building the linux kernel for the first time is one of the most + challenging tasks in LFS. Getting it right depends on the specific + hardware for the target system and your specific needs. There are + almost 12,000 configuration items that are available for the kernel + although only about a third of them are needed for most computers. The + LFS editors recommend that users not familiar with this process follow + the procedures below fairly closely. The objective is to get an + initial system to a point where you can log in at the command line when + you reboot later in . At his point + optimization and customization is not a goal. + + + + + For general information on kernel configuration see . Additional information + about configuring and building the kernel can be found at . These refereces are a bit + dated, but still give a reasonable overview of the process. + + + + If all else fails, you can ask for help on the lfs-suport + mailing list. Note that suscribing is required in order for the list + to avoid spam. + + + Prepare for compilation by running the following command: make mrproper @@ -88,10 +119,6 @@ - For general information on kernel configuration see . Additional - information about configuring and building the kernel can be found at - . A good starting place for setting up the kernel configuration is to From 57ccb5b97ff22804bba82c3b7c647ead08b2d684 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 11 Mar 2023 22:03:58 +0800 Subject: [PATCH 08/34] kernel: Fix a typo "parition". --- chapter10/kernel.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index f5b5a4aa4..ce7ebd61a 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -213,7 +213,7 @@ Device Drivers ---> (X) 64GB [CONFIG_HIGHMEM64G] If the partition for the LFS system is in a NVME SSD (i. e. the - device node for the parition is /dev/nvme* + device node for the partition is /dev/nvme* instead of /dev/sd*), enable NVME support or the LFS system won't boot: From 681e11a0b669b2a1efa04a71af2211a2d0c73593 Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Sat, 11 Mar 2023 19:04:09 -0600 Subject: [PATCH 09/34] Typos from rhubarbpieguy --- chapter10/kernel.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index ce7ebd61a..f97ba2758 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -64,14 +64,14 @@ For general information on kernel configuration see . Additional information about configuring and building the kernel can be found at . These refereces are a bit + url="http://www.kroah.com/lkn/"/>. These references are a bit dated, but still give a reasonable overview of the process. If all else fails, you can ask for help on the lfs-suport - mailing list. Note that suscribing is required in order for the list + url="https://www.linuxfromscratch.org/mail.html">lfs-support + mailing list. Note that subscribing is required in order for the list to avoid spam. From c6fa6912e155ff5e6d44bd32e9745c5dad146a9d Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sat, 11 Mar 2023 23:11:16 -0600 Subject: [PATCH 10/34] Update a link --- chapter10/kernel.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index f97ba2758..c510323d7 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -64,7 +64,8 @@ For general information on kernel configuration see . Additional information about configuring and building the kernel can be found at . These references are a bit + url="&anduin-sources;/kernel-nutshell/"/>. + These references are a bit dated, but still give a reasonable overview of the process. From 5fa9f630cd36e5add61379c7003d809c4acca75b Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 12 Mar 2023 00:26:41 -0600 Subject: [PATCH 11/34] Add a pointer to troubleshooting boot problems --- chapter11/reboot.xml | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/chapter11/reboot.xml b/chapter11/reboot.xml index 809d9bb70..d1ae5917d 100644 --- a/chapter11/reboot.xml +++ b/chapter11/reboot.xml @@ -75,6 +75,12 @@ + + + Ensure a password is set for the root user. + + + A review of the following configuration files @@ -133,7 +139,21 @@ umount -v $LFS Assuming the GRUB boot loader was set up as outlined earlier, the menu is set to boot LFS &version; automatically. - When the reboot is complete, the LFS system is ready for use and - more software may be added to suit your needs. + When the reboot is complete, the LFS system is ready for use. What you + will see is a simple login: prompt. At this point, you can + proceed to + + + the BLFS Book + + + the BLFS Book + where you can add more software to suit your needs. + + + If your reboot is not successful, it + is time to troubleshoot. For hints on solving inital booting problems, see + . + From b4829e6717d632c2962c2e22bd49e15b3272e0ff Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Mon, 13 Mar 2023 15:43:12 -0500 Subject: [PATCH 12/34] Add a note on host system installation --- chapter01/how.xml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/chapter01/how.xml b/chapter01/how.xml index a8fdddddd..eb6f249d2 100644 --- a/chapter01/how.xml +++ b/chapter01/how.xml @@ -18,8 +18,14 @@ during the distribution installation to include these tools. + There are many ways to install a Linux distribution and + the defaults are usually not optimal for building an LFS system. + For suggestions on setting up a commercial distribution see: + . + As an alternative to installing a separate distribution on your - machine, you may wish to use a LiveCD from a + machine, you may wish to use a LiveCD from a commercial distribution. + a LiveCD from a commercial distribution. + + 2023-03-15 + + + [bdubbs] - Update to bc-6.4.0. Fixes + #5217. + + + [bdubbs] - Update to grep-3.9. Fixes + #5225. + + + [bdubbs] - Update to linux-6.2.6. Fixes + #5226. + + + [bdubbs] - Update to iana-etc-20230306. Addresses + #5006. + + + 2023-03-04 diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml index 21722a863..6153628ac 100644 --- a/chapter01/whatsnew.xml +++ b/chapter01/whatsnew.xml @@ -118,9 +118,9 @@ - + @@ -130,9 +130,9 @@ - + diff --git a/packages.ent b/packages.ent index ce26b0be5..592402c1c 100644 --- a/packages.ent +++ b/packages.ent @@ -58,10 +58,10 @@ - - + + - + @@ -281,10 +281,10 @@ - - + + - + @@ -317,10 +317,10 @@ - - + + - + @@ -424,12 +424,12 @@ - + - + - + a LiveCD from a - commercial distribution. + machine, you may wish to use a LiveCD from a commercial distribution. If OpenSSH is installed, it will be an exception of the general rule above. It contains an over-restrictive OpenSSL version check, so both SSH client and SSH - server will refuse to start if OpenSSH + server will refuse to start if OpenSSL is updated with MAJOR version number unchanged but MINOR version number changed. You need to rebuild OpenSSH after such an upgrade. From d186249a44be5eed7782a3476cb1dcaa47cb96b4 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Tue, 21 Mar 2023 15:38:56 +0800 Subject: [PATCH 18/34] kernel: [revision="systemd"] Disable CONFIG_PSI_DEFAULT_DISABLED systemd-oomd needs PSI so it does not make sense to disable it by default. --- chapter10/kernel.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index c510323d7..52f96d768 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -159,6 +159,7 @@ General setup ---> [ ] Auditing Support [CONFIG_AUDIT] CPU/Task time and stats accounting ---> [*] Pressure stall information tracking [CONFIG_PSI] + [ ] Require boot parameter to enable pressure stall information tracking [CONFIG_PSI_DEFAULT_DISABLED] < > Enable kernel headers through /sys/kernel/kheaders.tar.xz [CONFIG_IKHEADERS] [*] Control Group support [CONFIG_CGROUPS] ---> [*] Memory controller [CONFIG_MEMCG] From 12a86f36b1791469aa3654de1dac267f3f0dfbd0 Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Tue, 21 Mar 2023 14:20:13 -0500 Subject: [PATCH 19/34] Typo fix for convenience partitions Thanks goes to Rainer Fiebig on lfs-dev. --- chapter02/creatingpartition.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter02/creatingpartition.xml b/chapter02/creatingpartition.xml index d5429ad7c..35279cb75 100644 --- a/chapter02/creatingpartition.xml +++ b/chapter02/creatingpartition.xml @@ -169,7 +169,7 @@ used, 5 to 10 gigabytes is generally adequate. - /tmp – A separate /tmp directory + /tmp – A separate /tmp partition is rare, but useful if configuring a thin client. This partition, if used, will usually not need to exceed a couple of gigabytes. If you have enough RAM, you can mount a From e2df6431e9d5187acc5629a55a0d62c330816dd8 Mon Sep 17 00:00:00 2001 From: "Douglas R. Reno" Date: Thu, 23 Mar 2023 15:02:26 -0500 Subject: [PATCH 20/34] reboot.xml: Minor typo fix Thanks goes to rhubabpieguy on lfs-dev --- chapter11/reboot.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter11/reboot.xml b/chapter11/reboot.xml index a277ed5d6..6b2680ad0 100644 --- a/chapter11/reboot.xml +++ b/chapter11/reboot.xml @@ -146,7 +146,7 @@ umount -v $LFS If your reboot is not successful, it - is time to troubleshoot. For hints on solving inital booting problems, see + is time to troubleshoot. For hints on solving initial booting problems, see . From 2bd704b5202606d14468120cfb8304c5b396f008 Mon Sep 17 00:00:00 2001 From: Pierre Labastie Date: Wed, 29 Mar 2023 17:59:49 +0200 Subject: [PATCH 21/34] zstd depends on zlib --- appendices/dependencies.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml index a1efa3d01..66c6ca6f2 100644 --- a/appendices/dependencies.xml +++ b/appendices/dependencies.xml @@ -3262,7 +3262,7 @@ &dependencies; - Binutils, Coreutils, GCC, Glibc, Gzip, Make, and Xz + Binutils, Coreutils, GCC, Glibc, Gzip, Make, Xz, and Zlib From d765208190bef0e078467fcd4c3f094a7744fa93 Mon Sep 17 00:00:00 2001 From: Thomas Trepl Date: Thu, 30 Mar 2023 22:52:50 +0200 Subject: [PATCH 22/34] Fix typo and copy&paste error --- chapter08/util-linux.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/chapter08/util-linux.xml b/chapter08/util-linux.xml index 8290f87c2..ccf8b3cd0 100644 --- a/chapter08/util-linux.xml +++ b/chapter08/util-linux.xml @@ -985,12 +985,12 @@ su tester -c "make -k check" - - rkfill + + rfkill Tool for enabling and disabling wireless devices - - rkfill + + rfkill From 04038ad828fc6299e9392d22c62d535a1940daaa Mon Sep 17 00:00:00 2001 From: Pierre Labastie Date: Fri, 31 Mar 2023 11:01:58 +0200 Subject: [PATCH 23/34] Clarify a sentence in "stripping" Also fix a typo Report by Rainer Fiebig --- chapter08/stripping.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chapter08/stripping.xml b/chapter08/stripping.xml index bbd1ed94d..70e0d6ebb 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. From 92dbe964f1e726ddf6589d5083819780f49fdf23 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 31 Mar 2023 22:05:15 +0800 Subject: [PATCH 24/34] Add a script to generate ChangeLog from "git diff" --- gen-changelog.py | 105 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100755 gen-changelog.py diff --git a/gen-changelog.py b/gen-changelog.py new file mode 100755 index 000000000..91909b254 --- /dev/null +++ b/gen-changelog.py @@ -0,0 +1,105 @@ +#!/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] + sec = len(fields) >= 3 and fields[2].startswith("high") + ticket[pkg] = tic + security.add(pkg) + +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 ticket: + out += " Fixes\n " + out += "#" + out += ticket[pkgver] + "." + out += "" + print(out) + print(' ') From af612e9a199b621382a46377104a538e8c89b210 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Fri, 31 Mar 2023 22:22:38 +0800 Subject: [PATCH 25/34] Package updates Update to linux-6.2.8 (#5230) Update to xz-5.4.2 (#5233) Update to coreutils-9.2 (#5232) Update to libcap-2.68 (#5236) Update to bc-6.5.0 (#5228) Update to openssl-3.1.0 (#5227) Update to texinfo-7.0.3 (#5235) Update to grep-3.10 (#5234) Update to tzdata-2023c (#5237) Update to wheel-0.40.0 (#5229) Add flit-core-3.8.0 --- chapter01/changelog.xml | 49 +++++++++++++++++ chapter08/chapter08.xml | 1 + chapter08/flit-core.xml | 115 ++++++++++++++++++++++++++++++++++++++++ packages.ent | 67 ++++++++++++----------- 4 files changed, 202 insertions(+), 30 deletions(-) create mode 100644 chapter08/flit-core.xml diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 24634ea69..8c24e1607 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 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 linux-6.2.8. Fixes + #5230. + + + [xry111] - Update to openssl-3.1.0. Fixes + #5227. + + + [xry111] - Add flit-core-3.8.0. + + + + 2023-03-15 diff --git a/chapter08/chapter08.xml b/chapter08/chapter08.xml index 902d1bf48..91827b88e 100644 --- a/chapter08/chapter08.xml +++ b/chapter08/chapter08.xml @@ -63,6 +63,7 @@ + diff --git a/chapter08/flit-core.xml b/chapter08/flit-core.xml new file mode 100644 index 000000000..ef62034ab --- /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 + + + + + + <para>Flit-core is the distribution-building parts of Flit (a packaging + tool for simple Python modules).</para> + + <segmentedlist> + <segtitle>&buildtime;</segtitle> + <segtitle>&diskspace;</segtitle> + <seglistitem> + <seg>&flit-core-fin-sbu;</seg> + <seg>&flit-core-fin-du;</seg> + </seglistitem> + </segmentedlist> + + </sect2> + + <sect2 role="installation"> + <title>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/packages.ent b/packages.ent index 592402c1c..884a9aa68 100644 --- a/packages.ent +++ b/packages.ent @@ -58,10 +58,10 @@ - - + + - + @@ -104,10 +104,10 @@ - - + + - + @@ -207,6 +207,13 @@ + + + + + + + @@ -281,10 +288,10 @@ - - + + - + @@ -390,10 +397,10 @@ - - + + - + @@ -424,12 +431,12 @@ - + - + - + - + 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 From 13eb8a3ce139293722c2b6408a079a7e03b5df71 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 1 Apr 2023 00:55:06 +0800 Subject: [PATCH 29/34] packages: Add flit-core into download page --- chapter03/packages.xml | 9 +++++++++ packages.ent | 1 + 2 files changed, 10 insertions(+) diff --git a/chapter03/packages.xml b/chapter03/packages.xml index 92d44afaf..87238724d 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/packages.ent b/packages.ent index 884a9aa68..dddcaf5fc 100644 --- a/packages.ent +++ b/packages.ent @@ -211,6 +211,7 @@ + From 38eab97b1e599a87ac362a386cdf6944b12cf5b4 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 1 Apr 2023 01:22:40 +0800 Subject: [PATCH 30/34] dependencies: Add flit-core --- appendices/dependencies.xml | 44 ++++++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) 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 From d98496d20c2e1b933cd8b01fdc53996013b204cb Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 1 Apr 2023 01:45:36 +0800 Subject: [PATCH 31/34] gen-changelog: Mark security fix correctly --- gen-changelog.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gen-changelog.py b/gen-changelog.py index 91909b254..2932dd9ec 100755 --- a/gen-changelog.py +++ b/gen-changelog.py @@ -72,9 +72,9 @@ for i in tsv: if pos > 0: pkg = pkg[:pos] tic = fields[0] - sec = len(fields) >= 3 and fields[2].startswith("high") + if len(fields) >= 3 and fields[2].startswith("high"): + security.add(pkg) ticket[pkg] = tic - security.add(pkg) print("Plain Text:") for (s, act) in [(upd, "Update to "), (add, "Add ")]: @@ -95,7 +95,10 @@ 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 + "." + out = ' [' + name + '] - ' + act + pkgver + if pkgver in security: + out += " (security fix)" + out += "." if pkgver in ticket: out += " Fixes\n " out += "#" From b57a3babaa2d3c8a4847881910ebafecca39414a Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 1 Apr 2023 01:51:19 +0800 Subject: [PATCH 32/34] Update to linux-6.2.9 (#5230) --- chapter01/changelog.xml | 8 ++++---- packages.ent | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 8c24e1607..3f8583217 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -42,6 +42,10 @@ 2023-03-31 + + [xry111] - Update to linux-6.2.9 (security fix). Fixes + #5230. + [xry111] - Update to grep-3.10. Fixes #5234. @@ -74,10 +78,6 @@ [xry111] - Update to xz-5.4.2. Fixes #5233. - - [xry111] - Update to linux-6.2.8. Fixes - #5230. - [xry111] - Update to openssl-3.1.0. Fixes #5227. diff --git a/packages.ent b/packages.ent index dddcaf5fc..88ddfe414 100644 --- a/packages.ent +++ b/packages.ent @@ -432,12 +432,12 @@ - + - + - + + + Flit-core-&flit-core-version; + + diff --git a/chapter08/flit-core.xml b/chapter08/flit-core.xml index ef62034ab..229a369ed 100644 --- a/chapter08/flit-core.xml +++ b/chapter08/flit-core.xml @@ -38,7 +38,7 @@ - Installation of Flit-core + Installation of Flit-Core Build the package: From fd531b84c94f504f604c37f397f46c381e88841a Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Sat, 1 Apr 2023 05:47:17 +0800 Subject: [PATCH 34/34] flit-core: Kill revision='systemd' I copied from jinja2 and edited the file, but forgot to remove this. --- chapter08/flit-core.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter08/flit-core.xml b/chapter08/flit-core.xml index 229a369ed..641ff73b7 100644 --- a/chapter08/flit-core.xml +++ b/chapter08/flit-core.xml @@ -5,7 +5,7 @@ %general-entities; ]> - +