setting layout in keyboard layout tool doesn't work properly

Bug #21767 reported by Philipp Schroeder
24
Affects Status Importance Assigned to Milestone
xorg (Ubuntu)
Invalid
High
Daniel Stone

Bug Description

svu from gnome.org suggested I open a separate issue (originally posted at bug
21595
).

I have problems with setting the keyboard layout with the 'System >
Preferences > Keyboard' tool (in my case, to 'Switzerland German'). I've tested
this only over the last few days, but on two different architectures (i386 and
amd64) and different releases (breezy-colony4 and breezy-preview). I'm not sure,
but I think the behaviour changed slightly in-between breezy-colony4 and
breezy-preview... could that be?

Anyway, setting your keyboard layout under 'System > Preferences > Keyboard' is
buggy.
Even if you changed the language successfully, the changes become ineffective on
logout - even though the setting in the menu still displays 'Switzerland German'
as a default.
In breezy-colony4, I could get the layout to change with some strange fiddling
about. I added the keyboard 'Switzerland German' a second time (don't ask, users
try strange things ;-). Then I mark the new "S.G." as 'default', "move it up" in
the ordering, and then delete the first 'S.G.' and then it works, i.e. the
layout is set to Swiss German for both console and gnome... until the next
logout, that is! Very annoying, indeed. :-(
In breezy-preview, the "adding twice trick" doesn't work any more. However, I
can now change the layout successfully (both console and gnome) with the
'keyboard indicator' tool in the gnome panel.

I don't know if these bugs are related or not, but I thought I'd mention it
anyway (they are all keyboard layout related problems I have): bug 19159 , bug
15142
and bug 17774 .

If anyone sees through all of this weird behaviour, please let me know! :-)

Revision history for this message
Matt Zimmerman (mdz) wrote :

*** Bug 21768 has been marked as a duplicate of this bug. ***

Revision history for this message
Matt Zimmerman (mdz) wrote :

*** Bug 21769 has been marked as a duplicate of this bug. ***

Revision history for this message
Daniel Stone (daniels) wrote :

whiskey tango foxtrot

Revision history for this message
Sergey V. Udaltsov (svu) wrote :

As I mentioned in one duplicated bug, I'd first think about gconf - if settings
are lost between sessions,
gconf should have lost them somehow.

Revision history for this message
Matt Zimmerman (mdz) wrote :

If the changes aren't saved, this seems like a GNOME issue, no?

Revision history for this message
Philipp Schroeder (philipp.schroeder) wrote :

Matt, I think it is a Gnome issue too, from what see.

Please have a look at what other users have reported, in bug 19159 , which I
think is a duplicate of this one.

Revision history for this message
Philipp Schroeder (philipp.schroeder) wrote :

I've been trying to get my keyboard layout set properly and I ended up running
'dpkg-reconfigure xserver-xorg'. Don't know where I went wrong, but I ended up
with a worse situation as before, where I was stuck with a layout where I
couldn't type *any* special characters and thus wasn't able to properly use the
console anymore. Rant. Rant.

Anyway, since I re-installed breezy-preview from cd again, I decided that I take
the chance to proceed a bit more systematically... I think it would help a lot
if I could do this interactively with a developer on IRC.

I wasn't lucky catching Sergey from gnome.org on IRC so far (different time
zone, I think) - he had suggested he could help.

Is there anyone else I can approach, preferably in the European time zone?

Revision history for this message
Philipp Schroeder (philipp.schroeder) wrote :

Here are some testing results.

I compare the information of:
[TEST A] # xprop -root | grep XKB
[TEST B] # gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd

Test order in which I proceeded:

STEP 1
------

Freshly installed breezy-preview (amd64)

--> During the installation process, I selected Language = English, Country =
Switzerland and Keyboard = Swiss german.
Unfortunately, the keyboard settings are lost once I login. I get an English
keyboard layout. This fault was found by someone else too, see bug 15142 .

STEP 2
------

I select my keyboard layout/variant ('ch, de_nodeadkeys') in 'preferences >
keyboard' (aka 'gnome-keyboard-properties').
I add the 'keyboard indicator' from the panel utilities.

--> While typing on keyboard works like a Swiss German layout, the keyboard
indicator strangely shows 'USA'

STEP 3
------

I toggle the keyboard indicator from 'USA' to 'Che'

--> To my merriment, while panel keyboard indicator shows 'Che', typing on
keyboard works like US layout.

----------------------
T E S T R E S U L T S
----------------------

