56 lines
981 B
Plaintext
56 lines
981 B
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
PREREQ=""
|
||
|
|
||
|
prereqs()
|
||
|
{
|
||
|
echo "$PREREQ"
|
||
|
}
|
||
|
|
||
|
case $1 in
|
||
|
# get pre-requisites
|
||
|
prereqs)
|
||
|
prereqs
|
||
|
exit 0
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
# Hook to load keymaps into the initramfs if requested by KEYMAP="y"
|
||
|
if [ "$KEYMAP" != "y" ] && [ "$KEYMAP" != "Y" ]; then
|
||
|
exit 0
|
||
|
fi
|
||
|
|
||
|
# Step 1 - Basic tools
|
||
|
if [ ! -x /bin/loadkeys ] || [ ! -r /etc/console/boottime.kmap.gz ]; then
|
||
|
exit 0
|
||
|
fi
|
||
|
|
||
|
. /usr/share/initramfs-tools/hook-functions
|
||
|
copy_exec /bin/loadkeys /bin
|
||
|
cp /etc/console/boottime.kmap.gz ${DESTDIR}/etc/
|
||
|
|
||
|
# Step 2 - Check for UTF8 console
|
||
|
if [ ! -x /usr/bin/kbd_mode ]; then
|
||
|
exit 0
|
||
|
fi
|
||
|
|
||
|
if [ -r /etc/environment ]; then
|
||
|
env="/etc/environment"
|
||
|
elif [ -r /etc/default/locale ]; then
|
||
|
env="/etc/default/locale"
|
||
|
else
|
||
|
exit 0
|
||
|
fi
|
||
|
|
||
|
for var in LANG LC_ALL LC_CTYPE; do
|
||
|
value=$(egrep "^[^#]*${var}=" $env | tail -n1 | cut -d= -f2)
|
||
|
eval $var=$value
|
||
|
done
|
||
|
|
||
|
charmap=$(LANG=$LANG LC_ALL=$LC_ALL LC_CTYPE=$LC_CTYPE locale charmap)
|
||
|
if [ "$charmap" = "UTF-8" ]; then
|
||
|
copy_exec /usr/bin/kbd_mode /bin
|
||
|
fi
|
||
|
exit 0
|
||
|
|