--- mcore-src/trunk/mcore-tools/daemon/client/include/input.client.class 2013/04/17 14:15:55 2039 +++ mcore-src/trunk/mcore-tools/daemon/client/include/input.client.class 2013/04/17 14:17:26 2040 @@ -53,7 +53,7 @@ then keymap=$(x11runas "setxkbmap -query" | grep layout | awk '{print $2}') else - keymap=$(grep "Option.*XkbLayout" ${MROOT}/etc/X11/xorg.conf.d/25-layout.conf \ + keymap=$(grep "Option.*XkbLayout" ${MROOT}/etc/X11/xorg.conf.d/00-keyboard.conf \ | sed -e 's:\"::' -e 's:.*XkbLayout\(.*\):\1:' -e 's:[\ \t]::g') fi rvecho "${keymap}" @@ -63,17 +63,22 @@ set_input_keymap() { local value="$1" - local CONFIG="${MROOT}/etc/X11/xorg.conf.d/25-layout.conf" + local CONFIG="${MROOT}/etc/X11/xorg.conf.d/00-keyboard.conf" [[ -z ${value} ]] && help_input_keymap && return 1 - clearconfig - - addconfig 'Section "InputClass"' - addconfig ' Identifier "keyboard layout"' - addconfig ' MatchIsKeyboard "on"' - addconfig " Option \"XkbLayout\" \"${value}\"" - addconfig 'EndSection' + # systemd support + if [ -x $(type -P localectl) ] + then + localectl set-x11-keymap "${value}" + else + clearconfig + addconfig 'Section "InputClass"' + addconfig ' Identifier "keyboard layout"' + addconfig ' MatchIsKeyboard "on"' + addconfig " Option \"XkbLayout\" \"${value}\"" + addconfig 'EndSection' + fi if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]] then