summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Ammerlaan <andrewammerlaan@gentoo.org>2024-07-16 18:51:56 +0200
committerAndrew Ammerlaan <andrewammerlaan@gentoo.org>2024-07-16 18:51:56 +0200
commit286138c22e437f22d1ed42726c4988745d8cf5cf (patch)
tree11b7d809a17f51699070ef80a137b857429c606a /sys-kernel/dracut
parentkde-frameworks/kio: drop 6.4.0 (diff)
downloadgentoo-286138c22e437f22d1ed42726c4988745d8cf5cf.tar.gz
gentoo-286138c22e437f22d1ed42726c4988745d8cf5cf.tar.bz2
gentoo-286138c22e437f22d1ed42726c4988745d8cf5cf.zip
sys-kernel/dracut: backport fix for systemd 256
Closes: https://bugs.gentoo.org/935548 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'sys-kernel/dracut')
-rw-r--r--sys-kernel/dracut/dracut-103-r1.ebuild (renamed from sys-kernel/dracut/dracut-103.ebuild)2
-rw-r--r--sys-kernel/dracut/files/dracut-103-systemd-udev-256-kmod.patch41
2 files changed, 43 insertions, 0 deletions
diff --git a/sys-kernel/dracut/dracut-103.ebuild b/sys-kernel/dracut/dracut-103-r1.ebuild
index 02a959fa286d..7b5110a6f58d 100644
--- a/sys-kernel/dracut/dracut-103.ebuild
+++ b/sys-kernel/dracut/dracut-103-r1.ebuild
@@ -65,6 +65,8 @@ PATCHES=(
"${FILESDIR}"/gentoo-ldconfig-paths-r1.patch
# Gentoo specific acct-user and acct-group conf adjustments
"${FILESDIR}"/${PN}-103-acct-user-group-gentoo.patch
+ # https://github.com/dracut-ng/dracut-ng/pull/507
+ "${FILESDIR}"/${PN}-103-systemd-udev-256-kmod.patch
)
src_configure() {
diff --git a/sys-kernel/dracut/files/dracut-103-systemd-udev-256-kmod.patch b/sys-kernel/dracut/files/dracut-103-systemd-udev-256-kmod.patch
new file mode 100644
index 000000000000..7a1fc1c8daf3
--- /dev/null
+++ b/sys-kernel/dracut/files/dracut-103-systemd-udev-256-kmod.patch
@@ -0,0 +1,41 @@
+From e16195f28669264227c169d45107ea95b83d8f48 Mon Sep 17 00:00:00 2001
+From: Alexander Tsoy <alexander@tsoy.me>
+Date: Tue, 16 Jul 2024 08:48:54 +0300
+Subject: [PATCH] fix(systemd): move installation of libkmod to udev-rules
+ module
+
+libkmod library should be installed even if systemd module is
+omitted, so move its installation to udev-rules module.
+---
+ modules.d/00systemd/module-setup.sh | 1 -
+ modules.d/95udev-rules/module-setup.sh | 6 +++++-
+ 2 files changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh
+index ce7bb520c..e4fb9a586 100755
+--- a/modules.d/00systemd/module-setup.sh
++++ b/modules.d/00systemd/module-setup.sh
+@@ -171,6 +171,5 @@ EOF
+ _arch=${DRACUT_ARCH:-$(uname -m)}
+ inst_libdir_file \
+ {"tls/$_arch/",tls/,"$_arch/",}"libgcrypt.so*" \
+- {"tls/$_arch/",tls/,"$_arch/",}"libkmod.so*" \
+ {"tls/$_arch/",tls/,"$_arch/",}"libnss_*"
+ }
+diff --git a/modules.d/95udev-rules/module-setup.sh b/modules.d/95udev-rules/module-setup.sh
+index d82ed5eb9..6078751f6 100755
+--- a/modules.d/95udev-rules/module-setup.sh
++++ b/modules.d/95udev-rules/module-setup.sh
+@@ -93,7 +93,11 @@ install() {
+ "${udevdir}"/usb_id \
+ "${udevdir}"/v4l_id
+
+- inst_libdir_file "libnss_files*"
++ # Install required libraries.
++ _arch=${DRACUT_ARCH:-$(uname -m)}
++ inst_libdir_file \
++ {"tls/$_arch/",tls/,"$_arch/",}"libkmod.so*" \
++ {"tls/$_arch/",tls/,"$_arch/",}"libnss_files*"
+
+ # Install the hosts local user configurations if enabled.
+ if [[ $hostonly ]]; then