minnie_eg amany.elguindy@gmail.com 2012 Ekaterina Gerasimova kittykat3756@gmail.com 2012 Petr Kovar pknbe@volny.cz 2014 Populate the keyboard layout chooser on the login screen. Display multiple keyboard layouts on the login screen Amany El-Guindy

This assumes the reader knows how to edit files as root. The reader will be able to add a list of keyboard layouts to the login screen, so that usernames/passwords of different languages other than the default can be typed.

You can change the system keyboard layout settings to add alternative keyboard layouts for users to choose from on the login screen. This can be helpful for users who normally use different keyboard layouts from the default and who want to have those keyboard layouts available at the login screen.

Change the system keyboard layout settings

Find the codes of the desired language layouts in the /usr/share/X11/xkb/rules/base.lst file under the section named ! layout.

Use the localectl tool to change the system keyboard layout settings as follows:

localectl set-x11-keymap layout

You can specify multiple layouts as a comma-separated list. For example, to set es as the default layout, and us as the secondary layout, run the following command:

$ localectl set-x11-keymap es,us

Log out to find that the defined layouts are available at the top bar on the login screen.

Note that you can also use the localectl tool to specify the machine-wide default keyboard model, variant, and options. See the localectl(1) man page for more information.

Display multiple keyboard layouts without using localectl

On systems that do not provide the localectl tool, you can change the system keyboard layout settings by editing a configuration file in /usr/share/X11/xorg.conf.d/.

Change the system keyboard layout settings

Find the codes of the desired language layouts in the /usr/share/X11/xkb/rules/base.lst file under the section named ! layout.

Add the layout codes to /usr/share/X11/xorg.conf.d/10-evdev.conf in the following way:

Section "InputClass" Identifier "evdev keyboard catchall" MatchIsKeyboard "on" MatchDevicePath "/dev/input/event*" Driver "evdev" Option "XkbLayout" "en,fr" EndSection

Multiple layouts can be added as a comma separated list, as shown in the example for English (en) and French (fr) layouts.

Log out to find that the defined layouts are available at the top bar on the login screen.