commit: c3f71cf8081924f8cb0a4f2d2a2ba630fe9056a1
Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 5 14:27:31 2022 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Tue Jul 5 14:30:21 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3f71cf8
sys-kernel/dracut: fix issue with keymaps
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
.../{dracut-057.ebuild => dracut-057-r1.ebuild} | 1 +
sys-kernel/dracut/files/057-i18n-keymaps.patch | 28 ++++++++++++++++++++++
2 files changed, 29 insertions(+)
diff --git a/sys-kernel/dracut/dracut-057.ebuild
b/sys-kernel/dracut/dracut-057-r1.ebuild
similarity index 99%
rename from sys-kernel/dracut/dracut-057.ebuild
rename to sys-kernel/dracut/dracut-057-r1.ebuild
index 2e0def4acdca..fd44dcda247d 100644
--- a/sys-kernel/dracut/dracut-057.ebuild
+++ b/sys-kernel/dracut/dracut-057-r1.ebuild
@@ -63,6 +63,7 @@ QA_MULTILIB_PATHS="usr/lib/dracut/.*"
PATCHES=(
"${FILESDIR}"/gentoo-ldconfig-paths-r1.patch
"${FILESDIR}"/057-virtiofs-split-usr.patch
+ "${FILESDIR}"/057-i18n-keymaps.patch
)
src_configure() {
diff --git a/sys-kernel/dracut/files/057-i18n-keymaps.patch
b/sys-kernel/dracut/files/057-i18n-keymaps.patch
new file mode 100644
index 000000000000..77ac6078fb07
--- /dev/null
+++ b/sys-kernel/dracut/files/057-i18n-keymaps.patch
@@ -0,0 +1,28 @@
+From bef99c5120809cc5603e51dcc1987767205f241f Mon Sep 17 00:00:00 2001
+From: Antonio Alvarez Feijoo <[email protected]>
+Date: Mon, 27 Jun 2022 13:19:41 +0200
+Subject: [PATCH] fix(i18n): add required includes for keymaps
+
+Commit https://github.com/dracutdevs/dracut/commit/f3441cc7 removed shell
+options but didn't adapt all the code that requires nullglob and globstar.
+This caused the initrd to be generated without the required includes for
+keymaps.
+---
+ modules.d/10i18n/module-setup.sh | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/modules.d/10i18n/module-setup.sh
b/modules.d/10i18n/module-setup.sh
+index 35bda36fb..6fd5fd433 100755
+--- a/modules.d/10i18n/module-setup.sh
++++ b/modules.d/10i18n/module-setup.sh
+@@ -63,7 +63,9 @@ install() {
+ readarray -t INCLUDES < <("$CMD" '^include ' "$MAP" | while read
-r _ a _ || [ -n "$a" ]; do echo "${a//\"/}"; done)
+
+ for INCL in "${INCLUDES[@]}"; do
+- for FN in "$dracutsysrootdir""${kbddir}"/keymaps/**/"$INCL"*;
do
++ local -a FNS
++ mapfile -t -d '' FNS < <(find
"${dracutsysrootdir}${kbddir}"/keymaps/ -type f -name "${INCL}*" -print0)
++ for FN in "${FNS[@]}"; do
+ [[ -f $FN ]] || continue
+ [[ -v KEYMAPS["$FN"] ]] || findkeymap "$FN"
+ done