e4f609fba2
From-source-git-commit: a24e1272faba2875f9b78fcf42109028af0869bc * switch to dracut-ng upstream fork The original dracut repository is no longer maintained, new initiative was started: https://github.com/dracut-ng/dracut-ng/ * applied additional fixes 9df3cb58a19f38157a615c311356cfd6ae55d2d7 fix(rngd): install system service file 0b65ac224d831cc96da940cce510523c7276a5ec feat(hwdb): add hwdb module to install hwdb.bin on demand 10b86edba3ffe0ce13c5f43ff0193cdf04661358 fix(nvmf): move /etc/nvme/host{nqn,id} requirement to hostonly bad2bc80cdcfac8915374497cc47ce9d5670d015 fix(systemd): explicitly install some libs that will not be statically included 55a56c546bde71fb42c99aadd96e98fca2199823 fix(dracut): move hooks directory from /usr/lib to /var/lib 110fec3e41faf47277447f1c56635c5a876c1f96 feat(ifcfg): minimize s390-specific network configuration aspects b6913f66b6c9e9ea81fd0832405c170876bc993a refactor(ifcfg): delete code duplication using iface_get_subchannels() cbc5eece88b8f6d0e69fdfbb8f34eabb45425c86 fix(znet): append to udev rules so each rd.znet_ifname is effective 7ad6fef8fe110093939c422b5c3b381ebe47e4e9 feat(qeth_rules): remove qeth handling consolidated in 95znet addb383b375fd0db07eacf8a9f5d9b4e23343855 docs(dracut.cmdline): generalize description of rd.znet 86b6e2979999cf5ecce8c76c6230d1f085b3a333 feat(znet): use zdev for consolidated device configuration 1ff6be8aef787513b8143df444a1dd2d696b0944 feat(dasd): minimize dasd handling consolidated in s390-tools a82045ef34bc8c913502eba37b6b9c60709d6997 feat(dasd_mod): minimize dasd handling consolidated in s390-tools 7294e45b5204e47bb8ee2108e2c38c5843e64fac feat(dasd_rules): remove dasd handling consolidated in s390-tools 8d6098969aa9dc34edfd1bc96e6aa0384ae2fb99 feat(zfcp): minimize zfcp handling consolidated in s390-tools 71876ea8c73090741bdf26abb89c28fb260ed575 feat(zfcp_rules): remove zfcp handling consolidated in s390-tools a2c1fc530d8bcbdeaf1806f4a22019052715fc98 refactor(cms): remove now unnecessary inclusion of full s390utils-base cc14fe218861f2855ca88ad03220ecb78d4aa31a refactor(cms): use consolidated network config with zdev from s390-tools 74edb9758da26ef063e4686a595f1d34f07f86f7 refactor(cms): use consolidated dasd config with zdev from s390-tools 3a9b9a5cf507a868f8b3ec33cf686b3a552286c2 refactor(cms): use consolidated zfcp config with zdev from s390-tools 38412977daad049b12273966300d07211674834e refactor(cms): use zdev to simplify handling CMSDASD=... boot option (Possibly also resolves other open issues.) Resolves: RHEL-26887 RHEL-34954 RHEL-35521
97 lines
3.6 KiB
Diff
97 lines
3.6 KiB
Diff
From f86d5ff72868e9df7d255e3c5e938a9e339f09fa Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
|
Date: Tue, 18 Jan 2022 18:08:42 +0100
|
|
Subject: [PATCH 01/10] feat(kernel-install): do nothing when
|
|
$KERNEL_INSTALL_INITRD_GENERATOR says so
|
|
|
|
dracut may be installed without being actually used. This is very common in
|
|
binary distros where a package may be pulled in through dependencies, even
|
|
though the user does not need it in a particular setup. KERNEL_INSTALL_INITRD_GENERATOR
|
|
is being added in systemd's kernel-install to select which of the possibly many
|
|
initrd generation mechanisms will be used.
|
|
|
|
For backwards compat, if it not set, continue as before. But if set to
|
|
something else, skip our kernel-install plugins.
|
|
|
|
(Cherry-picked commit f47bcdd7342ca0d46b889e712a1c7446e18434bc from PR#1825)
|
|
---
|
|
install.d/50-dracut.install | 31 ++++++------------------------
|
|
install.d/51-dracut-rescue.install | 12 +++++++++---
|
|
2 files changed, 15 insertions(+), 28 deletions(-)
|
|
|
|
diff --git a/install.d/50-dracut.install b/install.d/50-dracut.install
|
|
index 441414ac..efb184cd 100755
|
|
--- a/install.d/50-dracut.install
|
|
+++ b/install.d/50-dracut.install
|
|
@@ -6,38 +6,19 @@ BOOT_DIR_ABS="$3"
|
|
KERNEL_IMAGE="$4"
|
|
|
|
# If KERNEL_INSTALL_MACHINE_ID is defined but empty, BOOT_DIR_ABS is a fake directory.
|
|
-# So, let's skip to create initrd.
|
|
+# In this case, do not create the initrd.
|
|
if ! [[ ${KERNEL_INSTALL_MACHINE_ID-x} ]]; then
|
|
exit 0
|
|
fi
|
|
|
|
-# Do not attempt to create initramfs if the supplied image is already a UKI
|
|
-if [[ "$KERNEL_INSTALL_IMAGE_TYPE" = "uki" ]]; then
|
|
+# Skip this plugin if we're using a different generator. If nothing is specified,
|
|
+# assume we're wanted since we're installed.
|
|
+if [ "${KERNEL_INSTALL_INITRD_GENERATOR:-dracut}" != "dracut" ]; then
|
|
exit 0
|
|
fi
|
|
|
|
-# Mismatching the install layout and the --uefi/--no-uefi opts just creates a mess.
|
|
-if [[ $KERNEL_INSTALL_LAYOUT == "uki" && -n $KERNEL_INSTALL_STAGING_AREA ]]; then
|
|
- BOOT_DIR_ABS="$KERNEL_INSTALL_STAGING_AREA"
|
|
- if [[ -z $KERNEL_INSTALL_UKI_GENERATOR || $KERNEL_INSTALL_UKI_GENERATOR == "dracut" ]]; then
|
|
- # No uki generator preference set or we have been chosen
|
|
- IMAGE="uki.efi"
|
|
- UEFI_OPTS="--uefi"
|
|
- elif [[ -z $KERNEL_INSTALL_INITRD_GENERATOR || $KERNEL_INSTALL_INITRD_GENERATOR == "dracut" ]]; then
|
|
- # We aren't the uki generator, but we have been requested to make the initrd
|
|
- IMAGE="initrd"
|
|
- UEFI_OPTS="--no-uefi"
|
|
- else
|
|
- exit 0
|
|
- fi
|
|
-elif [[ $KERNEL_INSTALL_LAYOUT == "bls" && -n $KERNEL_INSTALL_STAGING_AREA ]]; then
|
|
- BOOT_DIR_ABS="$KERNEL_INSTALL_STAGING_AREA"
|
|
- if [[ -z $KERNEL_INSTALL_INITRD_GENERATOR || $KERNEL_INSTALL_INITRD_GENERATOR == "dracut" ]]; then
|
|
- IMAGE="initrd"
|
|
- UEFI_OPTS="--no-uefi"
|
|
- else
|
|
- exit 0
|
|
- fi
|
|
+if [[ -d "$BOOT_DIR_ABS" ]]; then
|
|
+ INITRD="initrd"
|
|
else
|
|
# No layout information, use users --uefi/--no-uefi preference
|
|
UEFI_OPTS=""
|
|
diff --git a/install.d/51-dracut-rescue.install b/install.d/51-dracut-rescue.install
|
|
index aa0ccdc5..be4172b5 100755
|
|
--- a/install.d/51-dracut-rescue.install
|
|
+++ b/install.d/51-dracut-rescue.install
|
|
@@ -7,9 +7,15 @@ KERNEL_VERSION="$2"
|
|
BOOT_DIR_ABS="${3%/*}/0-rescue"
|
|
KERNEL_IMAGE="$4"
|
|
|
|
-dropindirs_sort() {
|
|
- suffix=$1
|
|
- shift
|
|
+# Skip this plugin if we're using a different generator. If nothing is specified,
|
|
+# assume we're wanted since we're installed.
|
|
+if [ "${KERNEL_INSTALL_INITRD_GENERATOR:-dracut}" != "dracut" ]; then
|
|
+ exit 0
|
|
+fi
|
|
+
|
|
+dropindirs_sort()
|
|
+{
|
|
+ suffix=$1; shift
|
|
args=("$@")
|
|
files=$(
|
|
while (($# > 0)); do
|
|
--
|
|
2.42.0
|
|
|