Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Xorg keyboard layout not working anymore after upgrade
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
chojin
n00b
n00b


Joined: 26 Jun 2005
Posts: 42

PostPosted: Sun May 02, 2010 10:17 pm    Post subject: Xorg keyboard layout not working anymore after upgrade Reply with quote

I have 2 keyboards connected to my PC: one Logitech diNovo bluetooth keyboard (using a logitech bluetooth USB dongle) and a standard AT PS/2 keyboard. I have configured a belgian (azerty) keyboard layout using HAL.
But after a recent emerge world Xorg was updated to 1.7.6 and my keyboard layout of the diNovo keyboard in X is suddenly qwerty and I fail to set it back to belgian. The PS/2 keyboard however is still using a belgian keymap.

The xorg startup logging states this about my input devices:
Code:
(II) config/hal: Adding input device AT Translated Set 2 keyboard
(II) LoadModule: "evdev"
(II) Loading /usr/lib64/xorg/modules/input/evdev_drv.so
(II) Module evdev: vendor="X.Org Foundation"
        compiled for 1.7.6, module version = 2.3.2
        Module class: X.Org XInput Driver
        ABI class: X.Org XInput driver, version 7.0
(**) AT Translated Set 2 keyboard: always reports core events
(**) AT Translated Set 2 keyboard: Device: "/dev/input/event3"
(II) AT Translated Set 2 keyboard: Found keys
(II) AT Translated Set 2 keyboard: Configuring as keyboard
(II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD)
(**) Option "xkb_rules" "evdev"
(**) Option "xkb_model" "evdev"
(**) Option "xkb_layout" "be"
(**) Option "xkb_options" "terminate:ctrl_alt_bksp"
(II) config/hal: Adding input device Logitech Logitech BT Mini-Receiver
(**) Logitech Logitech BT Mini-Receiver: always reports core events
(**) Logitech Logitech BT Mini-Receiver: Device: "/dev/input/event5"
(II) Logitech Logitech BT Mini-Receiver: Found 16 mouse buttons
(II) Logitech Logitech BT Mini-Receiver: Found scroll wheel(s)
(II) Logitech Logitech BT Mini-Receiver: Found relative axes
(II) Logitech Logitech BT Mini-Receiver: Found x and y relative axes
(II) Logitech Logitech BT Mini-Receiver: Found absolute axes
(II) Logitech Logitech BT Mini-Receiver: Found keys
(II) Logitech Logitech BT Mini-Receiver: Configuring as mouse
(II) Logitech Logitech BT Mini-Receiver: Configuring as keyboard
(**) Logitech Logitech BT Mini-Receiver: YAxisMapping: buttons 4 and 5
(**) Logitech Logitech BT Mini-Receiver: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
(II) XINPUT: Adding extended input device "Logitech Logitech BT Mini-Receiver" (type: KEYBOARD)
(**) Option "xkb_rules" "evdev"
(**) Option "xkb_model" "evdev"
(**) Option "xkb_layout" "be"
(**) Option "xkb_options" "terminate:ctrl_alt_bksp"
(**) Logitech Logitech BT Mini-Receiver: (accel) keeping acceleration scheme 1
(**) Logitech Logitech BT Mini-Receiver: (accel) acceleration profile 0
(II) Logitech Logitech BT Mini-Receiver: initialized for relative axes.
(WW) Logitech Logitech BT Mini-Receiver: ignoring absolute axes.
(II) config/hal: Adding input device Logitech Logitech BT Mini-Receiver
(**) Logitech Logitech BT Mini-Receiver: always reports core events
(**) Logitech Logitech BT Mini-Receiver: Device: "/dev/input/event4"
(II) Logitech Logitech BT Mini-Receiver: Found keys
(II) Logitech Logitech BT Mini-Receiver: Configuring as keyboard
(II) XINPUT: Adding extended input device "Logitech Logitech BT Mini-Receiver" (type: KEYBOARD)
(**) Option "xkb_rules" "evdev"
(**) Option "xkb_model" "evdev"
(**) Option "xkb_layout" "be"
(**) Option "xkb_options" "terminate:ctrl_alt_bksp"
(II) config/hal: Adding input device Power Button
(**) Power Button: always reports core events
(**) Power Button: Device: "/dev/input/event1"
(II) Power Button: Found keys
(II) Power Button: Configuring as keyboard
(II) XINPUT: Adding extended input device "Power Button" (type: KEYBOARD)
(**) Option "xkb_rules" "evdev"
(**) Option "xkb_model" "evdev"
(**) Option "xkb_layout" "be"
(**) Option "xkb_options" "terminate:ctrl_alt_bksp"
(II) config/hal: Adding input device Power Button
(**) Power Button: always reports core events
(**) Power Button: Device: "/dev/input/event0"
(II) Power Button: Found keys
(II) Power Button: Configuring as keyboard
(II) XINPUT: Adding extended input device "Power Button" (type: KEYBOARD)
(**) Option "xkb_rules" "evdev"
(**) Option "xkb_model" "evdev"
(**) Option "xkb_layout" "be"
(**) Option "xkb_options" "terminate:ctrl_alt_bksp"
(II) config/hal: Adding input device Logitech diNovo Keyboard
(**) Logitech diNovo Keyboard: always reports core events
(**) Logitech diNovo Keyboard: Device: "/dev/input/event6"
(II) Logitech diNovo Keyboard: Found 1 mouse buttons
(II) Logitech diNovo Keyboard: Found scroll wheel(s)
(II) Logitech diNovo Keyboard: Found relative axes
(II) Logitech diNovo Keyboard: Found absolute axes
(II) Logitech diNovo Keyboard: Found keys
(II) Logitech diNovo Keyboard: Configuring as mouse
(II) Logitech diNovo Keyboard: Configuring as keyboard
(**) Logitech diNovo Keyboard: YAxisMapping: buttons 4 and 5
(**) Logitech diNovo Keyboard: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
(II) XINPUT: Adding extended input device "Logitech diNovo Keyboard" (type: KEYBOARD)
(**) Option "xkb_rules" "evdev"
(**) Option "xkb_model" "evdev"
(**) Option "xkb_layout" "be"
(**) Option "xkb_options" "terminate:ctrl_alt_bksp"
(EE) Logitech diNovo Keyboard: failed to initialize for relative axes.
(**) Logitech diNovo Keyboard: (accel) keeping acceleration scheme 1
(**) Logitech diNovo Keyboard: (accel) acceleration profile 0
(II) Logitech diNovo Keyboard: initialized for absolute axes.
(II) config/hal: Adding input device Logitech MX1000 mouse
(**) Logitech MX1000 mouse: always reports core events
(**) Logitech MX1000 mouse: Device: "/dev/input/event7"
(II) Logitech MX1000 mouse: Found 20 mouse buttons
(II) Logitech MX1000 mouse: Found scroll wheel(s)
(II) Logitech MX1000 mouse: Found relative axes
(II) Logitech MX1000 mouse: Found x and y relative axes
(II) Logitech MX1000 mouse: Configuring as mouse
(**) Logitech MX1000 mouse: YAxisMapping: buttons 4 and 5
(**) Logitech MX1000 mouse: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
(II) XINPUT: Adding extended input device "Logitech MX1000 mouse" (type: MOUSE)
(**) Logitech MX1000 mouse: (accel) keeping acceleration scheme 1
(**) Logitech MX1000 mouse: (accel) acceleration profile 0
(II) Logitech MX1000 mouse: initialized for relative axes.


