QML based X11 and Wayland display manager
Clone or download
Vogtinator and plfiorini Revert "Don't leak VT FDs in jumpToVt (#1079)" (#1082)
This reverts commit b9dd8d9.

openQA had a (single) failure which was caused by a race condition:

sddm[1281]: Jumping to VT 2
sddm[1281]: VT mode didn't need to be fixed
sddm-greeter[2552]: Message received from daemon: LoginSucceeded
susetest systemd[1]: Started Getty on tty2.
[...]
sddm-helper[2558]: Starting: "/usr/share/sddm/scripts/wayland-session dbus-run-session /usr/bin/startplasmacompositor"
sddm-helper[2568]: Failed to take control of the tty: Operation not permitted

As can be seen, sddm jumps to the selected VT, which triggers getty to start.
Then sddm-helper starts the user session, which fails to take control of the
tty as it's already opened by another process.
Latest commit 3e45d8b Oct 9, 2018

README.md

INTRODUCTION

Build Status IRC Network

SDDM is a modern display manager for X11 and Wayland aiming to be fast, simple and beautiful. It uses modern technologies like QtQuick, which in turn gives the designer the ability to create smooth, animated user interfaces.

SDDM is extremely themeable. We put no restrictions on the user interface design, it is completely up to the designer. We simply provide a few callbacks to the user interface which can be used for authentication, suspend etc.

To further ease theme creation we provide some premade components like a textbox, a combox etc.

There are a few sample themes distributed with SDDM. They can be used as a starting point for new themes.

SDDM is developed by volunteers, please consider donating money that can be used to support the features that you most desire.

SCREENSHOTS

sample screenshot

VIDEOS

RESOURCES

INSTALLATION

Qt >= 5.8.0 is required to use SDDM.

SDDM runs the greeter as a system user named "sddm" whose home directory needs to be set to /var/lib/sddm.

If pam and systemd are available, the greeter will go through logind which will give it access to drm devices.

Distributions without pam and systemd will need to put the "sddm" user into the "video" group, otherwise errors regarding GL and drm devices might be experienced.

LICENSE

Source code of SDDM is licensed under GNU GPL version 2 or later (at your choosing). QML files are MIT licensed and images are CC BY 3.0.

TROUBLESHOOTING

NVIDIA Prime

Add this at the bottom of the Xsetup script:

if [ -e /sbin/prime-offload ]; then
    echo running NVIDIA Prime setup /sbin/prime-offload, you will need to manually run /sbin/prime-switch to shut down
    /sbin/prime-offload
fi

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. In case you don't want to allow other users to access your $HOME you can use ACLs if your filesystem does support it.

setfacl -m u:sddm:x /home/username
setfacl -m u:sddm:r /home/username/.face.icon

Custom DPI

In order to set custom DPI for high resolution screens you should configure Xorg yourself. An easy way is to pass an additional argument to Xorg.

Edit /etc/sddm.conf, go to the X11 section and change ServerArguments like this:

ServerArguments=-nolisten tcp -dpi 192

to set DPI to 192.

As an alternative you can edit Xorg configuration xorg.conf, please refer to the Xorg documentation.