From 757ae1fb693ccc556e4d8af1b858d476e53dede8 Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Wed, 21 Mar 2012 09:17:59 -0400 Subject: natively support locale.conf and vconsole.conf This is implemented for the keymap and consolefont hooks. It's done in such a way that vconsole.conf and locale.conf will override and supplement rc.conf. Implements FS#29022. Signed-off-by: Dave Reisner --- install/keymap | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'install/keymap') diff --git a/install/keymap b/install/keymap index 51bb1a2..fe5e459 100644 --- a/install/keymap +++ b/install/keymap @@ -4,13 +4,25 @@ build() { # subshell to avoid namespace pollution ( - . "$BASEDIR/etc/rc.conf" + l=$LANG + unset LANG + + for cfg in etc/{rc,vconsole,locale}.conf; do + [[ -s $BASEDIR/$cfg ]] && . "$BASEDIR/$cfg" + done + + [[ $LANG ]] && LOCALE=$LANG + LANG=$l + if [[ $KEYMAP ]]; then - if [[ $LOCALE = *[Uu][Tt][Ff]-8 ]]; then + if [[ $LOCALE = *[Uu][Tt][Ff]?(-)8 ]]; then touch "$BUILDROOT/keymap.utf8" uc=-u fi loadkeys -q $uc $KEYMAP -b > "$BUILDROOT/keymap.bin" + else + warning "keymap: hook specified, but no KEYMAP found in configuration" + return 1 fi ) @@ -19,7 +31,8 @@ build() { help() { cat <