/etc/X11/xorg.conf has no keyboard or layout definitions

As you can see, for the diNovo keyboard it states: Option "xkb_layout" "be" as it does for the standard AT keyboard. But it doesn't seem to have any effect for the diNovo keyboard anymore like it still does for the AT keyboard and like it did before the update. There was also no change in the configuration.

Here is my HAL configuration:
/etc/hal/fdi/policy/10-input-policy.fdi:
Code:
<?xml version="1.0" encoding="UTF-8"?>

<deviceinfo version="0.2">

  <device>
    <match key="info.capabilities" contains="input">
      <match key="info.capabilities" contains="button">
        <match key="info.addons.singleton" contains_not="hald-addon-input">
          <append key="info.addons.singleton" type="strlist">hald-addon-input</append>
        </match>
      </match>
      <match key="info.capabilities" contains="input.keys">
        <match key="info.addons.singleton" contains_not="hald-addon-input">
          <append key="info.addons.singleton" type="strlist">hald-addon-input</append>
        </match>
        <match key="info.capabilities" contains_not="button">
          <append key="info.capabilities" type="strlist">button</append>
        </match>
      </match>
    </match>
  </device>
</deviceinfo>


/etc/hal/fdi/policy/10-keymap.fdi:
Code:
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<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.keys">
      <merge key="input.xkb.rules" type="string">base</merge>

      <!-- If we're using Linux, we use evdev by default (falling back to
           keyboard otherwise). -->
      <merge key="input.xkb.model" type="string">keyboard</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.xkb.model" type="string">evdev</merge>
      </match>

      <merge key="input.xkb.layout" type="string">be</merge>
      <merge key="input.xkb.variant" type="string" />
    </match>
  </device>
