SDDM uses wrong keyboard layout (us instead of it) on Fedora Asahi Remix (MacBook Pro M1)

I’m using Fedora Asahi Remix on a MacBook Pro M1, and I’m having trouble with the keyboard layout used by SDDM.

Despite having correctly set the system-wide keyboard layout to it (Italian) using localectl and the KDE settings (which work fine once logged in), the SDDM login screen still uses the US layout.

Here’s what I’ve tried so far:

  • Verified /etc/X11/xorg.conf.d/00-keyboard.conf:
Section "InputClass"
        Identifier "system-keyboard"
        MatchIsKeyboard "on"
        Option "XkbLayout" "it"
        Option "XkbModel" "applealu_iso"
EndSection
  • Ran localectl which shows the correct configuration:
System Locale: LANG=it_IT.utf8
   VC Keymap: it
   X11 Layout: it
   X11 Model: applealu_iso
  • Tried adding setxkbmap it to /usr/share/sddm/scripts/Xsetup, but it had no effect.

Is there something specific to Asahi or SDDM on ARM/M1 that could be interfering with layout propagation to the display manager? Should I check or override something in /etc/sddm.conf or /etc/sddm.conf.d/?

Any help or pointers would be appreciated.
Let me know if I should provide logs or additional config files.

I can’t reproduce it on Macbook Pro (13-inch, M2, de keyboard layout) on Fedora 42. I usually use US layout so I wouldn’t have noticed it before.

There were some strange keyboard layout related issues in the past, for example 501917 – Keyboard layout switching breaks if the first layout matches the system layout which got fixed by xkeyboard-config-2.44-1.fc42 / xkeyboard-config merge requests !764.

If the bug is present on Fedora 41 we should see that we get xkeyboard-config-2.44-1 backported to f41.

Thanks for the links. Unfortunately, they don’t seem to solve my issue — and I believe the problem is actually different.

Here’s a precise reproduction path, since the bug appears from the very beginning of the installation:

  • On first boot of the Fedora Asahi Remix installer (on MacBook Pro M1), I selected the Italian (it) keyboard layout.

  • However, the layout in the test area and across all installer pages remained unchanged — seemingly stuck on a default layout (possibly us, though I’m not 100% sure).

  • No matter which layout I selected, the keyboard mapping did not change.

  • After installation, once the system booted into KDE Plasma, the system settings showed it as the active layout, but the actual behavior was still wrong — same as during installation.

  • I fixed this at the session level by going to:

      System Settings → Input Devices → Keyboard → Layouts → Add…
    

    …and manually adding it. After that, the Italian layout worked correctly across the desktop, including after suspend/resume.

  • However, SDDM still uses the wrong layout, which seems to be the same (wrong) one used during the installer.

I also tried adding setxkbmap -layout it -model applealu_iso to /etc/sddm/scripts/Xsetup and ensured DisplayCommand is set in /etc/sddm.conf.d/10-keyboard.conf, but it had no effect.

So far, it seems like:

  1. The installer fails to apply the selected keyboard layout.
  2. That layout is somehow inherited by SDDM.
  3. KDE fixes it only after I manually configure layouts again via the GUI.

I’m not an expert, so I might have done something wrong :sweat_smile: