Make SDDM itself run on Wayland

Hi,

I’m trying to make SDDM itself run on Wayland. I’ve installed a clean Manjaro (KDE) rig and the first thing I did was make KDE sessions run on wayland. I’ve got that part working as echo $XDG_SESSION_TYPE outputs wayland when i’m logged in KDE.

Next thing i did was clone the latest SDDM git repository and build it from source, and did a sudo make install. Everything seems to be working fine after that still.

But, now SDDM is running on tty 2 and when I switch back to tty 1 nothing happens. It keeps showing the SDDM login screen, but without a mouse. It seems that it got frozen. When I go back to tty 2, it works fine.

Now, When I open tty 3 and login I want to make sure that SDDM itself was running on wayland too, as it is supported by now (by adding DisplayServer=wayland in the [general] section of the /etc/sddm.conf file.

How i checked if SDDM in tty 2 is running on wayland? Well by doing this:

ps aux | grep sddm

Which will give a list of running processes by SDDM.
In that list I’m looking for the greeter process, and note the PID (process ID).
Then I’m extracting the $XDG_SESSION_TYPE environment variable of that process by doing this:

cat /proc/1234/environ | tr '\0' '\n' | grep XDG_SESSION_TYPE

Where 1234 is the PID.

This returns

XDG_SESSION_TYPE=x11

Which is not the desired output. It seems that even after forcing SDDM to run on wayland, SDDM still runs on x11. How can I make it run on wayland?

The next part is not really important but informative)
Why all the hassle? Well I want to create a desktop environment, including the login process, to be fluid. To be smooth. No hard black screens between login and logout back to sddm. I’m making a sddm and kde theme with login logout animations, somewhat like windows 11 does. When a user is selected in sddm, it’s current desktop wallpaper is used, and blurred somewhat. When loging in, the login panel slides away while the wallpaper becomes, let’s say ’ unblurred’. And in this process, i do not want to see a hard cut black screen because it’s switching from x11 display manager to wayland.

Try this → SDDM - ArchWiki

/etc/sddm.conf.d/10-wayland.conf
[General]
DisplayServer=wayland
GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell

[Wayland]
CompositorCommand=

For sddm-git version you can build using pamac which will allow the package manager to track the files

pamac build sddm-git

Did you remove the sddm that was installed by the package manager?
Else there likely will be conflicting files now, or duplicates in different places, depending on how you built and installed it.

Does this not work with the version that is already installed via the normal repos?

This is the pkgbuild used to build and install the version in the repo.
See the adapted installation paths? … and the patches?

Thanks a lot! It’s running Wayland now. Both SDDM and Plasma.
Still got that black screen when transitioning from sddm to plasma desktop.

You are right. I’ve installed sddm-git package. The TTY problem is solved now, as the package manager removes conflicting packages :slight_smile: Thanks.

Just found out, that SDDM running on wayland in TTY1, after logging in, still opens a new wayland (plasma) session on TTY2… Destroying my dream of a smooth login effect. :frowning: I asked chatgtp (i know) how to solve this, and it stated that I could add

SessionCommand=/usr/bin/startplasma-wayland
SessionCommandFallback=/usr/bin/startplasma-wayland

to the [General] section to force it in current tty. But this had no success.

See the link to the Arch wiki in my first comment.

I have faffed with it - couldn’t make it work in satisfactory manner.

In my usecase wayland works great - I don’t have any issues unless I get crazy ideas - such as testing how to accomplish what you are trying to - this endeavour was no success.

Yeah, I’m going to open a new topic about this because it’s a different topic. Thanks anyway.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.