New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
Plasma: Experimental Wayland support #30610
Conversation
We no longer have a separate `startkde` script; instead we patch the script which comes with `plasma-workspace`. The primary reason to do this is that we have not been keeping up with the minor bugfixes that the upstream script receives. A secondary reason is: now that we support Wayland, we don't really want to have a separate package for each session script.
FWIW, on a Yoga 2 Pro with intel graphics and the modesetting driver, plasma comes up and is perfectly usable. I'll try it as the daily driver for work tomorrow. Only issue is that systemd user units cannot run graphical programs but I'm guessing that has to do with the WAYLAND_DISPLAY variable not being set. |
That is by design! systemd user units are not for running graphical programs. You probably want an XDG autostart file instead. The session manager (ksmserver for Plasma) will take care of those. Besides not running on console sessions, XDG autostart entries let you filter based on session type, e.g. you can pick certain programs to start only in a Plasma session, or only in a Gnome session, etc. I know that NixOS encourages using user units for everything because it provides a declarative interface, but it's really not what they're for. |
BTW, remember |
Indeed, that was a brain fart on my side.
I don't think that's true. Upstream KDE is (or was at least) ref http://web.archive.org/web/20170219035853/http://blog.davidedmundson.co.uk/blog/systemd-and-plasma contemplating rejigging startkde/kinit to use systemd user units to spawn its processes rather than doing it itself. And not only that, it works! This comment is written inside of an a KDE plasma session spawned from sddm using firefox run as a systemd user session, so it looks like we're getting closer! In order to get proper support, it looks like we need to rework quite a bit of the sddm and services.xserver infrastructure to separate out the bits that are X specific and move them into a non-X specific namespace. My ugly hack to get to sddm to spawn plasma wayland: https://gist.github.com/0180264db635408d58fb6b9a143f0614 A few things that aren't working (as a FYI):
|
They have been talking about doing this for a long time with X and Wayland, but AFAICT they have never shipped a systemd unit to replace
If these variables are set and exported in
Wayland will be using
I didn't catch that because I'm using Alacritty. Could you open an issue? It could be a NixOS problem. |
Motivation
Upstream has indicated that they no longer test Plasma on Xorg. This is still experimental; the default Plasma session in NixOS will still run under Xorg.
To start a Plasma session on Wayland,
I have performed only minimal testing because Wayland is extremely unstable on my hardware (
amdgpu
driver + multiple displays). There do not seem to be any missing packages. Some programs even work under Wayland! Bug reports are welcome, bug fixes even more so! 馃槈Testing
build-use-sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)