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:

I’m still trying to solve the problem but I can add further context and details to the picture.

I can recreate the issue that triggered during the install process
If I select the default Apple | Aluminum (ISO) that I had during the install process no matter what my keyboard layout was broken and weird. If you see, while I choose my kbd mapping I can see the preview:


but, when I apply that, the keyboard is actually like this

The type of “resultant keyboard mapping” is the weird one I had during the install process and at the first boot post install.

But, If I change to Generic 105 keyboard type the layout is actually right

I still haven’t figure out the problem. I also opened a ticket on SDDM github page to see if it’s a bug here.

I read better the second link and you’re right and was totally related. I still didn’t manage to understand completely what they were saying but I got that the ‘applealu’ layout is potentially broken with some languages.

I solved the issue with localectl: sudo localectl set-x11-keymap it pc105

Now I’ll try to understand if there is something to report, where to do it and if possibly I can do something to help.

Thank you and sorry!