Step 1: (freshly installed breezy-preview)
======

TEST A, RESULT:
---------------

$ xprop -root | grep XKB
_XKB_RULES_NAMES_BACKUP(STRING) = "xorg", "pc104", "us", "", ""
_XKB_RULES_NAMES(STRING) = "xorg", "pc104", "us", "", ""

TEST B, RESULT:
--------------

$ gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd
 layouts = []
 model =
 overrideSettings = true
 options = []

Step 2: (I set 'Switzerland, German, eliminate dead keys' in pref > keyboard)
======

TEST A, RESULT:
---------------

$ xprop -root | grep XKB
_XKB_RULES_NAMES_BACKUP(STRING) = "xorg", "pc104", "us", "", ""
_XKB_RULES_NAMES(STRING) = "xorg", "pc105", "ch,us", "de_nodeadkeys,",
"grp:alts_toggle"

TEST B, RESULT:
--------------

$ gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd
 layouts = [ch de_nodeadkeys,us]
 model = pc105
 options = [grp grp:alts_toggle]
 overrideSettings = true

Step 3: (I toggle keyboard indicator from 'USA' to 'Che')
======

TEST A, RESULT:
---------------

$ xprop -root | grep XKB
_XKB_RULES_NAMES_BACKUP(STRING) = "xorg", "pc104", "us", "", ""
_XKB_RULES_NAMES(STRING) = "xorg", "pc105", "ch,us", "de_nodeadkeys,",
"grp:alts_toggle"

TEST B, RESULT:
--------------

$ gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd
 layouts = [ch de_nodeadkeys,us]
 model = pc105
 options = [grp grp:alts_toggle]
 overrideSettings = true

Preliminary conclusions
========================

1.) gnome looses CD installer's keyboard settings
2.) 'gnome-keyboard-properties' doesn't work properly
3.) gnome panel 'keyboard indicator' only works for individual windows, rather
than globally, i.e. the whole desktop

Further questions
=================

Debugging question:
Where are the keyboard indicator's settings stored? How can I provide useful
info about them?

Scope question:
Are these issues related or do they need to be separated out?

Big question:
What's the meaning of life, the universe and the rest?

Revision history for this message
Sergey V. Udaltsov (svu) wrote :

Well, after some investigation, here is my resume: it is X problem, not gnome,
not xkeyboard-config.

xkb_keymap {
        xkb_keycodes { include "xfree86+aliases(qwerty)" };
        xkb_types { include "complete" };
        xkb_compat { include "complete" };
        xkb_symbols { include "pc(pc105)+ch+group(alts_toggle)" };
        xkb_geometry { include "pc(pc104)" };
};

Put this stuff into badlayout.xkb, then:

xkbcomp badxkbmap.xkb :0.0

It fails with server-side error. So it is worth fixing on x server side. BTW,
this map successfully compiles to xkm. If you do

xkbcomp badxkbmap.xkb -xkm badxkbmap.xkm

it gives some warnings - but succeeds (and you can even xkbprint the result).

Phillip, could you please reassign it to xserver-xorg or something?

BTW, if instead of alts_toogle one uses rctrl_toggle - it works ok.

Revision history for this message
Daniel Stone (daniels) wrote :

This bug has been marked as a duplicate of bug 21595.

Revision history for this message
Philipp Schroeder (philipp.schroeder) wrote :

Sorry, I think this bug was falsely marked as a duplicate of bug 21595 (which
was resolved). That bug is only addressing *one of the three issues* reported
here (and elsewhere). Thus I re-open it.

Quoting from my comment #8 :

1.) gnome looses CD installer's keyboard settings
2.) 'gnome-keyboard-properties' doesn't work properly
3.) gnome panel 'keyboard indicator' only works for individual windows, rather
than globally, i.e. the whole desktop

1 --> NOT FIXED, compare with comment #8 and also with bug 15142 and bug 19159
2 --> FIXED in bug 21595
3 --> CONFIGURATION ISSUE, compare with bug 19159 , comment #10

Revision history for this message
Daniel Stone (daniels) wrote :

we cannot sensibly track multiple issues over the course of one bug. if you are
still hit by issue #1, please file it as a separate bug. issue #2 is obviously
a duplicate of #15372. issue #3 is a matter of policy, and if you do not like
it, please file a bug on gnome. re-closing as a dupe of 15372; if ou are still
hit by #1, please report a new bug on gnome.

This bug has been marked as a duplicate of bug 21595.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.