From 96dcc2c9ca662b607b329fb07afc93bb54596c10 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Mar 04 2020 11:51:08 +0000 Subject: dracut-050 --- diff --git a/.gitignore b/.gitignore index 44cc998..0eb275c 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,4 @@ /dracut-047.tar.xz /dracut-048.tar.xz /dracut-049.tar.xz +/dracut-050.tar.xz diff --git a/0001.patch b/0001.patch deleted file mode 100644 index e7b9b16..0000000 --- a/0001.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 6d886bb74d1608e4565d926aa259ea5afc9df7b9 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert -Date: Thu, 4 Oct 2018 16:45:47 -0400 -Subject: [PATCH] dracut-install: simplify ldd parsing logic - -The previous logic would not handle absolute paths on the left side of -the "=>" properly. For example, on Gentoo ARM64, ldd outputs this: - - /lib/ld-linux-aarch64.so.1 => /lib64/ld-linux-aarch64.so.1 - -At runtime, the kernel tries to load the file from /lib, and fails if we -only provide it in /lib64. - -Instead of looking for the first slash after the "=>", just look for the -first slash, period. This would fail if we somehow had a relative path -on the left side (foo/libbar.so), but I'm not aware of any binaries that -would contain such an entry in DT_NEEDED. - -Bug: https://bugs.gentoo.org/667752 -Signed-off-by: Mike Gilbert ---- - install/dracut-install.c | 6 +----- - 1 file changed, 1 insertion(+), 5 deletions(-) - -diff --git a/install/dracut-install.c b/install/dracut-install.c -index 88bca1d4..5f352b36 100644 ---- a/install/dracut-install.c -+++ b/install/dracut-install.c -@@ -479,11 +479,7 @@ static int resolve_deps(const char *src) - if (strstr(buf, destrootdir)) - break; - -- p = strstr(buf, "=>"); -- if (!p) -- p = buf; -- -- p = strchr(p, '/'); -+ p = strchr(buf, '/'); - if (p) { - char *q; - - diff --git a/0002.patch b/0002.patch deleted file mode 100644 index bed89a4..0000000 --- a/0002.patch +++ /dev/null @@ -1,44 +0,0 @@ -From f51ab4a81f1fedb9eac31ecd22a3f87db3951650 Mon Sep 17 00:00:00 2001 -From: Kairui Song -Date: Sat, 29 Sep 2018 17:14:31 +0800 -Subject: [PATCH] dracut.spec: Fix error introduced by 70291ed - -70291e0 ('dracut.spec: Add dracut-squash package') introduced a new -dracut-squash package, but by accident it overrided some other package -spec and the dependency name is wrong. This patch will fix it. ---- - dracut.spec | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/dracut.spec b/dracut.spec -index 155868ce..0c266192 100644 ---- a/dracut.spec -+++ b/dracut.spec -@@ -181,7 +181,7 @@ This package contains tools to assemble the local initrd and host configuration. - %package squash - Summary: dracut module to build an initramfs with most files in a squashfs image - Requires: %{name} = %{version}-%{release} --Requires: squash-tools -+Requires: squashfs-tools - - %description squash - This package provides a dracut module to build an initramfs, but store most files -@@ -452,14 +452,14 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne - %doc %{_mandir}/man8/dracut-catimages.8* - %endif - --%files squash --%{dracutlibdir}/modules.d/99squash -- - %{_bindir}/dracut-catimages - %dir /boot/dracut - %dir /var/lib/dracut - %dir /var/lib/dracut/overlay - -+%files squash -+%{dracutlibdir}/modules.d/99squash -+ - %files config-generic - %{dracutlibdir}/dracut.conf.d/02-generic-image.conf - - diff --git a/0003.patch b/0003.patch deleted file mode 100644 index c5cad1c..0000000 --- a/0003.patch +++ /dev/null @@ -1,24 +0,0 @@ -From db4d6bb42c3e9a2bf7a62d8327cc3c13e5594935 Mon Sep 17 00:00:00 2001 -From: Pedro Monreal -Date: Mon, 8 Oct 2018 11:09:11 +0200 -Subject: [PATCH] Added space in Resolving executable dependencies done as in - the rest of the messages - ---- - dracut.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/dracut.sh b/dracut.sh -index e683a9bc..fb50cfda 100755 ---- a/dracut.sh -+++ b/dracut.sh -@@ -1572,7 +1572,7 @@ if [[ $kernel_only != yes ]]; then - dinfo "*** Resolving executable dependencies ***" - find "$initdir" -type f -perm /0111 -not -path '*.ko' -print0 \ - | xargs -r -0 $DRACUT_INSTALL ${initdir:+-D "$initdir"} -R ${DRACUT_FIPS_MODE:+-f} -- -- dinfo "*** Resolving executable dependencies done***" -+ dinfo "*** Resolving executable dependencies done ***" - fi - - # Now we are done with lazy resolving, always install dependencies - diff --git a/0004.patch b/0004.patch deleted file mode 100644 index f9ebdd5..0000000 --- a/0004.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 83cbc06ab91288e2d931b4f36935bfdb79a99b0e Mon Sep 17 00:00:00 2001 -From: Kairui Song -Date: Fri, 12 Oct 2018 13:07:13 +0800 -Subject: [PATCH] 40network: Don't include 40network by default - -commit 7347391 ('network-legacy: split off from network module') -splitted network function to network-legacy and removed check() function -of 40network. This caused 40network to be included even if network is -not needed. - -Signed-off-by: Kairui Song ---- - modules.d/40network/module-setup.sh | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh -index 57c0a45e..e8541636 100755 ---- a/modules.d/40network/module-setup.sh -+++ b/modules.d/40network/module-setup.sh -@@ -1,5 +1,10 @@ - #!/bin/bash - -+# called by dracut -+check() { -+ return 255 -+} -+ - # called by dracut - depends() { - echo -n "kernel-network-modules " - diff --git a/0005.patch b/0005.patch deleted file mode 100644 index c694a3e..0000000 --- a/0005.patch +++ /dev/null @@ -1,31 +0,0 @@ -From b9af0fcdfb2364245b333a123cdb07523855079f Mon Sep 17 00:00:00 2001 -From: Kairui Song -Date: Thu, 18 Oct 2018 17:05:22 +0800 -Subject: [PATCH] 99squash: Don't clean up squahfs on isolate - -The only time we need to cleanup squahfs manually is on switch root, to -release resource and memory. We've covered that by setting -"Conflicts=initrd-switch-root.target" for squash cleanup service. -On shutdown systemd will take care of squahfs mounts. But for other -isolate, files in initramfs are most likely still required, so don't -clean up squahfs. For example, kdump's emergency handler will isolate -into its own target, if squahfs is cleaned up it will fail. - -Signed-off-by: Kairui Song ---- - modules.d/99squash/squash-mnt-clear.service | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/modules.d/99squash/squash-mnt-clear.service b/modules.d/99squash/squash-mnt-clear.service -index 8dd17812..f8d5db46 100644 ---- a/modules.d/99squash/squash-mnt-clear.service -+++ b/modules.d/99squash/squash-mnt-clear.service -@@ -9,6 +9,7 @@ After=dracut-initqueue.service dracut-pre-pivot.service - Before=initrd-cleanup.service - ConditionPathExists=/squash/root - Conflicts=initrd-switch-root.target -+IgnoreOnIsolate=true - - [Service] - Type=oneshot - diff --git a/0006.patch b/0006.patch deleted file mode 100644 index 2466495..0000000 --- a/0006.patch +++ /dev/null @@ -1,28 +0,0 @@ -From e54ab383f7529f340d69536709624dffb30046a1 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Renaud=20M=C3=A9trich?= -Date: Fri, 19 Oct 2018 13:21:37 +0200 -Subject: [PATCH] fips: check fips integrity just before mounting local - filesystems in /sysroot -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Renaud Métrich ---- - modules.d/01fips/module-setup.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/modules.d/01fips/module-setup.sh b/modules.d/01fips/module-setup.sh -index f3af4d90..808292af 100755 ---- a/modules.d/01fips/module-setup.sh -+++ b/modules.d/01fips/module-setup.sh -@@ -52,7 +52,7 @@ installkernel() { - # called by dracut - install() { - local _dir -- inst_hook pre-trigger 01 "$moddir/fips-boot.sh" -+ inst_hook pre-mount 01 "$moddir/fips-boot.sh" - inst_hook pre-pivot 01 "$moddir/fips-noboot.sh" - inst_script "$moddir/fips.sh" /sbin/fips.sh - - diff --git a/0007.patch b/0007.patch deleted file mode 100644 index 3cec53c..0000000 --- a/0007.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 7117bf627028298970d8a6a5e153e1942f3430f3 Mon Sep 17 00:00:00 2001 -From: Daniel Molkentin -Date: Fri, 19 Oct 2018 14:30:36 +0200 -Subject: [PATCH] 99base: Allow files with backslashes in hostonly files - -Files with blackslashes are routinely by systemd. - -Reference: bsc#1090884 ---- - modules.d/99base/dracut-lib.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh -index f71e757c..ab348855 100755 ---- a/modules.d/99base/dracut-lib.sh -+++ b/modules.d/99base/dracut-lib.sh -@@ -1327,7 +1327,7 @@ show_memstats() - remove_hostonly_files() { - rm -fr /etc/cmdline /etc/cmdline.d/*.conf "$hookdir/initqueue/finished" - if [ -f /lib/dracut/hostonly-files ]; then -- while read line || [ -n "$line" ]; do -+ while read -r line || [ -n "$line" ]; do - [ -e "$line" ] || [ -h "$line" ] || continue - rm -f "$line" - done < /lib/dracut/hostonly-files - diff --git a/0008.patch b/0008.patch deleted file mode 100644 index 32f57a8..0000000 --- a/0008.patch +++ /dev/null @@ -1,24 +0,0 @@ -From b38b7fef36333a59890233dccfbbb6d2c40ebe83 Mon Sep 17 00:00:00 2001 -From: Daniel Molkentin -Date: Fri, 19 Oct 2018 14:39:30 +0200 -Subject: [PATCH] 95dasd_rules: mark dasd rules host_only - -Reference: bsc#1090884 ---- - modules.d/95dasd_rules/module-setup.sh | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/modules.d/95dasd_rules/module-setup.sh b/modules.d/95dasd_rules/module-setup.sh -index 488400c3..124dbad9 100755 ---- a/modules.d/95dasd_rules/module-setup.sh -+++ b/modules.d/95dasd_rules/module-setup.sh -@@ -54,6 +54,8 @@ install() { - if [[ $hostonly ]] ; then - inst_rules_wildcard 51-dasd-*.rules - inst_rules_wildcard 41-s390x-dasd-*.rules -+ mark_hostonly /etc/udev/rules.d/51-dasd-*.rules -+ mark_hostonly /etc/udev/rules.d/41-s390x-dasd-*.rules - fi - inst_rules 59-dasd.rules - } - diff --git a/0009.patch b/0009.patch deleted file mode 100644 index 138face..0000000 --- a/0009.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 765b20333d9589e09b29dbe0d8304a56745623c6 Mon Sep 17 00:00:00 2001 -From: Dusty Mabe -Date: Mon, 22 Oct 2018 13:25:29 -0400 -Subject: [PATCH] 95iscsi: drop systemd dracut service dependencies for iscsid - -These dependencies cause an odd issue where swap devices specified -by resume= on the kernel command line will cause systemd device -timeouts to occur on boot. According to @haraldh these lines aren't -needed because the socket activiation will take care of it for us. -Removing these lines now as it fixes the resume= device timeout issue. - -Fixes #480 -Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1641268 ---- - modules.d/95iscsi/module-setup.sh | 8 -------- - 1 file changed, 8 deletions(-) - -diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh -index 5c2073bb..3c791001 100755 ---- a/modules.d/95iscsi/module-setup.sh -+++ b/modules.d/95iscsi/module-setup.sh -@@ -257,14 +257,6 @@ install() { - ; do - ln_r "$systemdsystemunitdir/${i}" "$systemdsystemunitdir/basic.target.wants/${i}" - done -- -- # Make sure iscsid is started after dracut-cmdline and ready for the initqueue -- mkdir -p "${initdir}/$systemdsystemunitdir/iscsid.service.d" -- ( -- echo "[Unit]" -- echo "After=dracut-cmdline.service" -- echo "Before=dracut-initqueue.service" -- ) > "${initdir}/$systemdsystemunitdir/iscsid.service.d/dracut.conf" - fi - inst_dir /var/lib/iscsi - dracut_need_initqueue - diff --git a/0010.patch b/0010.patch deleted file mode 100644 index 75fd1f7..0000000 --- a/0010.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 0eef73ea43427cdb82fa031e09978d3cea6e188a Mon Sep 17 00:00:00 2001 -From: Harald Hoyer -Date: Wed, 24 Oct 2018 15:14:03 +0200 -Subject: [PATCH] Makefile: add srpm target - ---- - Makefile | 13 ++++++++++++- - 1 file changed, 12 insertions(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index 80623437..503d069f 100644 ---- a/Makefile -+++ b/Makefile -@@ -40,7 +40,7 @@ man8pages = dracut.8 \ - - manpages = $(man1pages) $(man5pages) $(man7pages) $(man8pages) - --.PHONY: install clean archive rpm testimage test all check AUTHORS doc dracut-version.sh -+.PHONY: install clean archive rpm srpm testimage test all check AUTHORS doc dracut-version.sh - - all: dracut-version.sh dracut.pc dracut-install skipcpio/skipcpio - -@@ -216,6 +216,17 @@ rpm: dracut-$(VERSION).tar.xz syncheck - --define "_rpmdir $$PWD" -ba dracut.spec; ) && \ - ( mv "$$rpmbuild"/{,$$(arch)/}*.rpm $(DESTDIR).; rm -fr -- "$$rpmbuild"; ls $(DESTDIR)*.rpm ) - -+srpm: dracut-$(VERSION).tar.xz syncheck -+ rpmbuild=$$(mktemp -d -t rpmbuild-dracut.XXXXXX); src=$$(pwd); \ -+ cp dracut-$(VERSION).tar.xz "$$rpmbuild"; \ -+ LC_MESSAGES=C $$src/git2spec.pl $(VERSION) "$$rpmbuild" < dracut.spec > $$rpmbuild/dracut.spec; \ -+ (cd "$$rpmbuild"; \ -+ [ -f $$src/lgpl-2.1.txt ] && cp $$src/lgpl-2.1.txt . || wget https://www.gnu.org/licenses/lgpl-2.1.txt; \ -+ rpmbuild --define "_topdir $$PWD" --define "_sourcedir $$PWD" \ -+ --define "_specdir $$PWD" --define "_srcrpmdir $$PWD" \ -+ --define "_rpmdir $$PWD" -bs dracut.spec; ) && \ -+ ( mv "$$rpmbuild"/*.src.rpm $(DESTDIR).; rm -fr -- "$$rpmbuild"; ls $(DESTDIR)*.rpm ) -+ - syncheck: - @ret=0;for i in dracut-initramfs-restore.sh modules.d/*/*.sh; do \ - [ "$${i##*/}" = "module-setup.sh" ] && continue; \ - diff --git a/0011.patch b/0011.patch deleted file mode 100644 index e39d8f4..0000000 --- a/0011.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 48c283a29638e2c1e24cf282e673ddf8525b4199 Mon Sep 17 00:00:00 2001 -From: Lukas Nykryn -Date: Thu, 25 Oct 2018 15:30:36 +0200 -Subject: [PATCH] dracut.install: call dracut with --force - -The kernel-install is called even if you run make install. -Since we don't call dracut with -f a second make install will fail -because initrd with same version is already there. -This makes kernel developers feel miserable. - -https://bugzilla.redhat.com/show_bug.cgi?id=1642402 ---- - 50-dracut.install | 2 +- - 51-dracut-rescue.install | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/50-dracut.install b/50-dracut.install -index 64e3549f..bbb73442 100755 ---- a/50-dracut.install -+++ b/50-dracut.install -@@ -49,7 +49,7 @@ case "$COMMAND" in - break - fi - done -- dracut ${noimageifnotneeded:+--noimageifnotneeded} "$BOOT_DIR_ABS/$INITRD" "$KERNEL_VERSION" -+ dracut -f ${noimageifnotneeded:+--noimageifnotneeded} "$BOOT_DIR_ABS/$INITRD" "$KERNEL_VERSION" - ret=$? - ;; - remove) -diff --git a/51-dracut-rescue.install b/51-dracut-rescue.install -index 6ddafdb6..ef8afac1 100755 ---- a/51-dracut-rescue.install -+++ b/51-dracut-rescue.install -@@ -98,7 +98,7 @@ case "$COMMAND" in - fi - - if [[ ! -f "$BOOT_DIR_ABS/$INITRD" ]]; then -- dracut --no-hostonly -a "rescue" "$BOOT_DIR_ABS/$INITRD" "$KERNEL_VERSION" -+ dracut -f --no-hostonly -a "rescue" "$BOOT_DIR_ABS/$INITRD" "$KERNEL_VERSION" - ((ret+=$?)) - fi - - diff --git a/0012.patch b/0012.patch deleted file mode 100644 index 9e6a091..0000000 --- a/0012.patch +++ /dev/null @@ -1,156 +0,0 @@ -From f18d069d4664c148df8563139b358806ecfe6799 Mon Sep 17 00:00:00 2001 -From: Pedro Monreal -Date: Thu, 8 Nov 2018 14:15:38 +0100 -Subject: [PATCH] Fixed some SUSE specific typos and outputs - ---- - dracut.conf.5.asc | 2 +- - dracut.conf.d/suse.conf.example | 4 ++-- - dracut.sh | 4 ++-- - dracut.usage.asc | 6 +++--- - mkinitrd-suse.sh | 4 ++-- - modules.d/98dracut-systemd/dracut-shutdown.service.8.asc | 2 +- - modules.d/98syslog/README | 2 +- - modules.d/99base/dracut-lib.sh | 2 +- - 8 files changed, 13 insertions(+), 13 deletions(-) - -diff --git a/dracut.conf.5.asc b/dracut.conf.5.asc -index 1dfa28f6..081ed70c 100644 ---- a/dracut.conf.5.asc -+++ b/dracut.conf.5.asc -@@ -157,7 +157,7 @@ provide a valid _/etc/fstab_. - archive. This cpio archive gets glued (concatenated, uncompressed one - must be the first one) to the compressed cpio archive. The first, - uncompressed cpio archive is for data which the kernel must be able -- to access very early (and cannot make use of uncompress alogrithms yet) -+ to access very early (and cannot make use of uncompress algorithms yet) - like microcode or ACPI tables (default=no). - - *acpi_table_dir=*"____":: -diff --git a/dracut.conf.d/suse.conf.example b/dracut.conf.d/suse.conf.example -index 37ffd72b..b5d962db 100644 ---- a/dracut.conf.d/suse.conf.example -+++ b/dracut.conf.d/suse.conf.example -@@ -1,6 +1,6 @@ --# SUSE specifc dracut settings -+# SUSE specific dracut settings - # --# SUSE by default always builds a as small as possible initrd for performance -+# SUSE by default always builds as small as possible initrd for performance - # and resource reasons. - # If you like to build a generic initrd which works on other platforms than - # on the one dracut/mkinitrd got called comment out below setting(s). -diff --git a/dracut.sh b/dracut.sh -index fb50cfda..e706714e 100755 ---- a/dracut.sh -+++ b/dracut.sh -@@ -1690,7 +1690,7 @@ if [[ $early_microcode = yes ]]; then - for _fwdir in $fw_dir; do - if [[ -d $_fwdir && -d $_fwdir/$_fw ]]; then - _src="*" -- dinfo "*** Constructing ${ucode_dest[$idx]} ****" -+ dinfo "*** Constructing ${ucode_dest[$idx]} ***" - if [[ $hostonly ]]; then - _src=$(get_ucode_file) - [[ $_src ]] || break -@@ -1790,7 +1790,7 @@ if dracut_module_included "squash"; then - - # Move some files out side of the squash image, including: - # - Files required to boot and mount the squashfs image -- # - Files need to be accessable without mounting the squash image -+ # - Files need to be accessible without mounting the squash image - required_in_root() { - local file=$1 - local _sqsh_file=$squash_dir/$file -diff --git a/dracut.usage.asc b/dracut.usage.asc -index 2b598ee6..0f219fc9 100644 ---- a/dracut.usage.asc -+++ b/dracut.usage.asc -@@ -83,7 +83,7 @@ on the command line: - === Adding Kernel Modules - If you need a special kernel module in the initramfs, which is not - automatically picked up by dracut, you have the use the --add-drivers option --on the command line or the drivers vaiable in the _/etc/dracut.conf_ -+on the command line or the drivers variable in the _/etc/dracut.conf_ - or _/etc/dracut.conf.d/myconf.conf_ configuration file (see *dracut.conf*(5)): - ---- - # dracut --add-drivers mymod initramfs-with-mymod.img -@@ -94,7 +94,7 @@ An initramfs generated without the "hostonly" mode, does not contain any system - configuration files (except for some special exceptions), so the configuration - has to be done on the kernel command line. With this flexibility, you can easily - boot from a changed root partition, without the need to recompile the initramfs --image. So, you could completly change your root partition (move it inside a md -+image. So, you could completely change your root partition (move it inside a md - raid with encryption and LVM on top), as long as you specify the correct - filesystem LABEL or UUID on the kernel command line for your root device, dracut - will find it and boot from it. -@@ -185,7 +185,7 @@ This turns off every automatic assembly of LVM, MD raids, DM raids and - crypto LUKS. - - Of course, you could also omit the dracut modules in the initramfs creation --process, but then you would lose the posibility to turn it on on demand. -+process, but then you would lose the possibility to turn it on on demand. - - - [[Injecting]] -diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh -index 20d85da1..b6af2b19 100755 ---- a/mkinitrd-suse.sh -+++ b/mkinitrd-suse.sh -@@ -1,6 +1,6 @@ - #!/bin/bash --norc - # --# mkinitrd compability wrapper for SUSE. -+# mkinitrd compatibility wrapper for SUSE. - # - # Copyright (c) 2013 SUSE Linux Products GmbH. All rights reserved. - # -@@ -62,7 +62,7 @@ usage () { - $cmd " /etc/sysconfig/kernel." - $cmd " -d root_device Root device. Defaults to the device from" - $cmd " which / is mounted. Overrides the rootdev" -- $cmd " enviroment variable if set." -+ $cmd " environment variable if set." - $cmd " -j device Journal device" - $cmd " -D interface Run dhcp on the specified interface." - $cmd " -I interface Configure the specified interface statically." -diff --git a/modules.d/98dracut-systemd/dracut-shutdown.service.8.asc b/modules.d/98dracut-systemd/dracut-shutdown.service.8.asc -index f4fbb618..ba80b187 100644 ---- a/modules.d/98dracut-systemd/dracut-shutdown.service.8.asc -+++ b/modules.d/98dracut-systemd/dracut-shutdown.service.8.asc -@@ -15,7 +15,7 @@ dracut-shutdown.service - DESCRIPTION - ----------- - This service unpacks the initramfs image to /run/initramfs. --systemd pivots into /run/initramfs at shutdown, so the root filesytem -+systemd pivots into /run/initramfs at shutdown, so the root filesystem - can be safely unmounted. - - The following steps are executed during a shutdown: -diff --git a/modules.d/98syslog/README b/modules.d/98syslog/README -index 30a819c0..9eb5adee 100644 ---- a/modules.d/98syslog/README -+++ b/modules.d/98syslog/README -@@ -11,7 +11,7 @@ Then if syslog is configured it is started and will forward all - kernel messages to the given syslog server. - - The syslog implementation is detected automatically by finding the --apropriate binary with the following order: -+appropriate binary with the following order: - rsyslogd - syslogd - syslog-ng -diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh -index ab348855..3eb255e6 100755 ---- a/modules.d/99base/dracut-lib.sh -+++ b/modules.d/99base/dracut-lib.sh -@@ -620,7 +620,7 @@ nfsroot_to_var() { - # prints: - # ENV{ID_FS_LABEL}="boot" - # --# TOOD: symlinks -+# TODO: symlinks - udevmatch() { - case "$1" in - UUID=????????-????-????-????-????????????|LABEL=*|PARTLABEL=*|PARTUUID=????????-????-????-????-????????????) - diff --git a/0013.patch b/0013.patch deleted file mode 100644 index 2351c78..0000000 --- a/0013.patch +++ /dev/null @@ -1,72 +0,0 @@ -From a60af534132828fd46fa017291f7ed7cfeab1dc3 Mon Sep 17 00:00:00 2001 -From: Kairui Song -Date: Fri, 9 Nov 2018 10:48:28 +0800 -Subject: [PATCH] squash: unsquash the root image instead of mounting it on - shutdown - -When building squash image, squash module forgot to install the new -shutdown.sh, and the shutdown hooks are always skipped on ordinary -shutdown if squash module is enabled. - -The new shutdown.sh will remount the squash image and then everything -will just work, but currently re-mounting the squash image on shutdown -may have selinux problem and make the system hang, and there is no -easy way to fix it. - -So skip fixing the shutdown.sh not being install problem, instead -just drop the new shutdown.sh, and unsquash the image on ordinary -shutdown, which is safer and should always work. - -Signed-off-by: Kairui Song ---- - dracut-initramfs-restore.sh | 9 +++++++++ - dracut.sh | 2 -- - modules.d/99squash/shutdown.sh | 7 ------- - 3 files changed, 9 insertions(+), 9 deletions(-) - -diff --git a/dracut-initramfs-restore.sh b/dracut-initramfs-restore.sh -index 94794804..67fc88fa 100644 ---- a/dracut-initramfs-restore.sh -+++ b/dracut-initramfs-restore.sh -@@ -40,4 +40,13 @@ else - exit 1 - fi - -+if [[ -d squash ]]; then -+ unsquashfs -no-xattrs -f -d . squash/root.img >/dev/null -+ if [ $? -ne 0 ]; then -+ echo "Squash module is enabled for this initramfs but failed to unpack squash/root.img" >&2 -+ rm -f -- /run/initramfs/shutdown -+ exit 1 -+ fi -+fi -+ - exit 0 -diff --git a/dracut.sh b/dracut.sh -index e706714e..3dc2adc0 100755 ---- a/dracut.sh -+++ b/dracut.sh -@@ -1849,9 +1849,7 @@ if dracut_module_included "squash"; then - done - - mv $initdir/init $initdir/init.stock -- mv $initdir/shutdown $initdir/shutdown.stock - ln -s squash/init.sh $initdir/init -- ln -s squash/shutdown.sh $initdir/shutdown - - mksquashfs $squash_dir $squash_img -comp xz -b 64K -Xdict-size 100% &> /dev/null - -diff --git a/modules.d/99squash/shutdown.sh b/modules.d/99squash/shutdown.sh -deleted file mode 100755 -index 535779f4..00000000 ---- a/modules.d/99squash/shutdown.sh -+++ /dev/null -@@ -1,7 +0,0 @@ --#!/bin/sh --/squash/setup-squash.sh -- --exec /shutdown.stock -- --echo "Something went wrong when trying to start original shutdown executable!" --exit 1 - diff --git a/0014.patch b/0014.patch deleted file mode 100644 index 0826cd3..0000000 --- a/0014.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 05dc158e3c632cfd5c7fa20aee6e8373191b45fc Mon Sep 17 00:00:00 2001 -From: masem -Date: Wed, 14 Nov 2018 00:48:39 +0100 -Subject: [PATCH] Delay argument "-d" requires number - -Arguments "-f -d -n" fails with "invalid number -n", because -d delay expects number of seconds. ---- - modules.d/99shutdown/shutdown.sh | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/modules.d/99shutdown/shutdown.sh b/modules.d/99shutdown/shutdown.sh -index f21cc811..e3884a88 100755 ---- a/modules.d/99shutdown/shutdown.sh -+++ b/modules.d/99shutdown/shutdown.sh -@@ -112,17 +112,17 @@ getarg 'rd.break=shutdown' && emergency_shell --shutdown shutdown "Break before - - case "$ACTION" in - reboot|poweroff|halt) -- $ACTION -f -d -n -+ $ACTION -f -n - warn "$ACTION failed!" - ;; - kexec) - kexec -e - warn "$ACTION failed!" -- reboot -f -d -n -+ reboot -f -n - ;; - *) - warn "Shutdown called with argument '$ACTION'. Rebooting!" -- reboot -f -d -n -+ reboot -f -n - ;; - esac - - diff --git a/0015.patch b/0015.patch deleted file mode 100644 index 91bdf42..0000000 --- a/0015.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 01ffcf342ae65984c655f10a2fd35019a492ee5c Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Renaud=20M=C3=A9trich?= -Date: Wed, 14 Nov 2018 13:19:27 +0100 -Subject: [PATCH] fips: removed false-positive 'FATAL: Module xxx not found' - error message when kernel provides a generic algo for module -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Renaud Métrich ---- - modules.d/01fips/fips.sh | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh -index 9bc089f2..c6c986cf 100755 ---- a/modules.d/01fips/fips.sh -+++ b/modules.d/01fips/fips.sh -@@ -84,7 +84,7 @@ do_fips() - mv /etc/modprobe.d/fips.conf /etc/modprobe.d/fips.conf.bak - for _module in $FIPSMODULES; do - if [ "$_module" != "tcrypt" ]; then -- if ! modprobe "${_module}"; then -+ if ! modprobe "${_module}" 2>/tmp/fips.modprobe_err; then - # check if kernel provides generic algo - _found=0 - while read _k _s _v || [ -n "$_k" ]; do -@@ -93,7 +93,7 @@ do_fips() - _found=1 - break - done &2 && return 1 - fi - fi - done - diff --git a/0016.patch b/0016.patch deleted file mode 100644 index 5e5f9c0..0000000 --- a/0016.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 76522d58c337e695cbffdc10afb04344f16f81b0 Mon Sep 17 00:00:00 2001 -From: Lukas Nykryn -Date: Tue, 27 Nov 2018 15:27:53 +0100 -Subject: [PATCH] dracut-initramfs-restore: set selinux labels - ---- - dracut-initramfs-restore.sh | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/dracut-initramfs-restore.sh b/dracut-initramfs-restore.sh -index 67fc88fa..18469772 100644 ---- a/dracut-initramfs-restore.sh -+++ b/dracut-initramfs-restore.sh -@@ -49,4 +49,9 @@ if [[ -d squash ]]; then - fi - fi - -+if [ -e /etc/selinux/config -a -x /usr/sbin/setfiles ] ; then -+ . /etc/selinux/config -+ /usr/sbin/setfiles -v -r /run/initramfs /etc/selinux/${SELINUXTYPE}/contexts/files/file_contexts /run/initramfs > /dev/null -+fi -+ - exit 0 - diff --git a/0017.patch b/0017.patch deleted file mode 100644 index b197ac7..0000000 --- a/0017.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 79a17b0112995eb60c85c64d15070c52f213b28d Mon Sep 17 00:00:00 2001 -From: Lubomir Rintel -Date: Tue, 27 Nov 2018 15:30:48 +0100 -Subject: [PATCH] network-manager: call the online hook for connected devices - -Look for "connection-uuid" instead of "managed" to determine the devices -that are actually activated with a connection and call the online hook. - -This fixes the anaconda-net root mount, which utilizes the online hook. ---- - modules.d/35network-manager/nm-run.sh | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/modules.d/35network-manager/nm-run.sh b/modules.d/35network-manager/nm-run.sh -index f6defa99..0f943631 100755 ---- a/modules.d/35network-manager/nm-run.sh -+++ b/modules.d/35network-manager/nm-run.sh -@@ -9,8 +9,9 @@ fi - for _i in /sys/class/net/*/ - do - state=/run/NetworkManager/devices/$(cat $_i/ifindex) -- grep -q managed=true $state 2>/dev/null || continue -+ grep -q connection-uuid= $state 2>/dev/null || continue - ifname=$(basename $_i) - sed -n 's/root-path/new_root_path/p' <$state >/tmp/dhclient.$ifname.dhcpopts -+ source_hook initqueue/online $ifname - /sbin/netroot $ifname - done - diff --git a/0018.patch b/0018.patch deleted file mode 100644 index a3e1c7a..0000000 --- a/0018.patch +++ /dev/null @@ -1,25 +0,0 @@ -From a6bc200c28ac841edd12211c96dad8516095a68d Mon Sep 17 00:00:00 2001 -From: Thierry Vignaud -Date: Fri, 30 Nov 2018 15:41:05 +0100 -Subject: [PATCH] kill bogus comment - -should have been killed in commit 4a855e6bebed956c108865823bcc131ebea2841a ---- - modules.d/05busybox/module-setup.sh | 3 --- - 1 file changed, 3 deletions(-) - -diff --git a/modules.d/05busybox/module-setup.sh b/modules.d/05busybox/module-setup.sh -index 14d401c2..ecbd6a13 100755 ---- a/modules.d/05busybox/module-setup.sh -+++ b/modules.d/05busybox/module-setup.sh -@@ -22,9 +22,6 @@ install() { - _progs="$_progs $_i" - done - -- # FIXME: switch_root should be in the above list, but busybox version hangs -- # (using busybox-1.15.1-7.fc14.i686 at the time of writing) -- - for _i in $_progs; do - _path=$(find_binary "$_i") - [ -z "$_path" ] && continue - diff --git a/0019.patch b/0019.patch deleted file mode 100644 index 2e9ddf6..0000000 --- a/0019.patch +++ /dev/null @@ -1,26 +0,0 @@ -From fb280834d77a17a508d2bb22f5196de9ffd4fee7 Mon Sep 17 00:00:00 2001 -From: "Bruno E. O. Meneguele" -Date: Fri, 30 Nov 2018 13:01:21 -0200 -Subject: [PATCH] dracut.modules.7.asc: typo correction - -Correct simple typo in .7 manpage for dracut. - -Signed-off-by: Bruno E. O. Meneguele ---- - dracut.modules.7.asc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/dracut.modules.7.asc b/dracut.modules.7.asc -index c34d005d..387f6da0 100644 ---- a/dracut.modules.7.asc -+++ b/dracut.modules.7.asc -@@ -266,7 +266,7 @@ installs an executable/script in the dracut hook with priority - - ==== inst_rules [ ...] - --installs one ore more udev rules. Non-existant udev rules are reported, but do -+installs one or more udev rules. Non-existant udev rules are reported, but do - not let dracut fail. - - ==== instmods [ ... ] - diff --git a/0020.patch b/0020.patch deleted file mode 100644 index 4ba7280..0000000 --- a/0020.patch +++ /dev/null @@ -1,46 +0,0 @@ -From f6e3b59e5ea6f52a25631557badc7f4dfabbd7ee Mon Sep 17 00:00:00 2001 -From: Harald Hoyer -Date: Tue, 21 Aug 2018 13:14:44 +0200 -Subject: [PATCH] network: skip already enslaved interfaces - ---- - modules.d/35network-legacy/ifup.sh | 6 +++++- - modules.d/40network/net-lib.sh | 7 +++++++ - 2 files changed, 12 insertions(+), 1 deletion(-) - -diff --git a/modules.d/35network-legacy/ifup.sh b/modules.d/35network-legacy/ifup.sh -index ea2a67ff..b4f5bf10 100755 ---- a/modules.d/35network-legacy/ifup.sh -+++ b/modules.d/35network-legacy/ifup.sh -@@ -408,7 +408,11 @@ for p in $(getargs ip=); do - esac - - # If this option isn't directed at our interface, skip it -- [ -n "$dev" ] && [ "$dev" != "$netif" ] && continue -+ if [ -n "$dev" ]; then -+ [ "$dev" != "$netif" ] && continue -+ else -+ iface_is_enslaved "$netif" && continue -+ fi - - # Store config for later use - for i in ip srv gw mask hostname macaddr mtu dns1 dns2; do -diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh -index 1e7f1b33..964ed3ab 100755 ---- a/modules.d/40network/net-lib.sh -+++ b/modules.d/40network/net-lib.sh -@@ -745,6 +745,13 @@ iface_has_link() { - iface_has_carrier "$@" - } - -+iface_is_enslaved() { -+ local _li -+ _li=$(ip -o link show dev $1) -+ strstr "$li" " master " || return 1 -+ return 0 -+} -+ - find_iface_with_link() { - local iface_path="" iface="" - for iface_path in /sys/class/net/*; do - diff --git a/0021.patch b/0021.patch deleted file mode 100644 index c50f389..0000000 --- a/0021.patch +++ /dev/null @@ -1,76 +0,0 @@ -From c38f9e980c1ee03151dd1c6602907c6228b78d30 Mon Sep 17 00:00:00 2001 -From: Harald Hoyer -Date: Tue, 4 Dec 2018 10:02:45 +0100 -Subject: [PATCH] install/dracut-install.c: install module dependencies of - dependencies - ---- - install/dracut-install.c | 28 +++++++++++++++++++++++++--- - 1 file changed, 25 insertions(+), 3 deletions(-) - -diff --git a/install/dracut-install.c b/install/dracut-install.c -index 5f352b36..d64de545 100644 ---- a/install/dracut-install.c -+++ b/install/dracut-install.c -@@ -84,6 +84,11 @@ static bool arg_mod_filter_noname = false; - static int dracut_install(const char *src, const char *dst, bool isdir, bool resolvedeps, bool hashdst); - - -+static inline void kmod_module_unrefp(struct kmod_module **p) { -+ if (*p) -+ kmod_module_unref(*p); -+} -+#define _cleanup_kmod_module_unref_ _cleanup_(kmod_module_unrefp) - - static inline void kmod_module_unref_listp(struct kmod_list **p) { - if (*p) -@@ -1230,28 +1235,45 @@ static bool check_module_path(const char *path) - static int install_dependent_modules(struct kmod_list *modlist) - { - struct kmod_list *itr; -- struct kmod_module *mod; - const char *path = NULL; - const char *name = NULL; - int ret = 0; - - kmod_list_foreach(itr, modlist) { -+ _cleanup_kmod_module_unref_ struct kmod_module *mod = NULL; - mod = kmod_module_get_module(itr); - path = kmod_module_get_path(mod); - -+ if (check_hashmap(items_failed, path)) -+ return -1; -+ -+ if (check_hashmap(items, path)) { -+ continue; -+ } -+ - name = kmod_module_get_name(mod); -+ - if ((path == NULL) || (arg_mod_filter_noname && (regexec(&mod_filter_noname, name, 0, NULL, 0) == 0))) { -- kmod_module_unref(mod); - continue; - } -+ - ret = dracut_install(path, &path[kerneldirlen], false, false, true); - if (ret == 0) { -+ _cleanup_kmod_module_unref_list_ struct kmod_list *modlist = NULL; -+ _cleanup_kmod_module_unref_list_ struct kmod_list *modpre = NULL; -+ _cleanup_kmod_module_unref_list_ struct kmod_list *modpost = NULL; - log_debug("dracut_install '%s' '%s' OK", path, &path[kerneldirlen]); - install_firmware(mod); -+ modlist = kmod_module_get_dependencies(mod); -+ ret = install_dependent_modules(modlist); -+ if (ret == 0) { -+ ret = kmod_module_get_softdeps(mod, &modpre, &modpost); -+ if (ret == 0) -+ ret = install_dependent_modules(modpre); -+ } - } else { - log_error("dracut_install '%s' '%s' ERROR", path, &path[kerneldirlen]); - } -- kmod_module_unref(mod); - } - - return ret; - diff --git a/0022.patch b/0022.patch deleted file mode 100644 index 540a881..0000000 --- a/0022.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 712f471ebfae70fd71c0c740e9a3e120464ca7e7 Mon Sep 17 00:00:00 2001 -From: Harald Hoyer -Date: Tue, 4 Dec 2018 10:06:12 +0100 -Subject: [PATCH] test/test-functions: correctly move server.log - ---- - test/test-functions | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/test/test-functions b/test/test-functions -index a6254ec7..51b3df80 100644 ---- a/test/test-functions -+++ b/test/test-functions -@@ -80,7 +80,7 @@ while (($# > 0)); do - ret=$? - test_cleanup - if ((ret!=0)) && [[ -f "$TESTDIR"/server.log ]]; then -- mv [[ -f "$TESTDIR"/server.log ]] ./server${TEST_RUN_ID:+-$TEST_RUN_ID}.log -+ mv "$TESTDIR"/server.log ./server${TEST_RUN_ID:+-$TEST_RUN_ID}.log - fi - rm -fr -- "$TESTDIR" - rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID} - diff --git a/0023.patch b/0023.patch deleted file mode 100644 index 6110f1d..0000000 --- a/0023.patch +++ /dev/null @@ -1,22 +0,0 @@ -From b8a8d7a64e146e452608b1f4bea1580a7b9449f6 Mon Sep 17 00:00:00 2001 -From: Harald Hoyer -Date: Tue, 4 Dec 2018 10:22:28 +0100 -Subject: [PATCH] fedora-test.sh: install tcpdump - ---- - fedora-test.sh | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/fedora-test.sh b/fedora-test.sh -index 87023a84..e897c325 100755 ---- a/fedora-test.sh -+++ b/fedora-test.sh -@@ -39,6 +39,7 @@ dnf -y install --best --allowerasing \ - /usr/bin/qemu-kvm \ - /usr/bin/qemu-system-$(uname -i) \ - e2fsprogs \ -+ tcpdump \ - $NULL &>/dev/null - - ./configure - diff --git a/0024.patch b/0024.patch deleted file mode 100644 index 14f7077..0000000 --- a/0024.patch +++ /dev/null @@ -1,31 +0,0 @@ -From ebe1821635dd99f07c817179ee5358d27aab53c5 Mon Sep 17 00:00:00 2001 -From: Harald Hoyer -Date: Tue, 4 Dec 2018 10:27:17 +0100 -Subject: [PATCH] 95iscsi/module-setup.sh: do not require 'hostname' anymore - ---- - modules.d/95iscsi/module-setup.sh | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh -index 3c791001..36cd64a6 100755 ---- a/modules.d/95iscsi/module-setup.sh -+++ b/modules.d/95iscsi/module-setup.sh -@@ -4,7 +4,7 @@ - check() { - local _rootdev - # If our prerequisites are not met, fail anyways. -- require_binaries hostname iscsi-iname iscsiadm iscsid || return 1 -+ require_binaries iscsi-iname iscsiadm iscsid || return 1 - - # If hostonly was requested, fail the check if we are not actually - # booting from root. -@@ -206,7 +206,7 @@ cmdline() { - install() { - inst_multiple -o iscsiuio - inst_libdir_file 'libgcc_s.so*' -- inst_multiple umount hostname iscsi-iname iscsiadm iscsid -+ inst_multiple umount iscsi-iname iscsiadm iscsid - - inst_multiple -o \ - $systemdsystemunitdir/iscsid.socket \ diff --git a/541.patch b/541.patch deleted file mode 100644 index 76c3d25..0000000 --- a/541.patch +++ /dev/null @@ -1,34 +0,0 @@ -From f453de79a70946a097b2d49dd9c1cecf52c71d3d Mon Sep 17 00:00:00 2001 -From: Lukas Nykryn -Date: Thu, 14 Feb 2019 20:18:04 +0100 -Subject: [PATCH] install: string_hash_func should not be fed with NULL - -If kmod_module_get_path returns NULL, we should skip that entry, -the hash function does not like NULL pointers. ---- - install/dracut-install.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/install/dracut-install.c b/install/dracut-install.c -index d64de545a..9e415b5e7 100644 ---- a/install/dracut-install.c -+++ b/install/dracut-install.c -@@ -1244,6 +1244,9 @@ static int install_dependent_modules(struct kmod_list *modlist) - mod = kmod_module_get_module(itr); - path = kmod_module_get_path(mod); - -+ if (path == NULL) -+ continue; -+ - if (check_hashmap(items_failed, path)) - return -1; - -@@ -1253,7 +1256,7 @@ static int install_dependent_modules(struct kmod_list *modlist) - - name = kmod_module_get_name(mod); - -- if ((path == NULL) || (arg_mod_filter_noname && (regexec(&mod_filter_noname, name, 0, NULL, 0) == 0))) { -+ if (arg_mod_filter_noname && (regexec(&mod_filter_noname, name, 0, NULL, 0) == 0)) { - continue; - } - diff --git a/578.patch b/578.patch deleted file mode 100644 index e9bd5ec..0000000 --- a/578.patch +++ /dev/null @@ -1,92 +0,0 @@ -From 319b21b51e7dc9343d4200e34252fc2e4d942c1f Mon Sep 17 00:00:00 2001 -From: Lubomir Rintel -Date: Mon, 27 May 2019 12:44:17 +0200 -Subject: [PATCH 1/3] network-manager: also read out next-server from NM state - ---- - modules.d/35network-manager/nm-run.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/modules.d/35network-manager/nm-run.sh b/modules.d/35network-manager/nm-run.sh -index 0f9436316..c77f6074e 100755 ---- a/modules.d/35network-manager/nm-run.sh -+++ b/modules.d/35network-manager/nm-run.sh -@@ -11,7 +11,7 @@ do - state=/run/NetworkManager/devices/$(cat $_i/ifindex) - grep -q connection-uuid= $state 2>/dev/null || continue - ifname=$(basename $_i) -- sed -n 's/root-path/new_root_path/p' <$state >/tmp/dhclient.$ifname.dhcpopts -+ sed -n 's/root-path/new_root_path/p;s/next-server/new_next_server/p' <$state >/tmp/dhclient.$ifname.dhcpopts - source_hook initqueue/online $ifname - /sbin/netroot $ifname - done - -From ab24d818e206ab443d71194365d1d50c673a86e4 Mon Sep 17 00:00:00 2001 -From: Lubomir Rintel -Date: Mon, 27 May 2019 12:43:59 +0200 -Subject: [PATCH 2/3] network-manager: generate configuration with netroot= - -If the root is on network, let nm-initrd-generator create configuration -even if none was explicitly specified on the command line. - -Also do the same if /tmp/net.ifaces exists, because the anaconda plugin -creates an empty file in that location in hopes that will make us -configure the network. ---- - modules.d/35network-manager/nm-config.sh | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/modules.d/35network-manager/nm-config.sh b/modules.d/35network-manager/nm-config.sh -index 1339ebe76..1efa737c5 100755 ---- a/modules.d/35network-manager/nm-config.sh -+++ b/modules.d/35network-manager/nm-config.sh -@@ -1,3 +1,7 @@ - #!/bin/sh - -+if [ -n "$netroot" ] || [ -e /tmp/net.ifaces ]; then -+ echo rd.neednet >> /etc/cmdline.d/35-neednet.conf -+fi -+ - /usr/libexec/nm-initrd-generator -- $(getcmdline) - -From 9a9c061fd70ce83191c6df5846bcb84559f46bf6 Mon Sep 17 00:00:00 2001 -From: Lubomir Rintel -Date: Mon, 27 May 2019 11:12:22 +0200 -Subject: [PATCH 3/3] network: parse root=dhcp also with network-manager module - -Move the logic from network-legacy to common network code. ---- - modules.d/35network-legacy/module-setup.sh | 1 - - modules.d/{35network-legacy => 40network}/dhcp-root.sh | 0 - modules.d/40network/module-setup.sh | 1 + - 3 files changed, 1 insertion(+), 1 deletion(-) - rename modules.d/{35network-legacy => 40network}/dhcp-root.sh (100%) - -diff --git a/modules.d/35network-legacy/module-setup.sh b/modules.d/35network-legacy/module-setup.sh -index 71abda36d..5a82e998c 100755 ---- a/modules.d/35network-legacy/module-setup.sh -+++ b/modules.d/35network-legacy/module-setup.sh -@@ -36,7 +36,6 @@ install() { - inst_simple -H "/etc/dhclient.conf" - cat "$moddir/dhclient.conf" >> "${initdir}/etc/dhclient.conf" - inst_hook pre-udev 60 "$moddir/net-genrules.sh" -- inst_hook cmdline 91 "$moddir/dhcp-root.sh" - inst_hook cmdline 92 "$moddir/parse-ibft.sh" - inst_hook cmdline 95 "$moddir/parse-vlan.sh" - inst_hook cmdline 96 "$moddir/parse-bond.sh" -diff --git a/modules.d/35network-legacy/dhcp-root.sh b/modules.d/40network/dhcp-root.sh -similarity index 100% -rename from modules.d/35network-legacy/dhcp-root.sh -rename to modules.d/40network/dhcp-root.sh -diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh -index e8541636b..8e2a74a34 100755 ---- a/modules.d/40network/module-setup.sh -+++ b/modules.d/40network/module-setup.sh -@@ -28,6 +28,7 @@ install() { - inst_script "$moddir/netroot.sh" "/sbin/netroot" - inst_simple "$moddir/net-lib.sh" "/lib/net-lib.sh" - inst_hook pre-udev 50 "$moddir/ifname-genrules.sh" -+ inst_hook cmdline 91 "$moddir/dhcp-root.sh" - - dracut_need_initqueue - } diff --git a/dracut.spec b/dracut.spec index d1e8032..4c688dd 100644 --- a/dracut.spec +++ b/dracut.spec @@ -5,16 +5,18 @@ # strip the automatically generated dep here and instead co-own the # directory. %global __requires_exclude pkg-config -%define dist_free_release 27.git20181204 +%define dist_free_release 1 Name: dracut -Version: 049 -Release: %{dist_free_release}%{?dist}.2 +Version: 050 +Release: %{dist_free_release}%{?dist} Summary: Initramfs generator using udev %if 0%{?fedora} || 0%{?rhel} +Group: System Environment/Base %endif %if 0%{?suse_version} +Group: System/Base %endif # The entire source code is GPLv2+ @@ -26,46 +28,12 @@ URL: https://dracut.wiki.kernel.org/ # Source can be generated by # http://git.kernel.org/?p=boot/dracut/dracut.git;a=snapshot;h=%%{version};sf=tgz Source0: http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{version}.tar.xz -Patch1: 0001.patch -Patch2: 0002.patch -Patch3: 0003.patch -Patch4: 0004.patch -Patch5: 0005.patch -Patch6: 0006.patch -Patch7: 0007.patch -Patch8: 0008.patch -Patch9: 0009.patch -Patch10: 0010.patch -Patch11: 0011.patch -Patch12: 0012.patch -Patch13: 0013.patch -Patch14: 0014.patch -Patch15: 0015.patch -Patch16: 0016.patch -Patch17: 0017.patch -Patch18: 0018.patch -Patch19: 0019.patch -Patch20: 0020.patch -Patch21: 0021.patch -Patch22: 0022.patch -Patch23: 0023.patch -Patch24: 0024.patch - -# https://github.com/dracutdevs/dracut/pull/541 -# Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1676357 -# dracut-install crash during kernel scriptlets -Patch100: 541.patch - -# https://github.com/dracutdevs/dracut/pull/578 -# Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1719057 -# installer boot fails if network is required during initramfs -Patch101: 578.patch Source1: https://www.gnu.org/licenses/lgpl-2.1.txt BuildRequires: bash BuildRequires: git -BuildRequires: kmod-devel >= 23 +BuildRequires: pkgconfig(libkmod) >= 23 BuildRequires: gcc %if 0%{?fedora} || 0%{?rhel} @@ -150,7 +118,8 @@ Requires: %{name} = %{version}-%{release} %endif Requires: iputils Requires: iproute -Requires: dhclient +Requires: (NetworkManager >= 1.20 or dhclient) +Suggests: NetworkManager Obsoletes: dracut-generic < 008 Provides: dracut-generic = %{version}-%{release} @@ -255,6 +224,9 @@ rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/00bootchart # we do not support dash in the initramfs rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/00dash +# we do not support mksh in the initramfs +rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/00mksh + # remove gentoo specific modules rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/50gensplash @@ -290,21 +262,24 @@ mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/initramfs %if 0%{?fedora} || 0%{?rhel} install -m 0644 dracut.conf.d/fedora.conf.example $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/01-dist.conf -rm -f $RPM_BUILD_ROOT%{_mandir}/man?/*suse* %endif %if 0%{?suse_version} install -m 0644 dracut.conf.d/suse.conf.example $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/01-dist.conf +%else +rm -f $RPM_BUILD_ROOT%{_mandir}/man?/*suse* %endif %if 0%{?fedora} == 0 && 0%{?rhel} == 0 && 0%{?suse_version} <= 9999 rm -f -- $RPM_BUILD_ROOT%{_bindir}/mkinitrd rm -f -- $RPM_BUILD_ROOT%{_bindir}/lsinitrd +rm -f -- $RPM_BUILD_ROOT%{_mandir}/man8/mkinitrd.8* +rm -f -- $RPM_BUILD_ROOT%{_mandir}/man1/lsinitrd.1* %endif -%if 0%{?fedora} || 0%{?rhel} echo 'hostonly="no"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/02-generic-image.conf echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/02-rescue.conf +%if 0%{?fedora} <=30 || 0%{?rhel} <= 8 # FIXME: remove after F30 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/kernel/postinst.d install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kernel/postinst.d/51-dracut-rescue-postinst.sh @@ -312,7 +287,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne %files %if %{with doc} -%doc README HACKING TODO AUTHORS NEWS dracut.html dracut.png dracut.svg +%doc README.md HACKING TODO AUTHORS NEWS dracut.html dracut.png dracut.svg %endif %{!?_licensedir:%global license %%doc} %license COPYING lgpl-2.1.txt @@ -349,6 +324,9 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne %{_mandir}/man8/mkinitrd.8* %{_mandir}/man1/lsinitrd.1* %endif +%if 0%{?suse_version} +%{_mandir}/man8/mkinitrd-suse.8* +%endif %{_mandir}/man7/dracut.kernel.7* %{_mandir}/man7/dracut.cmdline.7* %{_mandir}/man7/dracut.modules.7* @@ -372,6 +350,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne %{dracutlibdir}/modules.d/03rescue %{dracutlibdir}/modules.d/04watchdog %{dracutlibdir}/modules.d/05busybox +%{dracutlibdir}/modules.d/06rngd %{dracutlibdir}/modules.d/10i18n %{dracutlibdir}/modules.d/30convertfs %{dracutlibdir}/modules.d/45url-lib @@ -388,6 +367,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne %{dracutlibdir}/modules.d/90mdraid %{dracutlibdir}/modules.d/90multipath %{dracutlibdir}/modules.d/90stratis +%{dracutlibdir}/modules.d/90ppcmac %{dracutlibdir}/modules.d/90qemu %{dracutlibdir}/modules.d/91crypt-gpg %{dracutlibdir}/modules.d/91crypt-loop @@ -445,11 +425,8 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne %{_unitdir}/initrd.target.wants/dracut-pre-pivot.service %{_unitdir}/initrd.target.wants/dracut-pre-trigger.service %{_unitdir}/initrd.target.wants/dracut-pre-udev.service - %endif -%if 0%{?fedora} || 0%{?rhel} %{_prefix}/lib/kernel/install.d/50-dracut.install -%endif %files network %{dracutlibdir}/modules.d/02systemd-networkd @@ -498,13 +475,16 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne %files config-rescue %{dracutlibdir}/dracut.conf.d/02-rescue.conf -%if 0%{?fedora} || 0%{?rhel} %{_prefix}/lib/kernel/install.d/51-dracut-rescue.install +%if 0%{?fedora} <= 30 || 0%{?rhel} <= 8 # FIXME: remove after F30 %{_sysconfdir}/kernel/postinst.d/51-dracut-rescue-postinst.sh %endif %changelog +* Wed Mar 04 2020 Harald Hoyer - 050-1 +- version 050 + * Tue Jan 28 2020 Fedora Release Engineering - 049-27.git20181204.2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild diff --git a/sources b/sources index 51ab7c1..79b077e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (dracut-049.tar.xz) = 0ae2afa43d5c415bcc0c18494fb2e4ccb8bff1535f673e366a57b9d95631f88631e6274abddb07ee14c07fb29a51e8df3467ce07dd2f5bdc5f22e29d7bea4534 +SHA512 (dracut-050.tar.xz) = 9d9a66acfd6b9d2fd50855a59a2393e0602c2ef97119db046f68d6167ea84d1423fa465b8b4d96339febb38d5a96df26dec7862c4b3397c3d726db18d280eee4