FS#15236 - [xkeyboard-config] keysym errors prevent keyboard usage in Xorg

Attached to Project: Arch Linux
Opened by Corrado Primier (bardo) - Tuesday, 23 June 2009, 18:08 GMT
Last edited by Eric Belanger (Snowman) - Saturday, 18 June 2011, 19:28 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan de Groot (JGC)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

I've been having this strange problem for some months now. I get lots (hundreds) of keysym errors when starting up X (see 'Xlog' attachment). This renders the keyboard unusable, and the only way to get it working is to forcibly uninstall (-Rd) the xkeyboard-config package, which contains the keyboard mappings. This way there are no files to complain of, so X starts, but only with the en_US layout because the xkb extension does not load.

My keyboard is an Apple Aluminium USB, id:
Bus 002 Device 005: ID 05ac:0221 Apple, Inc. Keyboard (Aluminium) (ISO)

I can trigger the same errors by running 'xkbcomp /usr/share/X11/xkb/symbols/pc' or similar, so it doesn't seem to be Xorg's fault, but I'm attaching xorg.conf and Xorg.0.log anyway. A similar problem was detected by a forum user, but no answer was found[0].

I can mitigate the issue by manually exporting XKEYSYMDB to /usr/share/X11/XKeysymDB: the errors get to just a few tens (see Xlog_XKEYSYMDB), but the keyboard still doesn't act good: some letters work, other show strange behaviors. If I try to "echo $XKEYSYMDB" in my .xinitrc I get an empty line, so this variable doesn't get set, but this seems to be normal on a working machine.

I think this might not be a bug and there may be some corrupted config, but I can't figure out which one and reinstalling the whole Xorg didn't help.


[0] http://bbs.archlinux.org/viewtopic.php?id=56109
This task depends upon

Closed by  Eric Belanger (Snowman)
Saturday, 18 June 2011, 19:28 GMT
Reason for closing:  No response
Comment by Corrado Primier (bardo) - Tuesday, 23 June 2009, 18:26 GMT
Ok, I can't believe I found a solution five minutes after posting this, after I've been fighting with this problem since February! But... there could be a bug anyway.

The reason was in dynamically linked libraries. My /etc/ld.so.conf looked like this:
--------------------
/usr/X11R6/lib
/usr/lib/libfakeroot
/opt/qt/lib
/opt/gnome/lib
/opt/kde/lib
/opt/NX/lib
--------------------

The first directory doesn't exist anymore, and for some strange reason, instead of looking in /usr/lib first, the dynamic linker started searching from the listed paths. This means it was trying to use some NX libraries to start the local X. Enter the big breakage.

Now, removing the first path didn't help, but changing it in /usr/lib (and obviously running ldconfig) did. So the system starts searching for libs from manually added library paths. I see three options here:
a) it shouldn't do so, and there's a bug
b) it should do so, and we aren't providing a sane default
c) it should do so, it's ok this way, and everybody knew it but me.

Which is the right answer? :)
Comment by Corrado Primier (bardo) - Tuesday, 23 June 2009, 18:27 GMT
(And by the way, how is NX supposed to work *with* Xorg? I think that if one works, the other one can't...)
Comment by Andreas Radke (AndyRTR) - Sunday, 09 August 2009, 13:57 GMT
I think our whole NX packaging is wrong and but it somehow "works" in most cases. NX packages are up to tobias... removing myself here.
Comment by David Rosenstrauch (darose) - Tuesday, 13 April 2010, 02:10 GMT
I just ran into a similar problem, with a similar solution.

I kept getting the same keysym errors - and my keyboard not working in X.

Eventual fix (I think) was uninstalling an old copy of neatx (Google's clone of nx) that I had hanging around. Neatx had placed a file in /etc/ld.so.conf.d, which I'm guessing was what was messing things up.
Comment by Greg (dolby) - Friday, 04 March 2011, 03:56 GMT
Is this still a problem?

Loading...