From bf7b98936386ff88c0774589e40352824728ae96 Mon Sep 17 00:00:00 2001 From: Thomas Bächler Date: Sun, 7 Feb 2010 22:06:55 +0100 Subject: Do not try to load the keymap if no KEYMAP option is set in rc.conf Fixes FS#18214 --- hooks/keymap | 22 ++++++++++++---------- install/keymap | 24 +++++++++++++----------- 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 () -- cgit v1.2.3-24-g4f1b