Skip to content

Wayland: automatic keyboard layout detection fails

Since !71 (merged) the startxfce4 script tries to find KEYMAP in /etc/vconsole.conf and set XKB_DEFAULT_LAYOUT in the labwc environment file to the value. However, it does not handle the case that this variable doesn't exist. On my Debian system where I've never modified /etc/vconsole.conf manually (as in not with a text editor, only through the appropriate system tools) the values set are:

XKBMODEL="pc105"
XKBLAYOUT="de"
XKBVARIANT="nodeadkeys"
XKBOPTIONS=""
BACKSPACE="guess"

The correct value for XKB_DEFAULT_LAYOUT based on these settings would be de(nodeadkeys), combining XKBLAYOUT and XKBVARIANT. I think that if autodetection fails (produces an empty value, like here) startxfce4 should not touch the XKB_DEFAULT_LAYOUT setting at all.

For anyone who has the same problem: touch ~/.config/xfce4/labwc/lock to disable the autodetection, and set XKB_DEFAULT_LAYOUT in ~/.config/xfce4/labwc/environment manually.

Edited by Airtower