packages
packages copied to clipboard
Keyboard layout for X11/lightdm is set incorrectly for non-default variants
Summary
During installation I selected Czech keyboard layout with the qwerty variant.
After installation I noticed that on the login screen lightdm
is using the default us
layout.
This seems to be due to a wrongly written configuration entry in /etc/X11/xorg.conf.d/00-keyboard.conf
which was:
# Written by systemd-localed(8), read by systemd-localed and Xorg. It's
# probably wise not to edit this file manually. Use localectl(1) to
# instruct systemd-localed to update it.
Section "InputClass"
Identifier "keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "cz+qwerty"
Option "XkbModel" "pc104"
EndSection
But (atleast from what I found at ArchWiki) it should be written like this:
(…)
Option "XkbLayout" "cz"
Option "XkbModel" "pc104"
Option "XkbVariant" "qwerty"
(…)
After edditing the file to this format it works properly. It can also be achieved by using localectl set-x11-keymap cz pc104 qwerty
which also creates the file correctly.
Steps to reproduce
- Install Solus and select non-default variant of keyboard layout (e.g.
Czech (qwerty)
). - Try the keyboard layout on the
lightdm
greeter after boot.
Expected result
Writing on the login screen would use the user set layout (e.g. Czech (qwerty)
).
Actual result
It can be seen that the layout on the login screen is the default US
one. (e.g. on the Czech (qwerty) layout the number row should output local symbols instead of numbers)
Environment
- [X] Is system up to date?
Repo
Shannon (stable)
Desktop Environment
Budgie
System details
Other comments
This does not happen with a default variant for the layout since that does not append anything to the configuration file.
@EbonJaeger Can you reproduce this on Budgie/Xfce?
It seems to be working correctly with the newer Calamares that we landed a while back. Looking at the changelog, it was fixed in 3.3.0-alpha4.
# Read and parsed by systemd-localed. It's probably wise not to edit this file
# manually too freely.
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "cz"
Option "XkbVariant" "qwerty"
EndSection
Fixed by https://github.com/getsolus/packages/pull/1892