59994a9
#!/bin/sh
59994a9
#
59994a9
# Trivial egregious hack to load the console keyboard layout into XKB.
59994a9
#
59994a9
# Yes, this should really just be written in python.  If you can figure
59994a9
# out how to make hal callouts written in python _work_, then please
59994a9
# let me know.  In the meantime, we'll do this.
59994a9
59994a9
[[ -x /usr/bin/python ]] || exit 0
59994a9
[[ -x /usr/bin/hal-set-property ]] || exit 0
59994a9
59994a9
source /etc/sysconfig/keyboard >& /dev/null || exit 0
59994a9
59994a9
[[ -n "$KEYTABLE" ]] || exit 0
59994a9
59994a9
rhplquery () {
59994a9
    /usr/bin/python -c "import rhpl.keyboard_models; m = rhpl.keyboard_models.KeyboardModels().get_models(); print \"junk='%s' layout='%s' model='%s' variant='%s' options='%s'\" % tuple(m[\"$1\"])" || echo "exit 0"
59994a9
}
59994a9
59994a9
eval `rhplquery $KEYTABLE`
59994a9
59994a9
hal_set () {
59994a9
    if [[ -n "${!1}" ]]; then
59994a9
	/usr/bin/hal-set-property --direct --udi "$UDI" --key input.xkb.$1 --string "${!1}"
59994a9
    else
59994a9
	/usr/bin/hal-set-property --direct --udi "$UDI" --key input.xkb.$1 --remove
59994a9
    fi
59994a9
}
59994a9
59994a9
hal_set layout
59994a9
hal_set model
59994a9
hal_set variant
59994a9
hal_set options