Discussion:
Keyboard layout reset when launching X under display managers
(too old to reply)
David Banks
2019-07-17 05:50:02 UTC
Permalink
Hi, using Buster, I have my /etc/default/keyboard set up like this:

XKBOPTIONS="pc105"
XKBLAYOUT="gb"
XKBOPTIONS="ctrl:nocaps"
BACKSPACE="guess"
XKBVARIANT=""

I am using Fluxbox without any configuration. When I launch Fluxbox
through GDM, my keyboard layout does not get applied. Inside fluxbox,
in a terminal I run "setxkbmap -query":

rules: evdev
model: pc105
layout: us
options: ctrl:nocaps

As you can see, the XKBOPTIONS have been applied, but somehow the
layout has not been applied, or has been overwritten.

If I run "setxkbmap gb", the correct layout is applied for that X
session. However, putting that command into .xsessionrc does NOT work
-- even with that command in .xsessionrc, the layout is still 'us'
after Fluxbox login.
This behaviour is not restricted to gdm, it happens identically in
slim and lightdm as well.
However, this does NOT happen when I remove all display managers and
use startx directly. When using startx, the correct keyboard layout
is used. (No extra setxkbmap call is needed in .xinitrc, either, the
settings from /etc/default/keyboard are working as expected).

What could be the problem here?
If this is a bug, it's difficult to know what it's even a bug with --
I can't identify a specific package that has the problem.
It's not a problem with Fluxbox, either, because I get identical
behaviour when using different WMs such as Xmonad.

Thanks!
--
David Banks <***@gmail.com>
Curt
2019-07-17 07:40:01 UTC
Permalink
Post by David Banks
XKBOPTIONS="pc105"
XKBLAYOUT="gb"
XKBOPTIONS="ctrl:nocaps"
BACKSPACE="guess"
XKBVARIANT=""
I am using Fluxbox without any configuration. When I launch Fluxbox
through GDM, my keyboard layout does not get applied. Inside fluxbox,
rules: evdev
model: pc105
layout: us
options: ctrl:nocaps
As you can see, the XKBOPTIONS have been applied, but somehow the
layout has not been applied, or has been overwritten.
As you mentioned GDM, it's possible your settings are being
overridden by 'gsettings'.

To verify that hypothesis:
gsettings get org.gnome.desktop.input-sources xkb-options

Reset if necessary with:
gsettings reset org.gnome.desktop.input-sources xkb-options

(All gleaned from the Debian keyboard wiki.)
--
“We are all in the gutter, but some of us are looking at the stars.”
― Oscar Wilde, Lady Windermere's Fan
David Banks
2019-07-17 16:00:01 UTC
Permalink
Post by Curt
As you mentioned GDM, it's possible your settings are being
overridden by 'gsettings'.
gsettings get org.gnome.desktop.input-sources xkb-options
gsettings reset org.gnome.desktop.input-sources xkb-options
(All gleaned from the Debian keyboard wiki.)
I wrote a reply to this before, but it got deleted. The culprit was
ibus. The fix was: ibus-setup > Advanced > Use system keyboard layout.

Dave

Loading...