Hello together,
my keyboard layout changed automatically from german to english after updating my system and i can’t revert it. I didn’t changed anything in my config.
When i boot into my older generation with same config my keyboard layout changes back to german, as it should be.
I can’t figure what’s the cause of this. Here are the settings of both old & new generation:
Old generation (before update):
KDE-Plasma-Version;: 6.6.5
KDE-Frameworks-Version: 6.26.0
Qt-Version: 6.11.0
Wayland
[User@nixos:~]$ nix-shell -p nix-info --run "nix-info -m"
- system: `"x86_64-linux"`
- host os: `Linux 7.0.9, NixOS, 26.05 (Yarara), 26.05pre1003640.299164534138`
- multi-user?: `yes`
- sandbox: `yes`
- version: `nix-env (Nix) 2.34.7`
- channels(root): `"nixos"`
- nixpkgs: `/nix/store/skmdq3ksb69ba54hnhqdansrfnm6jls1-nixos/nixos`
New generation (after update):
KDE-Plasma-Version;: 6.7.3
KDE-Frameworks-Version: 6.28.0
Qt-Version: 6.11.1
Wayland
[User@nixos:~]$ nix-shell -p nix-info --run "nix-info -m"
- system: `"x86_64-linux"`
- host os: `Linux 7.1.3, NixOS, 26.11 (Zokor), 26.11pre1035164.753cc8a3a874`
- multi-user?: `yes`
- sandbox: `yes`
- version: `nix-env (Nix) 2.34.8`
- channels(root): `"nixos"`
- nixpkgs: `/nix/store/skmdq3ksb69ba54hnhqdansrfnm6jls1-nixos/nixos`
Language settings of both generations:
## -- TIME ZONE & LOCAL ----------------------------------------
time.timeZone = "Europe/Berlin";
# Select internationalisation properties
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
# Configure console keymap
console.keyMap = "de";
# X11 windowing system
services.xserver = {
enable = false;
xkb = {
layout = "de";
variant = "";
};
};
I also can’t manually change the language in kde settings.
Thanks for any tips or help.
I’m using Plasma Login Manager on both generations and switching to sddm doesn’t resolve the issue.
Here are some more outputs of new generation that might be relevant:
[User@nixos:~]$ cat /etc/vconsole.conf
KEYMAP=de
[User@nixos:~]$ cat /etc/X11/xorg.conf.d/00-keyboard.conf
Section "InputClass"
Identifier "Keyboard catchall"
MatchIsKeyboard "on"
Option "XkbModel" "pc104"
Option "XkbLayout" "de"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
Option "XkbVariant" ""
EndSection
[User@nixos:~]$ localectl status
System Locale: LANG=en_US.UTF-8
LC_NUMERIC=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
LC_MONETARY=de_DE.UTF-8
LC_PAPER=de_DE.UTF-8
LC_NAME=de_DE.UTF-8
LC_ADDRESS=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION=de_DE.UTF-8
VC Keymap: (unset)
X11 Layout: (unset)
[User@nixos:~]$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=de_DE.UTF-8
LC_NAME=de_DE.UTF-8
LC_ADDRESS=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION=de_DE.UTF-8
LC_ALL=
[User@nixos:~]$ nixos-option console.keyMap
Value:
"de"
Default:
"us"
Type:
string or absolute path
Description:
The keyboard mapping table for the virtual consoles.
Example:
"fr"
Declared by:
/nix/store/skmdq3ksb69ba54hnhqdansrfnm6jls1-nixos/nixos/nixos/modules/config/console.nix
Defined by:
/etc/nixos/hosts/thomas-PC/configuration.nix
[User@nixos:~]$ nixos-option services.xserver.xkb.layout
Value:
"de"
Default:
"us"
Type:
string
Description:
X keyboard layout, or multiple keyboard layouts separated by commas.
Declared by:
/nix/store/skmdq3ksb69ba54hnhqdansrfnm6jls1-nixos/nixos/nixos/modules/services/x11/xserver.nix
Defined by:
/etc/nixos/modules/programs/desktop/plasma-kde.nix
Nyxos
July 18, 2026, 1:07pm
3
Where is the issue? The display manager, the compositor, or both? In the compositor, can you not change the keyboad layout? If not, what exactly happens?
If the problem is in the display manager only, there is the services.displayManager.plasma-login-manager.settings option. Check man plasmalogin.conf to see if there’s anything relevant to keyboard layouts (I don’t have Plasma installed so I can’t check, and I couldn’t find an online version of the manual).
You’re checking X options, does that mean you’re using X? In the first post you’re mentioning Wayland.
It seems to be that other people are affected too, since upgrading to plasma 6.7.
See bug report at https://bugs.kde.org/show_bug.cgi?id=522189
The bug report contains this fix that worked for me:
KDE Settings → Keyboard → enable layouts → add the missing language.
More generally, in Wayland I believe each compositor (DE/WM) sets the keyboard layout instead of the display server.