commit:     286138c22e437f22d1ed42726c4988745d8cf5cf
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 16 16:51:56 2024 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Tue Jul 16 16:51:56 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=286138c2

sys-kernel/dracut: backport fix for systemd 256

Closes: https://bugs.gentoo.org/935548
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 .../{dracut-103.ebuild => dracut-103-r1.ebuild}    |  2 ++
 .../files/dracut-103-systemd-udev-256-kmod.patch   | 41 ++++++++++++++++++++++
 2 files changed, 43 insertions(+)

diff --git a/sys-kernel/dracut/dracut-103.ebuild 
b/sys-kernel/dracut/dracut-103-r1.ebuild
similarity index 97%
rename from sys-kernel/dracut/dracut-103.ebuild
rename to 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 <[email protected]>
+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

Reply via email to