---- kbd-1.15/src/unicode_start.orig 2008-10-23 21:03:59.000000000 +0200
-+++ kbd-1.15/src/unicode_start 2008-12-05 20:17:24.728295331 +0100
-@@ -55,7 +55,12 @@
+--- kbd-2.5.1/src/unicode_start.orig 2022-08-20 19:32:56.350906358 +0200
++++ kbd-2.5.1/src/unicode_start 2022-08-20 19:58:04.852734102 +0200
+@@ -11,6 +11,14 @@ case "$TTY" in
+ ;;
+ esac
+
++DUMPKEYS_OPT=
++if [ -r /etc/sysconfig/console ]; then
++ . /etc/sysconfig/console
++ if [ -n "$KEYTABLE_CHARSET" ]; then
++ DUMPKEYS_OPT="-c$KEYTABLE_CHARSET"
++ fi
++fi
++
+ # Enables Unicode processing in the current console.
+ #
+ # 1. The input side: the keyboard driver.
+@@ -49,13 +57,13 @@ if [ "$uid" = 0 ]; then
+ mkdir -- "$HOME/.kbd"
+
+ [ ! -w "$HOME/.kbd" ] ||
+- dumpkeys > "$HOME/.kbd/.keymap_sv"
++ dumpkeys $DUMPKEYS_OPT > "$HOME/.kbd/.keymap_sv"
+ fi
+
# redirect stderr and stdout of loadkeys to /dev/null to avoid the confusing
# "plus before udiaeresis ignored" warnings.
- dumpkeys | loadkeys --unicode > /dev/null 2>&1
-+ # PLD: disabled because it breaks non-iso-8859-1 keymaps
-+ # instead use manually:
-+ # loadkeys --unicode <keymap>
-+ # or
-+ # dumpkeys -c <charset> | loadkeys --unicode
-+ #dumpkeys | loadkeys --unicode > /dev/null 2>&1
++ dumpkeys $DUMPKEYS_OPT | loadkeys --unicode > /dev/null 2>&1
fi
# 2. The output side: the console screen.