View Issue Details

IDProjectCategoryView StatusLast Update
0006298CentOS-6xorg-x11-xkb-utilspublic2016-11-19 16:09
Reporterjhcaiced 
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
PlatformLinuxOSCentOSOS Version6.4
Product Version6.3 
Target VersionFixed in Version 
Summary0006298: x11 keyboard configuration not working for NX connections after update from 6.3 to 6.4
DescriptionAfter updating the server from CentOS-6.3 to CentOS-6.4 (x86_64 arch) the keyboard configuration under x11 stopped working when I access the server using a NX client (opennx or the NoMachine NX client)

The setup I have is:
- CentOS Server 6.3 (all updates until yesterday)
- Installed NX Server (http://wiki.centos.org/HowTos/FreeNX#head-fdcc21f2bc71f39f6567ea4833c29d44836bd2d4) everything was working fine.
- I have an Spanish keyboard (model: pc105, layout: es) this configuration was detected correctly and automatically when accessing the server from another CentOS Linux installation using opennx client.

After the update to CentOS-6.4, the configuration of the keyboard under x11 when accessing using opennx is not working, the keyboard appears to be in "us" layout and no special keys are working.

setxkbmap returns the following error message:
$ setxkbmap
Couldn't interpret _XKB_RULES_NAMES property
Use defaults: rules - 'base' model - 'pc105' layout - 'us'

Steps To Reproduce- Configure a working NX server + client on CentOS-6.3
- Configure a different keyboard layout (pc105 + es)
- Update server from CentOS-6.3 to 6.4
- Special keys and layout are no working anymore.
Additional InformationThis issue appears only when accessing the server via NX, using the X Window System from the console of the server works fine, and accessing from another Linux Server using XDMCP also works fine.

Also done testing using different desktop managers, either GNOME or XFCE shows the same issue, the keyboard is not configured correctly.

I can manually run the command setxkbmap to set the layout:
$ setxkbmap -model pc105 -layout es

- Using opennx under Linux (CentOS-6.3), this fixes the issue.

- Using the opennx client running under Windows I got the same results, except that I cannot type the "p" lowercase letter (uppercase P is fine), event after manually setting the keyboard layout with setxkbmap

When I log into the server and the keyboard is not configured correctly this is the result I got:
$ xprop -root | grep XKB
_XKB_RULES_NAMES(STRING) = "base", "pc101", "us", "", ""
_XKB_RULES_NAMES_BACKUP(STRING) = "base", "pc101", "us", "", ""
Trying to build keymap using the following components:
keycodes: xfree86+aliases(qwerty)
types: complete
compat: complete
symbols: pc+us
geometry: pc(pc101)
xkb_keymap {
        xkb_keycodes { include "xfree86+aliases(qwerty)" };
        xkb_types { include "complete" };
        xkb_compat { include "complete" };
        xkb_symbols { include "pc+us" };
        xkb_geometry { include "pc(pc101)" };
};

After manually setting the model/layout of keyboard, this is the result:
$ xprop -root | grep XKB
_XKB_RULES_NAMES(STRING) = "base", "pc105", "es", "", ""
_XKB_RULES_NAMES_BACKUP(STRING) = "base", "pc101", "us", "", ""
Trying to build keymap using the following components:
keycodes: xfree86+aliases(qwerty)
types: complete
compat: complete
symbols: pc+es+inet(pc105)
geometry: pc(pc105)
xkb_keymap {
        xkb_keycodes { include "xfree86+aliases(qwerty)" };
        xkb_types { include "complete" };
        xkb_compat { include "complete" };
        xkb_symbols { include "pc+es+inet(pc105)" };
        xkb_geometry { include "pc(pc105)" };
};
TagsNo tags attached.

Activities

jhcaiced

jhcaiced

2013-03-10 12:58

reporter   ~0016630

I realized that I reported the wrong command output in the additional information field.

$ xprop -root | grep KXB
$
- No string is reported initially

After the keyboard layout is set manually
$ setxkbmap -rules base -model pc105 -layout es
$ xprop -root | grep XKB
_XKB_RULES_NAMES(STRING) = "base", "pc105", "es", "", ""

The other output is from
$ setxkbmap -print -verbose
toracat

toracat

2013-03-10 14:49

manager   ~0016633

Probably related to this :

https://bugs.freedesktop.org/show_bug.cgi?id=50553

CentOS 6.4 has xkeyboard-config-2.6-6.el6. It was 2.3-1.el6 in 6.3. A quote from the above link:

The XKB configuration for 2.6.0 is TOTALLY broken. It means for some reason FreeNX cannot configure XKB, fails and the resulting config is useless. Anything in FreeFX logs? Now, the only thing I can offer is trying to analyse the differences between 2.5.1 and 2.6.0 and trying to find which commit causes the trouble.

But, regardless of issues with xkeyboard-config, there is clearly a bug in FreeNX - it cannot handle properly new xk-c that is correct from "usual" X server POV. Or, at least it should provide some sensible error.
jhcaiced

jhcaiced

2013-03-10 15:10

reporter   ~0016634

Confirmed, my issue is being caused by xkeyboard-config-2.6-6.el6.noarch from CentOS-6.4

Forcing a downgrade of this package to xkeyboard-config-2.3-1.el6.noarch from CentOS-6.3 solves the issue for me.
toracat

toracat

2013-03-10 16:39

manager   ~0016636

Thanks for testing and reporting back. Not sure if it's worth filing a bug report at http://bugzilla.redhat.com . FreeNX is not part of the distribution upstream, so this case might not be taken up.
JensKuehnel

JensKuehnel

2013-03-18 12:06

reporter   ~0016752

Executing "touch /usr/share/X11/xkb/keymap.dir" fixes the problem.
I open an RedHat Case. I will keep you informed.
jhcaiced

jhcaiced

2013-03-18 12:28

reporter   ~0016753

Thanks to JensKuehnel, I have tested this solutions and the keyboard works fine with the updated xkeyboard-config package.

"touch /usr/share/X11/xkb/keymap.dir"
toracat

toracat

2013-03-18 15:36

manager   ~0016756

Thanks, JensKuehnel, for raising the issue with upstream and also providing a fix.
JensKuehnel

JensKuehnel

2013-03-18 17:08

reporter   ~0016760

The comment from Upstream does not look very nice. keymap.dir is not part of the API/ABI therefore it can be changed without notice. :-(

I'm still trying to convince them to create an empty keymap.dir file, but don't get your hopes up.
If someone has the same problem and an RH Account, please open a RH Ticket and complain.
toracat

toracat

2013-03-18 17:58

manager   ~0016761

In the meantime we can patch nx to include the keymap.dir file.
JensKuehnel

JensKuehnel

2013-03-19 12:23

reporter   ~0016770

Our TAM at RedHat opened a BZ:

https://bugzilla.redhat.com/show_bug.cgi?id=923160

We will see.
toracat

toracat

2013-03-29 15:46

manager   ~0017045

Now documented in the upstream KB:

https://access.redhat.com/knowledge/solutions/340743
toracat

toracat

2015-04-29 17:59

manager   ~0022946

Two years later ... some progress upstream: "Verified on xkeyboard-config-2.11-3.el6. The file: /usr/share/X11/xkb/keymap.dir has been restored."
toracat

toracat

2015-07-20 13:40

manager   ~0023671

The upstream BZ changed the status to RELEASE_PENDING. Is RHEL 6.7 coming?
toracat

toracat

2016-11-19 16:09

manager   ~0027934

Resolved upstream (therefore CentOS):

https://rhn.redhat.com/errata/RHBA-2015-1276.html

Issue History

Date Modified Username Field Change
2013-03-10 11:39 jhcaiced New Issue
2013-03-10 12:58 jhcaiced Note Added: 0016630
2013-03-10 14:49 toracat Note Added: 0016633
2013-03-10 14:49 toracat Status new => acknowledged
2013-03-10 15:10 jhcaiced Note Added: 0016634
2013-03-10 16:39 toracat Note Added: 0016636
2013-03-10 16:39 toracat Status acknowledged => confirmed
2013-03-18 12:06 JensKuehnel Note Added: 0016752
2013-03-18 12:28 jhcaiced Note Added: 0016753
2013-03-18 15:36 toracat Note Added: 0016756
2013-03-18 15:36 toracat Status confirmed => assigned
2013-03-18 17:08 JensKuehnel Note Added: 0016760
2013-03-18 17:58 toracat Note Added: 0016761
2013-03-19 12:23 JensKuehnel Note Added: 0016770
2013-03-29 15:46 toracat Note Added: 0017045
2015-04-29 17:59 toracat Note Added: 0022946
2015-07-20 13:40 toracat Note Added: 0023671
2016-11-19 16:09 toracat Status assigned => resolved
2016-11-19 16:09 toracat Resolution open => fixed
2016-11-19 16:09 toracat Note Added: 0027934