В xorg-server-1.5.x, если не отключить при компиляции X-сервера, конфигурация устройств ввода
осуществляется не в xorg.conf, а через HAL. Это позволяет подключать различные клавиатуры и мышки "на лету"
и они будут работать без необходимости рестарта иксов. Но при этом, например для настройки раскладки,
возникает необходимость правки xml-конфигов HAL вместо простого и удобного файла xorg.conf. Например, чтобы реализовать настройку в xorg.conf:
Option "XkbLayout" "us,ru"
Option "XkbOptions" "grp:shift_caps_toggle,grp_led:scroll,caps:internal,compose:ralt"
Необходимо создать файл /etc/hal/fdi/policy/10-keymap.fdi следующего содержания:
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keymap">
<append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
</match>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.xkb.rules" type="string">base</merge>
<merge key="input.xkb.layout" type="string">us,ru</merge>
<merge key="input.xkb.options" type="string">grp:shift_caps_toggle,grp_led:scroll,caps:internal,compose:ralt</merge>
</match>
</device>
</deviceinfo>
Другой вариант, задействовать setxkbmap, поместив в ~/.xsessionrc строчку:
setxkbmap "us,ru" ",winkeys" "grp:caps_toggle"
URL: http://kaktyc.wordpress.com/2008/12/01/on-hal-necessity-in-xorg/ http://koct9i.livejournal.com/40935.html
Обсуждается: https://www.opennet.ru/tips/info/1860.shtml