dracut-049-227.git20230725

Resolves: #1968118,#2181543
This commit is contained in:
Pavel Valena 2023-07-25 13:42:53 +02:00
parent ee8bf330d1
commit f13913e366
3 changed files with 152 additions and 1 deletions

60
0225.patch Normal file
View File

@ -0,0 +1,60 @@
From d3d382cb0192c23abc448bd35b59502820a8b242 Mon Sep 17 00:00:00 2001
From: Pavel Valena <pvalena@redhat.com>
Date: Sun, 23 Jul 2023 19:44:17 +0200
Subject: [PATCH] fix(rngd): install system service file
as there's no reason to keep a copy; there shouldn't be any modifications.
In case there are args stored in a separate file (Fedora and alike),
it needs to be supplied too, but without the option to change the user.
(Cherry-picked commit: c47a44cb25c0892d9af6e66ee9d7cd2c3beca31f)
Resolves: #2181543
---
modules.d/06rngd/module-setup.sh | 9 ++++++++-
modules.d/06rngd/rngd.service | 7 -------
modules.d/06rngd/sysconfig | 1 +
3 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/modules.d/06rngd/module-setup.sh b/modules.d/06rngd/module-setup.sh
index 354bd0bb..7458e5dd 100644
--- a/modules.d/06rngd/module-setup.sh
+++ b/modules.d/06rngd/module-setup.sh
@@ -32,7 +32,14 @@ check() {
install() {
inst rngd
- inst_simple "${moddir}/rngd.service" "${systemdsystemunitdir}/rngd.service"
+ inst_simple "${systemdsystemunitdir}/rngd.service"
+
+ if [ -r /etc/sysconfig/rngd ]; then
+ inst_simple "${moddir}/sysconfig" "/etc/sysconfig/rngd"
+ fi
+
+ # make sure dependant libs are installed too
+ inst_libdir_file opensc-pkcs11.so
systemctl -q --root "$initdir" add-wants sysinit.target rngd.service
}
diff --git a/modules.d/06rngd/rngd.service b/modules.d/06rngd/rngd.service
deleted file mode 100644
index 570fbedb..00000000
--- a/modules.d/06rngd/rngd.service
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=Hardware RNG Entropy Gatherer Daemon
-DefaultDependencies=no
-Before=systemd-udevd.service
-
-[Service]
-ExecStart=/usr/sbin/rngd -f
diff --git a/modules.d/06rngd/sysconfig b/modules.d/06rngd/sysconfig
new file mode 100644
index 00000000..100e8deb
--- /dev/null
+++ b/modules.d/06rngd/sysconfig
@@ -0,0 +1 @@
+RNGD_ARGS="--fill-watermark=0 -x pkcs11 -x nist -x qrypt"

84
0226.patch Normal file
View File

@ -0,0 +1,84 @@
From 62fb051db129a1cbb5645107933e961a57d8bef3 Mon Sep 17 00:00:00 2001
From: Pavel Valena <pvalena@redhat.com>
Date: Tue, 25 Apr 2023 14:56:59 +0200
Subject: [PATCH] feat(hwdb): install hwdb on demand when module is needed
Adding a module to install hwdb. Further extensions might make only selected
part of hwdb installable, to save space. The module is not included by default.
Including the module adds 2MB of compressed data (on Fedora, the file has 12MB).
hwdb is needed in case of custom HW, like a keyboard/mouse or various interfaces.
Original PR: https://github.com/dracutdevs/dracut/pull/1681
(Cherry-picked commit: 062e739d89543a38d4b3e2cab155912bc4bf9e56)
Resolves: #1968118
---
dracut.sh | 6 ++++++
dracut.spec | 1 +
modules.d/95hwdb/module-setup.sh | 26 ++++++++++++++++++++++++++
3 files changed, 33 insertions(+)
diff --git a/dracut.sh b/dracut.sh
index f58559e8..869b90b0 100755
--- a/dracut.sh
+++ b/dracut.sh
@@ -1302,6 +1302,12 @@ if ! [[ -d "$udevdir" ]]; then
[[ -e /usr/lib/udev/collect ]] && udevdir=/usr/lib/udev
fi
+[[ -d $udevconfdir ]] \
+ || udevconfdir="$(pkg-config udev --variable=udevconfdir 2>/dev/null)"
+if ! [[ -d "$udevconfdir" ]]; then
+ [[ -d /etc/udev ]] && udevconfdir=/etc/udev
+fi
+
[[ -d $systemdutildir ]] \
|| systemdutildir=$(pkg-config systemd --variable=systemdutildir 2>/dev/null)
diff --git a/dracut.spec b/dracut.spec
index 90fa903a..a417f780 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -365,6 +365,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
%{dracutlibdir}/modules.d/91crypt-loop
%{dracutlibdir}/modules.d/95debug
%{dracutlibdir}/modules.d/95fstab-sys
+%{dracutlibdir}/modules.d/95hwdb
%{dracutlibdir}/modules.d/95lunmask
%{dracutlibdir}/modules.d/95nvmf
%{dracutlibdir}/modules.d/95resume
diff --git a/modules.d/95hwdb/module-setup.sh b/modules.d/95hwdb/module-setup.sh
new file mode 100755
index 00000000..16365377
--- /dev/null
+++ b/modules.d/95hwdb/module-setup.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+# This file is part of dracut.
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+check() {
+ return 255
+}
+
+# called by dracut
+install() {
+ local hwdb_bin
+
+ # systemd-hwdb ships the file in /etc, with /usr/lib as an alternative.
+ # Therefore consider this location as preferred for configuration.
+ hwdb_bin="${udevdir}"/hwdb.bin
+
+ if [[ ! -r "${hwdb_bin}" ]]; then
+ hwdb_bin="${udevconfdir}"/hwdb.bin
+ fi
+
+ if [[ $hostonly ]]; then
+ inst_multiple -H "${hwdb_bin}"
+ else
+ inst_multiple "${hwdb_bin}"
+ fi
+}

View File

@ -5,7 +5,7 @@
# strip the automatically generated dep here and instead co-own the # strip the automatically generated dep here and instead co-own the
# directory. # directory.
%global __requires_exclude pkg-config %global __requires_exclude pkg-config
%define dist_free_release 225.git20230614 %define dist_free_release 227.git20230725
Name: dracut Name: dracut
Version: 049 Version: 049
@ -252,6 +252,8 @@ Patch221: 0221.patch
Patch222: 0222.patch Patch222: 0222.patch
Patch223: 0223.patch Patch223: 0223.patch
Patch224: 0224.patch Patch224: 0224.patch
Patch225: 0225.patch
Patch226: 0226.patch
Source1: https://www.gnu.org/licenses/lgpl-2.1.txt Source1: https://www.gnu.org/licenses/lgpl-2.1.txt
@ -590,6 +592,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
%{dracutlibdir}/modules.d/91crypt-loop %{dracutlibdir}/modules.d/91crypt-loop
%{dracutlibdir}/modules.d/95debug %{dracutlibdir}/modules.d/95debug
%{dracutlibdir}/modules.d/95fstab-sys %{dracutlibdir}/modules.d/95fstab-sys
%{dracutlibdir}/modules.d/95hwdb
%{dracutlibdir}/modules.d/95lunmask %{dracutlibdir}/modules.d/95lunmask
%{dracutlibdir}/modules.d/95nvmf %{dracutlibdir}/modules.d/95nvmf
%{dracutlibdir}/modules.d/95resume %{dracutlibdir}/modules.d/95resume
@ -706,6 +709,10 @@ echo '# Since rhel-8.3 dracut moved to use NetworkManager
add_dracutmodules+=" network-legacy "' > /etc/dracut.conf.d/50-network-legacy.conf add_dracutmodules+=" network-legacy "' > /etc/dracut.conf.d/50-network-legacy.conf
%changelog %changelog
* Tue Jul 25 2023 Pavel Valena <pvalena@redhat.com> - 049-227.git20230725
- fix(rngd): install system service file
- feat(hwdb): install hwdb on demand when module is needed
* Wed Jun 14 2023 Pavel Valena <pvalena@redhat.com> - 049-225.git20230614 * Wed Jun 14 2023 Pavel Valena <pvalena@redhat.com> - 049-225.git20230614
- fix(kernel-network-modules): allow specifying empty hostonly-nics - fix(kernel-network-modules): allow specifying empty hostonly-nics
Resolves: #2148318 Resolves: #2148318