summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Bächler <thomas@archlinux.org>2010-02-07 22:06:55 +0100
committerThomas Bächler <thomas@archlinux.org>2010-02-07 22:06:55 +0100
commitbf7b98936386ff88c0774589e40352824728ae96 (patch)
treedc5370e2f685f1a5170c7d297d5b104f15c4aa35
parentba97db07a5bcbc5c0db2241a2f8ac4117d05c8f3 (diff)
downloadmkinitcpio-bf7b98936386ff88c0774589e40352824728ae96.tar.gz
mkinitcpio-bf7b98936386ff88c0774589e40352824728ae96.tar.xz
Do not try to load the keymap if no KEYMAP option is set in rc.conf
Fixes FS#18214
-rw-r--r--hooks/keymap22
-rw-r--r--install/keymap24
2 files changed, 25 insertions, 21 deletions
diff --git a/hooks/keymap b/hooks/keymap
index fd53f5f..9557c26 100644
--- a/hooks/keymap
+++ b/hooks/keymap
@@ -1,15 +1,17 @@
# vim: set ft=sh:
run_hook ()
{
- msg -n ":: Loading keymap..."
- . /keymap.utf8
- if [ "${UTF8}" = "yes" ]; then
- /usr/bin/kbd_mode -u -C /dev/console
- printf "\033%%G" >> /dev/console
- else
- /usr/bin/kbd_mode -a -C /dev/console
- printf "\033%%@" >> /dev/console
+ if [ -e /keymap.bin ]; then
+ msg -n ":: Loading keymap..."
+ . /keymap.utf8
+ if [ "${UTF8}" = "yes" ]; then
+ /usr/bin/kbd_mode -u -C /dev/console
+ printf "\033%%G" >> /dev/console
+ else
+ /usr/bin/kbd_mode -a -C /dev/console
+ printf "\033%%@" >> /dev/console
+ fi
+ /sbin/loadkmap < /keymap.bin
+ msg "done."
fi
- /sbin/loadkmap < /keymap.bin
- msg "done."
}
diff --git a/install/keymap b/install/keymap
index 0ddd0e5..65990dd 100644
--- a/install/keymap
+++ b/install/keymap
@@ -6,18 +6,20 @@ install ()
BINARIES=""
FILES=""
SCRIPT="keymap"
- KEYMAP_FILE="$(mktemp ${TMPDIR}/keymap.XXXXXX)"
- UTF8_FILE="$(mktemp ${TMPDIR}/keymap.XXXXXX)"
- eval "$(grep -e "^LOCALE=" -e "^KEYMAP=" -e "^CONSOLEFONT=" -e "^CONSOLEMAP=" /etc/rc.conf)"
- if [ -n "$(echo ${LOCALE} | grep -i utf)" ]; then
- echo "UTF8='yes'" > ${UTF8_FILE}
- /bin/loadkeys -q -u $KEYMAP -b > ${KEYMAP_FILE}
- else
- echo "UTF8='no'" > ${UTF8_FILE}
- /bin/loadkeys -q $KEYMAP -b > ${KEYMAP_FILE}
+ eval "$(grep -e "^LOCALE=" -e "^KEYMAP=" /etc/rc.conf)"
+ if [ -n "$KEYMAP" ]; then
+ KEYMAP_FILE="$(mktemp ${TMPDIR}/keymap.XXXXXX)"
+ UTF8_FILE="$(mktemp ${TMPDIR}/keymap.XXXXXX)"
+ if [ -n "$(echo ${LOCALE} | grep -i utf)" ]; then
+ echo "UTF8='yes'" > ${UTF8_FILE}
+ /bin/loadkeys -q -u $KEYMAP -b > ${KEYMAP_FILE}
+ else
+ echo "UTF8='no'" > ${UTF8_FILE}
+ /bin/loadkeys -q $KEYMAP -b > ${KEYMAP_FILE}
+ fi
+ add_file ${KEYMAP_FILE} /keymap.bin
+ add_file ${UTF8_FILE} /keymap.utf8
fi
- add_file ${KEYMAP_FILE} /keymap.bin
- add_file ${UTF8_FILE} /keymap.utf8
}
help ()