</deviceinfo>


/etc/hal/fdi/policy/10-x11-input.fdi:
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
  <device>

    <!-- KVM emulates a USB graphics tablet which works in absolute coordinate mode -->
    <match key="input.product" contains="QEMU USB Tablet">
       <merge key="input.x11_driver" type="string">evdev</merge>
    </match>

    <!-- FIXME: Support tablets too. -->
    <match key="info.capabilities" contains="input.mouse">
      <merge key="input.x11_driver" type="string">mouse</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.x11_driver" type="string">evdev</merge>
      </match>
    </match>

    <match key="info.capabilities" contains="input.tablet">
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.x11_driver" type="string">evdev</merge>
      </match>
    </match>

    <match key="info.capabilities" contains="input.touchpad">
      <merge key="input.x11_driver" type="string">mouse</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.x11_driver" type="string">evdev</merge>
      </match>
    </match>

    <match key="info.capabilities" contains="input.keys">
      <!-- If we're using Linux, we use evdev by default (falling back to
           keyboard otherwise). -->
      <merge key="input.x11_driver" type="string">keyboard</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.x11_driver" type="string">evdev</merge>
        <merge key="input.xkb.options" type="string">terminate:ctrl_alt_bksp</merge>

      </match>
    </match>
  </device>
</deviceinfo>


Can someone shed some light on this for me? as I don't understand what is going wrong? I know HAL is going to be depricated and Xorg 1.8.0 won't work with it anymore. But this is still Xorg 1.7.6, so shouldn't it still work like before?
What do I have to do to get a belgian keymapping on my diNovo keyboard again?
Back to top
View user's profile Send private message
chojin
n00b
n00b


Joined: 26 Jun 2005
Posts: 42

PostPosted: Sun May 02, 2010 10:35 pm    Post subject: Reply with quote

Correction, I just found out that as soon as I press one key on my AT PS/2 keyboard, my diNovo also switches to belgian layout.
However upon a restart of Xorg, the layout of the diNovo keyboard is switched back to qwerty.. until I press a key on the AT keyboard again...

I'm starting to think this is a bug?
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Sun May 02, 2010 10:41 pm    Post subject: Reply with quote

you can try the 2 patchs there & report if any work for your problem.
(issue looks similar)
https://bugs.gentoo.org/show_bug.cgi?id=317383
Back to top
View user's profile Send private message
chojin
n00b
n00b


Joined: 26 Jun 2005
Posts: 42

PostPosted: Tue Jun 07, 2011 9:00 pm    Post subject: Reply with quote

One year later... Those patches didn't work. And this seems to be another bug..

Meanwhile I'm running xorg-server 1.9.5 and HAL is deprecated.
But the problem still remains..

I now have
/etc/X11/xorg.conf.d/30-keyboard.conf:
Section "InputClass"
   Identifier "keyboard-all"
   Driver "evdev"
   Option "XkbLayout" "be"
   Option "XkbModel" "logidinovo"
   Option "XkbRules" "xorg"
   Option "XkbOptions" "grp:alt_shift_toggle,grp:switch,grp_led:scroll,compose:rwin,terminate:ctrl_alt_bksp"

   MatchIsKeyboard "on"
EndSection


for my keyboard configuration.

