Comment 69 for bug 214786

Revision history for this message
Felix Dreissig (f30) wrote :

Before I speculate on more details about this problem, let me add that pdecat's persistent fix works fine but requires an additional `update-initramfs -u -k all` for the option to be set correctly.

I own two Apple aluminium keyboards of different generations (German layout) , one MacBook Air and one old Early-2008 white MacBook. While the laptops seem to work fine for quite some time now, both alu keyboards experienced this issue in different Ubuntu releases; at least one of them always suffers from it up until today. (Count this as confirmed for Quantal.)

In the past, I used the xmodmap fix from above, but that didn't work out now because of Bug #1016996. Since I didn't know about pdecat's fix at first, I dived a bit into the shady areas of XKB configuration and found out that XKB offers options called "apple:badmap" and 'apple:goodmap' targeting the exact same problem. Those are listed in "/usr/share/X11/xkb/rules/base" and `[…]/evdev`, but not in the respective `.lst` and `.xml` files and therefore don't show up in the GNOME keyboard options dialog.
When it comes to persisent configuration, I didn't succeed in settings the options via `xorg.conf` as described by [1] and [2]. Running `setxkbmap […]` at session start through `gnome-session-properties` works in principal, but seems to conflict with settings from the GNOME keyboard options. (Only one of them will be set due to what seems to be some kind of race-condition.) What worked for me was running the command via `.profile`, but just then I came across pdecat's much simpler and system-wide approach :-).

As there seem to be different generations of Apple keyboards with different behaviours out there, I believe that there won't be a general fix for this problem.
What should however be done in my opinion, is offering a simple way to get the right configuration. I think the GNOME keyboard options are the right place to do that, and therefore the "apple:badmap" option should be added to the `.lst` and `.xml` files like described above. That's why I'm adding xkeyboard-config to the affected packages.

[1] http://wiki.debian.org/MacBook#X11_.28X_Window.29
[2] https://wiki.archlinux.org/index.php/Apple_Keyboard#.3C_and_.3E_have_changed_place_with_.C2.A7_and_.C2.BD