Hello, By this message, I would like to report two bugs I encounter with keyboard detection on Laptop MacBook Pro 5,5 (purchased in Nov 2009) in the UK installed with Ubuntu 9.10 (and fully updated) on amd64 architecture. ---------------------------------------------------- Summary BUG1: An error pops up on the Desktop after each boot BUG2: The UK keyboard layout of this laptop is quite special and none of the existing option in the gnome setting panel of the keyboard allow full recognition of this layout. ---------------------------------------------------- Full description ------ BUG1: Followng the current gnome configuration of the keyboard (described in BUG2 below), the following error appears on Desktop at each startup of my Ubuntu host machine. It may be linked to same issue reported this bug https://bugs.freedesktop.org/show_bug.cgi?id=24486, but as I have a different layout (UK instead of ES), I prefer filing a new bug as solution may differ slightly. Error activating XKB configuration. It can happen under various circumstances: - a bug in libxklavier library - a bug in X server (xkbcomp, xmodmap utilities) - X server with incompatible libxkbfile implementation X server version data: The X.Org Foundation 10604000 If you report this situation as a bug, please include: - The result of xprop -root | grep XKB - The result of gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd $ sudo xprop -root | grep XKB [sudo] password for filostene: _XKB_RULES_NAMES_BACKUP(STRING) = "evdev", "pc105", "gb", "mac", "" _XKB_RULES_NAMES(STRING) = "evdev", "pc105", "gb", "mac", "" $ sudo gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd model = options = [] layouts = [] ------ BUG2: Following installation of Ubuntu, it appears that by default the specific UK keyboard of Apple MacBook pro laptop version 5,5 of Nov 2009 is not properly recognised. It also appears to me after comparing with other keyboard that Apple slightly changed the layout for that specific version of laptop (After completing this message, I will attach the keyboard layout image for you to see, remind me if I forgot to attach file :) Please note also that I have also to write in French with this keyboard so in order to match my need and the layout here is how I configured the layout in gnome: System > Preference > Keyboard then Tab "Layout" Keyboard Model: MacBook/MacBookPro (Intl) Selected Layout: United Kingdom International (with dead keys) Previously set to United Kindom Macintoch (which remain in the list of layout but unselected) I managed so far to make some of french letter with following key combinaison : ALT Right + ;: + e = é ALT Right + '" + e = ê (or SHIFT + 6 + e) ALT Right + \| + e = è (or `¬ + e) but I can't manage to type this letter http://en.wikipedia.org/wiki/%C3%87 (maybe due to my ignorance of the proper key combination, can't find it) Those combinaison while not totally working are much more complicated that the usual once met on US International Keyboard : ' + e = é ` + e = è ' + c = http://en.wikipedia.org/wiki/%C3%87 As I work as well under Debian (within a virtual machine on this Laptop hosted by Ubuntu) I did managed at some point of time under this operating system to solve some of my issue by twinking manually the defaut keyboard layout config file as follow (information below may not be totally accurate as I don't recall exaclty the process) : File manually modified (corresponding to english keyboard layout) : /usr/share/X11/xkb/symbols/gb I edited file and modified the intl part as follow to match UK keyboard layout : $ gedit /usr/share/X11/xkb/symbols/gb "... partial alphanumeric_keys xkb_symbols "intl" { // Describes the differences between a very simple en_US // keyboard and a very simple U.K. keyboard layout with // dead keys. By Phil Jones (philjones1@blueyonder.co.uk) // Includes the following keys: // dead_grave // dead_acute // dead_circumflex // dead_tilde // dead_diaeresis include "latin" name[Group1]="United Kingdom - International (with dead keys)"; key <AE02> { [ 2, at, EuroSign, onehalf ] }; key <AE03> { [ 3, sterling, twosuperior, onethird ] }; key <AE04> { [ 4, dollar, threesuperior, onequarter ] }; key <AE06> { [ 6, dead_circumflex, NoSymbol, onesixth ] }; key <AD09> { [ o, O, oe, OE ] }; key <AC11> { [ dead_acute, dead_diaeresis, dead_diaeresis, bar ] }; //dead_doubleacute key <TLDE> { [ section, plusminus, notsign, notsign ] }; //dead_grave key <BKSL> { [ backslash, bar, numbersign, bar ] }; key <LSGT> { [ dead_grave, dead_tilde, brokenbar, bar ] }; include "level3(ralt_switch)" }; // Describe the differences between the US Colemak layout // and a UK variant. By Andy Buckley (andy@insectnation.org) ..." # Apply modification $ setxkbmap I am sure they might be a better and more professional and finish way to do it, but as I am not very familiar with the keybaord conf architecture it is very difficult for me event to understand clearly how I manage to do this :) Ideally, I would prefer to see an option in the keyboard gnome setting panel like : Keyboard model: MacBook Pro 5,5 Select Layout: UK International (which works as US International keyboard) This way I would be sure it works :) ---------------------------------------- I had also the following if it can be of any help : HOST Ubuntu $ setxkbmap -print xkb_keymap { xkb_keycodes { include "evdev+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_symbols { include "pc+gb(mac)+inet(evdev)" }; xkb_geometry { include "pc(pc105)" }; }; VM Debian setxkbmap -print xkb_keymap { xkb_keycodes { include "macintosh+macintosh(goodmap)+aliases(qwerty)" }; xkb_types { include "complete+numpad(mac)" }; xkb_compat { include "complete" }; xkb_symbols { include "pc+macintosh_vndr/gb+inet(apple)+level3(enter_switch)+gb(intl):2+level3(ralt_switch_for_alts_toggle):1+level3(ralt_switch_for_alts_toggle):2+group(alts_toggle)+eurosign(e)" }; xkb_geometry { include "macintosh(macbook79)" }; }; ---------------------------------------- Thank you for any help or update you may provide to have those two bugs resolved :) Would you need more information, feel free to contact me. Have nice day. Richard
Created attachment 36004 [details] Apple MacBook Pro 5,5 (Nov 2009) - United-Kingdom Keayboard Layout Photo Related to Bug 28353
Let's talk about first problem first (even though it is a bad idea to file two bugs in one place!) So, what happens if you do the following: setxkbmap -rules evdev -model pc105 -layout gb -variant mac -option '' -print and setxkbmap -rules evdev -model pc105 -layout gb -variant mac -option '' -print | xkbcomp - :0 There can be some warnings - but nothing critical. Would you attach the results here?
Thank your for your quick reply. Ok, sorry for the two bug in one but I thought issues were kind of linked together... let me know if you wish me to file another bug report for BUG2. Here it is but I am not sure about the second command, if I got it wrong let me know : On host Ubuntu: $ setxkbmap -rules evdev -model pc105 -layout gb -variant mac -option '' -print xkb_keymap { xkb_keycodes { include "evdev+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_symbols { include "pc+gb(mac)+inet(evdev)" }; xkb_geometry { include "pc(pc105)" }; }; $ setxkbmap -rules evdev -model pc105 -layout gb -variant mac -option '' -print | xkbcomp - Warning: Type "ONE_LEVEL" has 1 levels, but <RALT> has 2 symbols Ignoring extra symbols Warning: Key <OUTP> not found in evdev+aliases(qwerty) keycodes Symbols ignored Warning: Key <KITG> not found in evdev+aliases(qwerty) keycodes Symbols ignored Warning: Key <KIDN> not found in evdev+aliases(qwerty) keycodes Symbols ignored Warning: Key <KIUP> not found in evdev+aliases(qwerty) keycodes Symbols ignored Warning: Key <RO> not found in evdev+aliases(qwerty) keycodes Symbols ignored Warning: Key <I255> not found in evdev+aliases(qwerty) keycodes Symbols ignored Warning: No symbols defined for <AB11> (keycode 97) Warning: No symbols defined for <JPCM> (keycode 103) Warning: No symbols defined for <I120> (keycode 120) Warning: No symbols defined for <AE13> (keycode 132) Warning: No symbols defined for <I149> (keycode 149) Warning: No symbols defined for <I154> (keycode 154) Warning: No symbols defined for <I161> (keycode 161) Warning: No symbols defined for <I168> (keycode 168) Warning: No symbols defined for <I178> (keycode 178) Warning: No symbols defined for <I183> (keycode 183) Warning: No symbols defined for <I184> (keycode 184) Warning: No symbols defined for <FK13> (keycode 191) Warning: No symbols defined for <FK14> (keycode 192) Warning: No symbols defined for <FK15> (keycode 193) Warning: No symbols defined for <FK16> (keycode 194) Warning: No symbols defined for <FK17> (keycode 195) Warning: No symbols defined for <FK18> (keycode 196) Warning: No symbols defined for <FK19> (keycode 197) Warning: No symbols defined for <FK20> (keycode 198) Warning: No symbols defined for <FK21> (keycode 199) Warning: No symbols defined for <FK22> (keycode 200) Warning: No symbols defined for <FK23> (keycode 201) Warning: No symbols defined for <FK24> (keycode 202) Warning: No symbols defined for <I217> (keycode 217) Warning: No symbols defined for <I219> (keycode 219) Warning: No symbols defined for <I221> (keycode 221) Warning: No symbols defined for <I222> (keycode 222) Warning: No symbols defined for <I224> (keycode 224) Warning: No symbols defined for <I226> (keycode 226) Warning: No symbols defined for <I228> (keycode 228) Warning: No symbols defined for <I230> (keycode 230) Warning: No symbols defined for <I247> (keycode 247) Warning: No symbols defined for <I248> (keycode 248) Warning: No symbols defined for <I249> (keycode 249) Warning: No symbols defined for <I250> (keycode 250) Warning: No symbols defined for <I251> (keycode 251) Warning: No symbols defined for <I252> (keycode 252) Warning: No symbols defined for <I253> (keycode 253) Richard
Yes, I would prefer separate bug report related to the second part. Regarding the first part - it seems you got correct xkeyboard-config, but for some reason gnome cannot deal with it. What's your distro? gnome version? libxklavier version? Would you be able to build libxklavier from sources?
Ok, I will file a new bug and post the link here once done... Here is the other info requested... == What's your distro? $ uname --all Linux macfil 2.6.31-19-generic #56-Ubuntu SMP Thu Jan 28 02:39:34 UTC 2010 x86_64 GNU/Linux $ uname -svr Linux 2.6.31-19-generic #56-Ubuntu SMP Thu Jan 28 02:39:34 UTC 2010 $ dmesg | grep "Linux version" [ 0.000000] Linux version 2.6.31-19-generic (buildd@crested) (gcc version 4.4.1 (Ubuntu 4.4.1-4ubuntu8) ) #56-Ubuntu SMP Thu Jan 28 02:39:34 UTC 2010 (Ubuntu 2.6.31-19.56-generic) $ cat /etc/issue Ubuntu 9.10 \n \l $ cat /etc/debian_version (from which Ubuntu is build) squeeze/sid == gnome version? $ gnome-about ... version:2.81.1 distributor:ubuntu build date:03/11/09 == libxklavier version? $ sudo dpkg -l | grep libxklavier ii libxklavier15 4.0-0ubuntu5 X Keyboard Extension high-level API == Would you be able to build libxklavier from sources? No idea how to do that would you have detail steps ? Richard
As requested, second bug has been reported separately. It is accessible at the following link: https://bugs.freedesktop.org/show_bug.cgi?id=28369
Thanks for the second bug. Now, back to the first bug Could you please attach /etc/default/console-setup and /usr/share/hal/fdi/policy/10osvendor/10-keymap.fdi (if you have them) About libxklavier. Please download it from http://ftp.gnome.org/pub/GNOME/sources/libxklavier/4.0/ Unpack. Usual configure/make sequence. Go to tests subdir. XKL_DEBUG=160 ./test_config -s -m pc105 -l 'gb(mac)' -o ''
> Could you please attach /etc/default/console-setup and Done > /usr/share/hal/fdi/policy/10osvendor/10-keymap.fdi (if you have them) I have only 10-cpufreq.fdi 10-dockstation.fdi 10-fuse-permissions.fdi 10-imac-backlight.fdi 10-input-policy.fdi 10-laptop-panel-mgmt-policy.fdi 10-leds.fdi 10-power-mgmt-policy.fdi 10-rfkill-switch.fdi 10-sony-laptop-brightness.fdi 10-tabletPCs.fdi 10-usbcsr-mice.fdi 10-x11-input.fdi 15-storage-luks.fdi 20-storage-methods.fdi 30-wol.fdi > > About libxklavier. Please download it from > http://ftp.gnome.org/pub/GNOME/sources/libxklavier/4.0/ > > Unpack. Usual configure/make sequence. Go to tests subdir. > > XKL_DEBUG=160 ./test_config -s -m pc105 -l 'gb(mac)' -o '' After unpacking... $ cd /tmp/libxklavier-4.0 $ ./configure (...) checking for XML... configure: error: Package requirements ( libxml-2.0 >= 2.0.0) were not met: No package 'libxml-2.0' found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables XML_CFLAGS and XML_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. $ make make: *** No targets specified and no makefile found. Stop. It is not working... :(( Richard
Created attachment 36061 [details] /etc/default/console-setup As requested...
> checking for XML... configure: error: Package requirements ( libxml-2.0 >= First apt-get install libxml2-dev Then configure make cd tests XKL_DEBUG=160 ./test_config -s -m pc105 -l 'gb(mac)' -o ''
(In reply to comment #10) > > checking for XML... configure: error: Package requirements ( libxml-2.0 >= > > First > > apt-get install libxml2-dev > > Then > > configure (...) checking for GLIB... configure: error: Package requirements ( glib-2.0 >= 2.16.0 gobject-2.0 >= 2.16.0) were not met: No package 'glib-2.0' found No package 'gobject-2.0' found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GLIB_CFLAGS and GLIB_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. Si je fais ... $ sudo apt-cache search 'glib-2.0' gobject-introspection-glib-2.0 - Introspection data for GLib, GObject, Gio and GModule Pas bcp de resultat... dois-je installé ce paquet ? Richard
apt-get install libglib2.0-dev
$ make make all-recursive make[1]: Entering directory `/tmp/libxklavier-4.0' Making all in libxklavier make[2]: Entering directory `/tmp/libxklavier-4.0/libxklavier' (cd . \ && glib-mkenums \ --fhead "#ifndef __XKL_ENUM_TYPES_H__\n#define __XKL_ENUM_TYPES_H__\n" \ --fprod "/* enumerations from \"@filename@\" */\n" \ --vhead "GType @enum_name@_get_type (void);\n#define XKL_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \ --ftail "#endif /* __XKL_ENUM_TYPES_H__ */" \ xklavier.h xkl_config_registry.h xkl_engine.h xkl_config_rec.h xkl_config_item.h xkl_engine_marshal.h) > new-xkl-enum-types.h \ && (cmp -s new-xkl-enum-types.h xkl-enum-types.h || cp new-xkl-enum-types.h xkl-enum-types.h) \ && rm -f new-xkl-enum-types.h \ && echo timestamp > stamp-xkl-enum-types.h /bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -Wall -DDATA_DIR=\"/usr/local/share/libxklavier\" -I. -I.. -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DENABLE_XKB_SUPPORT=1 -DENABLE_XMODMAP_SUPPORT=1 -g -O2 -MT xkl-enum-types.lo -MD -MP -MF .deps/xkl-enum-types.Tpo -c -o xkl-enum-types.lo xkl-enum-types.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -Wall -DDATA_DIR=\"/usr/local/share/libxklavier\" -I. -I.. -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DENABLE_XKB_SUPPORT=1 -DENABLE_XMODMAP_SUPPORT=1 -g -O2 -MT xkl-enum-types.lo -MD -MP -MF .deps/xkl-enum-types.Tpo -c xkl-enum-types.c -fPIC -DPIC -o .libs/xkl-enum-types.o In file included from xkl-enum-types.c:4: ../libxklavier/xklavier.h:25:22: error: X11/Xlib.h: No such file or directory In file included from ../libxklavier/xklavier.h:29, from xkl-enum-types.c:4: ../libxklavier/xkl_engine.h:127: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:128: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:172: error: expected ‘)’ before ‘*’ token ../libxklavier/xkl_engine.h:302: error: expected declaration specifiers or ‘...’ before ‘XEvent’ ../libxklavier/xkl_engine.h:321: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘xkl_engine_get_current_window’ ../libxklavier/xkl_engine.h:341: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:355: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:366: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:376: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:390: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:403: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:418: error: expected declaration specifiers or ‘...’ before ‘Window’ ../libxklavier/xkl_engine.h:419: error: expected declaration specifiers or ‘...’ before ‘Window’ In file included from ../libxklavier/xklavier.h:30, from xkl-enum-types.c:4: ../libxklavier/xkl_config_rec.h:165: error: expected declaration specifiers or ‘...’ before ‘Atom’ ../libxklavier/xkl_config_rec.h:187: error: expected declaration specifiers or ‘...’ before ‘Atom’ make[2]: *** [xkl-enum-types.lo] Error 1 make[2]: Leaving directory `/tmp/libxklavier-4.0/libxklavier' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/libxklavier-4.0' make: *** [all] Error 2
apt-get install libx11-dev
$ ./configure $ make $ cd tests $ XKL_DEBUG=160 ./test_config -s -m pc105 -l 'gb(mac)' -o '' Set the config Model: [pc105] Layouts: [gb(mac)] Options: [] (process:3803): GLib-GObject-CRITICAL **: g_param_spec_flags: assertion `G_TYPE_IS_FLAGS (flags_type)' failed (process:3803): GLib-GObject-CRITICAL **: g_object_class_install_property: assertion `G_IS_PARAM_SPEC (pspec)' failed [1275726410,150,xklavier.c:xkl_engine_one_switch_to_secondary_group_performed/] Resetting allow_one_switch_to_secondary_group flag [1275726410,150,xklavier.c:xkl_engine_constructor/] Trying all backends: [1275726410,150,xklavier.c:xkl_engine_constructor/] Trying XKB backend [1275726410,160,xklavier_xkb.c:xkl_xkb_init/] NO XKB LIBS, display: 0x23e6de0, root: 13f [1275726410,150,xklavier.c:xkl_engine_constructor/] Trying xmodmap backend [1275726410,150,xklavier.c:xkl_engine_constructor/] Actual backend: xmodmap [1275726410,000,test_config.c:main/] Xklavier initialized [1275726410,100,xklavier_config.c:xkl_engine_get_ruleset_name/] Using default rules set: [base] [1275726410,100,xklavier_config.c:xkl_config_registry_load_from_file/] Loading XML registry from file /usr/share/xmodmap/base.xml [1275726410,000,test_config.c:main/] Xklavier registry loaded [1275726410,000,test_config.c:main/] Backend: [xmodmap] [1275726410,000,test_config.c:main/] Supported features: 0x018 [1275726410,000,test_config.c:main/] Max number of groups: 0 [1275726410,000,test_config.c:main/] New config: model: [pc105] layouts: layouts: 0: [gb(mac)] variants: 0: [] options: 0: [] [1275726410,000,test_config.c:main/] Set the config [1275726410,000,test_config.c:main/] Xklavier registry freed [1275726410,000,test_config.c:main/] Xklavier terminating closing display: 0x23e6de0 Shall I do anything else ? Richard
XKB libs are missing. apt-get install libxkbfile-dev Then again, configure and make and run the test utility
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/issues/34.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.