SDDM
Summary |
---|
SDDM, a simple desktop display manager, written in Qt and compatible with X and Wayland, recommended from LXQt, Liri, KDE. |
Related |
LXQt |
user:hd_scania/Liri |
Openbox#Openbox/KDE |
KDE |
Display manager |
LightDM |
GDM |
Wayland |
The Simple Desktop Display Manager (SDDM) is the preferred display manager for LXQt, Liri, KDE Plasma desktop. From Wikipedia:
- Simple Desktop Display Manager (SDDM) is a display manager (a graphical login program) for X11. SDDM was written from scratch in C++11 and supports theming via QML. It is the successor of the KDE Display Manager and is used in conjunction with KDE Frameworks 5, KDE Plasma 5 and KDE Applications 5.
1 Installation
Install sddm, then follow the below lines to start SDDM at boot for OpenRC and ensure that no other display managers are installed (if needed),
sudo pacman -Su --noconfirm sddm sudo pacman -Rddnnssuu --noconfirm gdm lightdm kdm entrance gpe lxdm sudo rc-update add xdm default
Reboot then you will see SDDM at boot.
2 Configuration
The configuration file for SDDM can be found at /etc/sddm.conf. See man 5 sddm.conf for all options.
On systems controlled by systemd, everything should work out of the box, since SDDM defaults to using systemd-logind for session management. The configuration file will therefore not be created at package installation time. SDDM offers a command for generating a sample configuration file with the default settings if you really want one:
# sddm --example-config > /etc/sddm.conf
2.1 Autologin
SDDM supports automatic login through its configuration file, for example:
/etc/sddm.conf
[Autologin] User=john Session=plasma.desktop
This configuration causes a KDE Plasma session to be started for user john when the system is booted. Available session types can be found in /usr/share/xsessions/ directory.
An option to autologin into KDE Plasma while simultaneously locking the session is not available [1]
You can add a script that activates the screensaver of KDE to the autostart as a workaround:
#!/bin/bash /usr/bin/qdbus-qt4 org.kde.screensaver /ScreenSaver SetActive true & exit 0
2.2 Unlock KDE Wallet automatically on login
See KDE Wallet#Unlock KDE Wallet automatically on login.
2.3 Theme settings
Theme settings can be changed in the [Theme] section.
Set to breeze for the default Plasma theme.
2.3.1 Main theme
Set the main theme through the Current value, e.g. Current=archlinux-simplyblack.
2.3.2 Editing themes
The default SDDM theme directory is /usr/share/sddm/themes/. You can add your custom made themes to that directory under a seperate subdirectory. Study the files installed to modify or create your own theme.
2.3.3 Mouse cursor
To set the mouse cursor theme, set CursorTheme to your preferred cursor theme.
Valid Plasma mouse cursor theme names are breeze_cursors, Breeze_Snow and breeze-dark.
2.3.4 Changing your avatar
You can simply put a png image named username.face.icon into the default directory /usr/share/sddm/faces/. Alternatively you can change the default directory to match your desires:
/etc/sddm.conf
[Theme] FacesDir=/var/lib/AccountsService/icons/
You can also put a png image named .face.icon at the root of your home directory. However, you need to make sure that sddm user can read that file.
2.4 Numlock
If you want to enforce Numlock to be enabled, set Numlock=on in the [General] section.
2.5 Rotate display
See Xrandr#Configuration.
2.6 Configuration GUI
- KDE Frameworks' System Settings contains an SDDM configuration module. Install sddm-kcm package to use it.
2.7 DPI settings
Sometimes it's useful to set up correct monitor's PPI settings on a "Display Manager" level. To do so you need to find "ServerArguments" parameter in sdd.conf and add -dpi %YOUR RESOLUTION at the end of the string.
For example:
/etc/sddm.conf
ServerArguments=-nolisten tcp -dpi 94
3 Troubleshooting
3.1 Hangs after login
Try removing ~/.Xauthority.
3.2 SDDM starts on tty1 instead of tty7
SDDM follows the systemd convention of starting the first graphical session on tty1. If you prefer the old convention where tty1 through tty6 are reserved for text consoles, uncomment and edit the MinimumVT variable, under the [X11] section in sddm.conf:
/etc/sddm.conf
[X11] ... MinimumVT=7 ...
3.3 One or more users do not show up on the greeter
SDDM only displays users with a UID in the range of 1000 to 65000 by default, if the UIDs of the desired users are below this value then you will have to modify this range. Modify your sddm.conf to (for a UID of 501, say):
/etc/sddm.conf
[Users] HideShells=/sbin/nologin,/bin/false # Hidden users, this is if any system users fall within your range, see /etc/passwd on your system. HideUsers=git,sddm,systemd-journal-remote,systemd-journal-upload # Maximum user id for displayed users MaximumUid=65000 # Minimum user id for displayed users MinimumUid=500 #My UID is 501
3.4 SDDM loads only US keyboard layout
SDDM loads the keyboard layout specified in /etc/X11/xorg.conf.d/00-keyboard.conf. You can generate this configuration file by localectl set-x11-keymap command. See Keyboard configuration in Xorg for more information.
3.5 No user Icon
SDDM reads user icon from either ~/.face.icon or FacesDir/username.face.icon
You need to make sure that SDDM user have permissions to read those files.
$ setfacl -m u:sddm:x /home/username $ setfacl -m u:sddm:r /home/username/.face.icon $ setfacl -m u:sddm:r /home/username/.face
See SDDM README: No User Icon.