Summary: | libxklavier hardcodes xkb location | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | gad.kadosh |
Component: | New packages | Assignee: | Gentoo Linux Gnome Desktop Team <gnome> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | desintegr, ikelos, iyosifov, laera, m.langer798, maxima.bugs, t1m, tom, wolf31o2 |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
gad.kadosh
2005-11-20 12:48:23 UTC
Well, I have a workaround, but not yet a fix. If you create this symlink: ln -s /usr/share/X11/xkb /usr/lib/X11/xkb Then the add button comes back. I'm looking into why this is, but I haven't found out yet. Okay, I've figured it out. libxklabier hardcodes the location of xkb to /usr/$(get_libdir)/X11/xkb in the ebuild. I'll see if I can find a fix, but for now, use the workaround above. https://bugs.freedesktop.org/show_bug.cgi?id=4461 that bug has a fix, in the form of a pkg-config setup. Once that is included, we can fix libxklavier and send upstream. (In reply to comment #3) The same bug happened to me when I upgraded gnome-control-center from 2.12.1 to 2.12.2[-r1]. --- 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: Gentoo (The X.Org Foundation 6.8.2, revision r6-0.1.13) 60802000 --- Shows each time I log in or change "keyboard model" in gnome keyboard preferences. Tried to log in as new "clean" user but no luck either. Downgrading back to 2.12.1 solves the problem. There is directory /usr/lib/X11/xkb/ on my host, but no /usr/share/X11 directory. Just in case I tried /usr/share/X11/xkb -> /usr/lib/X11/xkb, but it didn't help. I must to admit it's gone now. No more error message for me. (In reply to comment #4) > (In reply to comment #3) > The same bug happened to me when I upgraded gnome-control-center from 2.12.1 to > 2.12.2[-r1]. > --- > 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: > Gentoo (The X.Org Foundation 6.8.2, revision r6-0.1.13) > 60802000 > --- > Shows each time I log in or change "keyboard model" in gnome keyboard > preferences. Tried to log in as new "clean" user but no luck either. > > Downgrading back to 2.12.1 solves the problem. > There is directory /usr/lib/X11/xkb/ on my host, but no /usr/share/X11 directory. > Just in case I tried /usr/share/X11/xkb -> /usr/lib/X11/xkb, but it didn't help. > This problem is still there but it affects modular X builds. The xkbdata ebuild of modular X installs in /usr/share/X11/xkb/ and not in /usr/lib/X11/xkb/ like I assume xorg-6.8 versions do. I tried an ebuild in my overlay which changes the 'lib' path to 'share' path - and with that ebuild it is possible to setup and switch layouts, but then it appears that the "Layout Options" tab in the Keyboard Preferences window lacks some options, for example I can't setup a key combination to switch layouts/groups. I seem to be having a problem related to this bug.
This is for the latest modular ebuild for X.org; xorg-x11-7.0-r1.
I get an identical error as,
> 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
however my keyboard doesn't respond. This is only in gnome (2.12.2) in either normal operation or its failsafe mode. KDE (3.4) doesn't display this problem nor does the failsafe terminal work.
This problem however can be traced to gnome-keyboard-properties, which is part of the gnome-base/control-center (2.12.2-r1) package.
For 2.2 I added a check for xkbdata, if it exists look in the /usr/share path, otherwise /usr/$(libdir) . I think that should do the trick in most cases. I also redid the modular X11 deps, so please doublecheck that too. Latest change to deps in 2.2 creates conflict for me [blocks B ] x11-misc/xkeyboard-config (is blocking x11-misc/xkbdata-1.0.1) where font-alias pulls in xkeyboard-config. Looking at some other x11 ebuilds I see || ( x11-misc/xkeyboard-config x11-misc/xkbdata ) Can either xkeyboard-config or xkbdata be used for libxklavier? I have the same problem as Geoff. Should we open a new bug for this blocker? I added the suggested OR statement in comment #9 to the deps. For modularised X11 it seems that xkbcomp provides and populates the xkb directory, with both xkeyboard-config and xkbdata depending on xkbcomp but mutually blocking each other: xkeyboard-config-0.7-r1.ebuild RDEPEND="x11-apps/xkbcomp !x11-misc/xkbdata" xkbdata-1.0.1.ebuild RDEPEND="x11-apps/xkbcomp !x11-misc/xkeyboard-config" So the test for setting ${xkbbase} in the ebuild should probably look for x11-apps/xkbcomp rather than x11-misc/xkbdata. That's if a test is needed at all - the xkeyboard-config-0.7-r1 ebuild hardcodes the path unconditionally. I checked the cvs repository for xkbcomp and it has had a RDEPEND="x11-apps/xkbcomp" for as old a version as in there so seems testing for xkbcomp should work for the non-modularised x11 also. *** Bug 126150 has been marked as a duplicate of this bug. *** Geoff, I'm not quite following where you are going. xbcomp might be implied by both xkbdata & xkeyboard-config, but it is also directly referenced in the libxklavier configure script. Thats why I still put it in here, bit redundant, but it won't hurt. The test added was also adapted after I changed the dep, so that should be no problem. The package x11-apps/xkbcomp is only installed in a modularized install and the test is there for modularized vs monolothic paths, not the one or the other modularized xkbd config data package. I think it was a race condition. Latest 2.2 version works :) The change I was talking about to test for x11-apps/xkbcomp, as the 2.2 build now does # see bug #113108 if has_version x11-apps/xkbcomp; then xkbbase=/usr/share/X11/xkb Previously it had a test for x11-misc/xkbdata # see bug #113108 if has_version x11-misc/xkbdata; then xkbbase=/usr/share/X11/xkb which was causing problems like in comment 4 as I have xkeyboard-config installed (as apparently preferred) rather than xkbdata. So, it appears this bug's been fixed then? Can it be closed now? I'm still having problem, what to do for fixing? As far as I can see, this is got fixed. I just commited a fix for libxklavier (bug #158832, not related to this bug) and I found the fix in the ebuild. Is this check still needed with newer versions of libxklavier, xkbdata and what not? |