← Back to team overview

mactel-support team mailing list archive

[Bug 327963] Re: Error activating XKB configuration with MacBook keyboard model

 

> Getting a better error message for the Gnome UI is a GNOME issue
obviously, not xkeyboard-config's duty, and really ought to be filed
separately against the appropriate GNOME component.

I agree, just filed bug #328980 for this. It's a bit tricky, as it
involves multiple packages.

> As to the secondary bug of the error activating XKB, that's a well
known issue so will dupe to that. Undupe (and clarify) if you'd like
something differently done.

I had bug #67188 considered before filing mine, but the mention of
editing xorg.conf in the headline didn't seem to apply to me at all, so
I filed a new one. Now that I've read all the comments in #67188, I get
the feeling that it is a large collection of bugs with quite different
reasons, but all looking the same due to missing error messages. Some,
like bug #67188 comment #38, are the same as this one here, while others
have different causes, for which I don't know the reason. For lack of
information, I expect #67188 to remain open for quite a long time.

In contrast to this, the scope of what I request for here is much clearer, and a fix is possible. Therefore I'd undupe and ask that you
 1. make macintosh_vndr/de(mac_nodeadkeys) an alias for macintosh_vndr/de(nodeadkeys)
 2. Do the same for the deadkeys variant
 3. Do the same for languages other than "de" with similar configuration
The attached patch tries to follow this approach. I grepped fro '"mac' in symbols/* and then made sure the same variants were included as aliases in symbols/macintosh_vndr/*. Not tested yet.

You might, on the other hand, be of the opinion that having different
names for the same symbols is not the way to go, and that instead of
providing these aliases at the xkb-data level, the user interface should
prevent the user from selecting such combinations. In that case, another
bug for the Gnome control-center would be in order, while you might mark
this as invalid for xkeyboard-config.

** Attachment added: "Add aliases for mac layouts"
   http://launchpadlibrarian.net/22577721/bug327963a.diff

** This bug is no longer a duplicate of bug 67188
   "Error activating XKB configuration." - Requires manual xorg.conf editing

-- 
Error activating XKB configuration with MacBook keyboard model
https://bugs.launchpad.net/bugs/327963
You received this bug notification because you are a member of Mactel
Support, which is the registrant for Mactel Support.

Status in Mactel Support: New
Status in “xkeyboard-config” source package in Ubuntu: New

Bug description:
Binary package hint: xkb-data

I've got Intrepid installed on a MacBookPro5,1 with German keyboard layout. I started configuring the keyboads using gnome-keyboard-properties as available from the settings menu. I first selected the layout "Germany Macintosh, eliminate dead keys" and followed that up with changing the model to "MacBook/MacBook Pro (Intl)". This resulted in an error message "Error activating XKB configuration" which asked me to prvide this additional information:

$ xprop -root | grep XKB
_XKB_RULES_NAMES_BACKUP(STRING) = "evdev", "pc105", "de", "mac_nodeadkeys", ""
_XKB_RULES_NAMES(STRING) = "evdev", "pc105", "de", "mac_nodeadkeys", ""

$ gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd
 layouts = []
 model = macbook79
 options = []

As the error message from the dialog contains little actual information, I straced gnome-settings-daemon and identified a failing invocation of xkbcomp as the likely cause of the issue. By renaming /usr/bin/xkbcomp and replacing it with a wrapper script, I managed to get my hands on its input file and reproduce the issue:

$ cat /tmp/fileJPMGgA 
xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwertz)" };
        xkb_types     { include "complete+numpad(mac)" };
        xkb_compat    { include "complete" };
        xkb_symbols   { include "pc+macintosh_vndr/de(mac_nodeadkeys)+inet(evdev)" };
        xkb_geometry  { include "macintosh(macbook79)" };
};

$ xkbcomp -I -I/usr/share/X11/xkb -xkm /tmp/fileJPMGgA /tmp/fileNtKqh7
Error:            No Symbols named "mac_nodeadkeys" in the include file "macintosh_vndr/de"
                  Exiting
                  Abandoning symbols file "(null)"

That looks like a much better error description. Looking at /usr/share/X11/xkb/symbols/macintosh_vndr/de I see that indeed it doesn't contain a description of "mac_nodeadkeys". Neither does it include /usr/share/X11/xkb/symbols/de where the mac_nodeadkeys would have been defined. Changing the layout to simple "Germany Eliminate dead keys", I could use the MacBook keyboard model all right, just as mac_nodeadkeys layout worked all right with a Generic keyboard model. However, both combinations don't fully match the key labels.

My first concern is that for an obvious choice like a MacBook keyboard model with a mac keyboard layout, no obscure error messages should be generated by the Gnome UI. Secondly, it would be nice to actually get Mac keyboard layout, in order to stay consistent with OS X and friends.