And Xorg still seems to load the keyboard layout:
/var/log/Xorg.0.log:
[    56.991] (II) config/udev: Adding input device Logitech diNovo Keyboard (/dev/input/event7)
[    56.991] (**) Logitech diNovo Keyboard: Applying InputClass "evdev keyboard catchall"
[    56.991] (**) Logitech diNovo Keyboard: Applying InputClass "keyboard-all"
[    56.991] (**) Logitech diNovo Keyboard: always reports core events
[    56.991] (**) Logitech diNovo Keyboard: Device: "/dev/input/event7"
[    56.996] (--) Logitech diNovo Keyboard: Found 1 mouse buttons
[    56.996] (--) Logitech diNovo Keyboard: Found scroll wheel(s)
[    56.996] (--) Logitech diNovo Keyboard: Found relative axes
[    56.996] (--) Logitech diNovo Keyboard: Found absolute axes
[    56.996] (--) Logitech diNovo Keyboard: Found keys
[    56.996] (II) Logitech diNovo Keyboard: Configuring as mouse
[    56.996] (II) Logitech diNovo Keyboard: Configuring as keyboard
[    56.996] (II) Logitech diNovo Keyboard: Adding scrollwheel support
[    56.996] (**) Logitech diNovo Keyboard: YAxisMapping: buttons 4 and 5
[    56.996] (**) Logitech diNovo Keyboard: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[    56.996] (II) XINPUT: Adding extended input device "Logitech diNovo Keyboard" (type: KEYBOARD)
[    56.996] (**) Option "xkb_rules" "evdev"
[    56.996] (**) Option "xkb_model" "logidinovo"
[    56.996] (**) Option "xkb_layout" "be"
[    56.996] (**) Option "xkb_options" "grp:alt_shift_toggle,grp:switch,grp_led:scroll,compose:rwin,terminate:ctrl_alt_bksp"
[    56.996] (EE) Logitech diNovo Keyboard: failed to initialize for relative axes.
[    56.996] (II) Logitech diNovo Keyboard: initialized for absolute axes.


But I still get a QWERTY layout for the bluetooth diNovo Keyboard instead of the Belgian AZERTY layout;

I also have a PS/2 AT keyboard attached, which is also detected, and has the same parameters applied due to the config:
/var/log/Xorg.0.log:
[    45.905] (II) config/udev: Adding input device AT Translated Set 2 keyboard (/dev/input/event3)
[    45.905] (**) AT Translated Set 2 keyboard: Applying InputClass "evdev keyboard catchall"
[    45.905] (**) AT Translated Set 2 keyboard: Applying InputClass "keyboard-all"
[    45.905] (**) AT Translated Set 2 keyboard: always reports core events
[    45.905] (**) AT Translated Set 2 keyboard: Device: "/dev/input/event3"
[    45.915] (--) AT Translated Set 2 keyboard: Found keys
[    45.915] (II) AT Translated Set 2 keyboard: Configuring as keyboard
[    45.915] (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD)
[    45.915] (**) Option "xkb_rules" "evdev"
[    45.915] (**) Option "xkb_model" "logidinovo"
[    45.915] (**) Option "xkb_layout" "be"
[    45.915] (**) Option "xkb_options" "grp:alt_shift_toggle,grp:switch,grp_led:scroll,compose:rwin,terminate:ctrl_alt_bksp"


And this keyboard actually has the correct AZERTY layout.. And as soon as I press one key on the AT PS/2 keyboard (for example the "a") .. My bluetooth keyboard also switches layout to AZERTY.

Seems like someone using Arch Linux is also having this problem: https://bbs.archlinux.org/viewtopic.php?pid=642344
But no usefull answer there either..
Back to top
View user's profile Send private message
kaindl
n00b
n00b


Joined: 05 Jul 2011
Posts: 1

PostPosted: Tue Jul 05, 2011 2:15 am    Post subject: Reply with quote

Hi,
I'm facing this problem also for longer than a year, but while reviewing it again today I found a dirty workaround for now:

I installed setxkbmap and put "setxkbmap -layout de" at the end (but before the "exit 0" line) of the /etc/gdm/Init/Default and now it works like a charm :)

Until now i worked around the problem by removing the hid2hci-rule for the dinovo and placed a shortcut on my Desktop to execute the hid2hci manually, when I wanted to use the Bluetooth.

I hope, this helps you..
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum