SDDM Doesn't Autostart

Hi, I use Tumbleweed and Hyprland and tried to use sddm but even though I enabled sddm by “sudo systemctl enable sddm” it doesn’t auto start in the startup. I have to login to TTY and type “sudo systemctl start sddm” to start it. Here is the log of “sudo systemctl status sddm” on tty.

sddm.service - Simple Desktop Display Manager
    Loaded: loaded (/usr/lib/systemd/system/sddm.service; enabled; preset: disabled)
    Active: inactive (dead)
     Docs: man:sddm(1)
               man:sddm.conf(5)

All that this command does is creating the alias display-manager.service hiding the existing and the correct display-manager.service.

So revert it, reboot and then show

systemctl status display-manager.service
update-alternatives --display default-displaymanager
1 Like

systemctl status display-manager.service:

display-manager.service - X Display Manager
    Loaded: loaded (/usr/lib/systemd/system/display-manager.service: enabled: preset:              
    enabled)
    Active: inactive (dead)

update-alternatives --display default-displaymanager:

default-displaymanager - auto mode
    link best version is /usr/lib/X11/displaymanagers/sddm
    link currently poinst to /usr/lib/X11/displaymanagers/sddm
    link default-displaymanager is /usr/lib/X11/displaymanagers/default-displaymanager
/usr/lib/X11/displaymanagers/console - priority 5
/usr/lib/X11/displaymanagers/sddm - priority 25
/usr/lib/X11/displaymanagers/xdm - priority 10

It sees the default display manager as X11 even though it should be Wayland.

You already have SDDM as the default display manager.

Capture the output after reboot as root

journalctl -b --no-pager --full

and upload to https://paste.opensuse.org/

Please try to find out the difference between Display Manager and Windows Manager.

https://paste.opensuse.org/pastes/36f792fdcadf

Thank you.

I said “as root”.

Hint: You are currently not seeing messages from other users and the system.
      Users in the 'systemd-journal' group can see all messages. Pass -q to
      turn off this notice

https://paste.opensuse.org/pastes/ee94e34d6018

here you are

May 15 19:08:36 localhost systemd[1]: Queued start job for default target Multi-User System.

Your system is set to boot to text only mode. Run

systemctl set-default graphical.target
1 Like

It gave the error “[FAILED] Failed to start X Display Manager.”

Did you do what @arvidjaar suggested?

When rebooted after entering the command.

Provide the same logs as requested before, now when you

https://paste.opensuse.org/pastes/1e459609678b
Thank you.

Here is SDDM config just in case.

[General]
DisplayServer=wayland
# No effect in 0.20.0, might change in the future again
MinimumVT=7
# boo#1089932
EnableHiDPI=true


[Users]
# boo#979775
ReuseSession=true
User=ahmet
Session=Hyprland

I removed SDDM and added the line exec=Hyprland at the end of ~/.profile file. Even though the error “Failed to start X Display Manager” continues, Hyprland automatically starts after logging in.

display-manager.service: Control process exited, code=exited, status=6/NOTCONFIGURED

Do you have /usr/bin/X?

No, I don’t use X.

Well, the script /usr/lib/X11/display-manager (which comes from the package xdm which stands for X11 Display Manger) expects the /usr/bin/X to exist. Nobody forces you to use it for your user sessions, but so far nobody implemented pure Wayland display management.

This can be considered packaging bug. If the script is not functional without X11 server, the xdm package should require the X11 server package.

1 Like

You could investigate using greetd. That should eliminate the need for the X server environment and facilitate ‘autologin’ to a Hyprland session.

1 Like