Jump to content

Display manager

From postmarketOS Wiki

List of display managers

  • tinydm, default on Phosh, Plasma Mobile, LXQt and Sxmo installations
  • lightdm, default on Xfce4 and MATE installations
  • gdm, default on GNOME installation
  • sddm, default on Plasma Desktop installation
  • lxdm, not used by default

tinydm

The tinydm log file can be located in ${XDG_STATE_HOME:-~/.local/state}/tinydm.log.

LightDM

In postmarketOS, Xfce4 and MATE use LightDM display manager. The greeter is set to "slick-greeter". Autologin is disabled by default.

The slick-greeter can be configured in Settings -> Login Window (Xfce4) or System -> Adminstration -> Login Window (MATE). The background picture of the greeter can be changed. In tab "Users", section "Automatic login", a username can be inserted to enable autologin. In tab "Settings" the onboard layout of the virtual keyboard in the greeter can be changed.

On MATE the option "Draw user backgrounds" to apply the users wallpaper on the greeter doesn't work.[1]

To hide/show the virtual keyboard in the greeter, it can be unchecked/checked in the accessibility menu in the top bar.

  • On installations older than July 2024 the virtual keyboard will show up again after reboot. This is because on these installations the home directory of user "lightdm" is at /var/run/lightdm, which is not consistant over boots. Affected users would need to logout, stop lightdm service, change the home directory of user "lightdm" to /var/lib/lightdm and start lightdm service again. Or alternatively enable autologin to avoid "seeing" the greeter with the virtual keyboard.

CanGraphical issue

If LightDM starts but there is no picture on screen, check if loginctl show-seat seat0 reports it as CanGraphical=0. If that is the case, in /etc/lightdm/lightdm.conf replace #logind-check-graphical=true with logind-check-graphical=false to make LightDM ignore that nonsense.

loginctl does not see the session

Enable virtual terminals in your kernel config.

GDM

Keyboard language in GDM

Login screen is set to QWERTY keyboard layout by default. Login screen does not provide any option to switch to an alternative keyboard layout.

systemd

Define XKBLAYOUT in /etc/vconsole.conf, using the following command (changing [keymap] to the correct value, e.g. fr):

$ localectl --no-convert set-x11-keymap [keymap]
Note Warning: Using localectl set-x11-keymap without --no-convert will also change the value of KEYMAP=, which may result in an unbootable system if encrypting an entire system with a passphrase containing accented characters. See systemd issue #34967.

OpenRC

You have to create /etc/X11/xorg.conf.d/30-keyboard.conf with the following content (French layout in this example):

Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "fr"
EndSection

Then:

$ doas rc-update add openrc-settingsd boot

And reboot.

References