- 95multipath: Pickup multipath files in /etc/multipath/conf.d (boo#1048551) * adds 0568-95multipath-Pickup-files-in-etc-multipath-conf.d.patch - 10i18n: Load all keymaps for a given locale (boo#1065058) * adds 0569-10i18n-Load-all-keymaps-for-a-given-locale.patch * adds 0570-10i18n-Fix-possible-infinite-recursion.patch OBS-URL: https://build.opensuse.org/request/show/616849 OBS-URL: https://build.opensuse.org/package/show/Base:System/dracut?expand=0&rev=351
72 lines
2.4 KiB
Diff
72 lines
2.4 KiB
Diff
From afd09c9a87ef09e2595f71fdae1d38ac00cfd071 Mon Sep 17 00:00:00 2001
|
|
From: Daniel Molkentin <dmolkentin@suse.com>
|
|
Date: Thu, 26 Oct 2017 14:59:34 +0200
|
|
Subject: [PATCH 1/2] 10i18n: Load all keymaps for a given locale
|
|
|
|
Previously, dracut would only copy the first one found. However,
|
|
with legacy maps for some locales around, there is a chance we
|
|
pick the wrong one. Pick all matching keymaps instead
|
|
|
|
Reference: boo#1065058
|
|
---
|
|
modules.d/10i18n/module-setup.sh | 35 ++++++++++++++++++++---------------
|
|
1 file changed, 20 insertions(+), 15 deletions(-)
|
|
|
|
diff --git a/modules.d/10i18n/module-setup.sh b/modules.d/10i18n/module-setup.sh
|
|
index d6aab19f..be4ada54 100755
|
|
--- a/modules.d/10i18n/module-setup.sh
|
|
+++ b/modules.d/10i18n/module-setup.sh
|
|
@@ -30,21 +30,24 @@ install() {
|
|
|
|
# This is from 10redhat-i18n.
|
|
findkeymap () {
|
|
- local MAP=$1
|
|
+ local MAPS=$1
|
|
local MAPNAME=${1%.map*}
|
|
- [[ ! -f $MAP ]] && \
|
|
- MAP=$(find ${kbddir}/keymaps -type f -name ${MAPNAME} -o -name ${MAPNAME}.map -o -name ${MAPNAME}.map.\* | head -n1)
|
|
- [[ " $KEYMAPS " = *" $MAP "* ]] && return
|
|
- KEYMAPS="$KEYMAPS $MAP"
|
|
- case $MAP in
|
|
- *.gz) cmd=zgrep;;
|
|
- *.bz2) cmd=bzgrep;;
|
|
- *) cmd=grep ;;
|
|
- esac
|
|
-
|
|
- for INCL in $($cmd "^include " $MAP | while read a a b || [ -n "$a" ]; do echo ${a//\"/}; done); do
|
|
- for FN in $(find ${kbddir}/keymaps -type f -name $INCL\*); do
|
|
- findkeymap $FN
|
|
+ local map
|
|
+ [[ ! -f $MAPS ]] && \
|
|
+ MAPS=$(find ${kbddir}/keymaps -type f -name ${MAPNAME} -o -name ${MAPNAME}.map -o -name ${MAPNAME}.map.\*)
|
|
+
|
|
+ for map in $MAPS; do
|
|
+ KEYMAPS="$KEYMAPS $map"
|
|
+ case $map in
|
|
+ *.gz) cmd=zgrep;;
|
|
+ *.bz2) cmd=bzgrep;;
|
|
+ *) cmd=grep ;;
|
|
+ esac
|
|
+
|
|
+ for INCL in $($cmd "^include " $map | while read a a b || [ -n "$a" ]; do echo ${a//\"/}; done); do
|
|
+ for FN in $(find ${kbddir}/keymaps -type f -name $INCL\*); do
|
|
+ findkeymap $FN
|
|
+ done
|
|
done
|
|
done
|
|
}
|
|
@@ -185,7 +188,9 @@ install() {
|
|
findkeymap ${map}
|
|
done
|
|
|
|
- inst_opt_decompress ${KEYMAPS}
|
|
+ for keymap in ${KEYMAPS}; do
|
|
+ inst_opt_decompress ${keymap}
|
|
+ done
|
|
|
|
inst_opt_decompress ${kbddir}/consolefonts/${DEFAULT_FONT}.*
|
|
|
|
--
|
|
2.16.3
|
|
|