setxkbmap does not work properly in zaphod configurations
Submitted by Nick Bowler
Assigned to Xorg Project Team
Description
When using a zaphod Xorg configuration, the "setxkbmap" utility does not work correctly. It's hard to describe exactly how it fails -- essentially, it seems to set xkb parameters globally, but queries return values that differ on each screen. Here's an example immediately after starting the server:
% setxkbmap -display :0.0 -query rules: evdev model: evdev layout: us variant: colemak options: caps:ctrl_modifier,terminate:ctrl_alt_bksp,compose:menu
% setxkbmap -display :0.1 -query Couldn't interpret _XKB_RULES_NAMES property Use defaults: rules - 'base' model - 'pc105' layout - 'us' rules: base model: pc105 layout: us
Then, if I run setxkbmap -display :0.1 (no other arguments), it will apply the settings shown on from the second query (rules=base, model=pc105, layout=us) to the server. This affects the keyboard globally (actually, it almost completely breaks it). Despite the changes being applied, we see the following:
% setxkbmap -display :0.0 -query rules: evdev model: evdev layout: us variant: colemak options: caps:ctrl_modifier,terminate:ctrl_alt_bksp,compose:menu
so setxkbmap on the first screen thinks that nothing has changed? But on the second screen we see the truth:
% setxkbmap -display :0.1 -query rules: base model: pc105 layout: us
(note that the error message we saw before is gone, too).
I'm running xorg-server-1.9.4 and setxkbmap 1.2.0.