An easier way to test Plasma

Having the Plasma and Usability & Productivity sprints held at the same time and place had an unexpected benefit: we were able to come up with a way to make it easier to test a custom-compiled version of Plasma!

Previously, we had some documentation that asked people to create a shell script on their computers, copy files to various locations, and perform a few other steps. Unfortunately, many of the details were out of date, and the whole process was quite error-prone. It turned out that almost none of the Plasma developers at the sprint were actually using this method, and each had cobbled together something for themselves. Some (including myself) had given up on it and were doing Plasma development in a virtual machine.

So we put some time into easing this pain by making Plasma itself produce all the right pieces automatically when compiled from source. Then, we created a simple script to install everything properly.

So now all you have to do is compile Plasma and run this script once:

sudo ~/kde/build/plasma-workspace/login-sessions/install-sessions.sh

This will install all the necessary bits to make your compiled-from-source Plasma appear in the SDDM login screen’s session chooser. You even get both the X11 and Wayland versions!

Thereafter, you can just log out of your distro-provided Plasma session and log into your custom-compiled Plasma session whenever you want. It’s super easy:

There are a few quirks surrounding DBus and Polkit that you can read about on the wiki, but it totally works and now it’s super duper simple to test and use your custom-compiled Plasma without polluting your base system. I’ve been using the Plasma Wayland session from git master with no VM for my daily computing and development needs for the past three days and it feels *amazing* to be able to do this. Many thanks to veteran KDE developer Aleix Pol Gonzalez for this work.

So now you really have no excuse not to build plasma from source! 😉 Check out the developer documentation and give it a try!

8 thoughts on “An easier way to test Plasma

  1. I can’t believe, wow guys, you’re top notch! This is a huge reason to compile it for first time. More novelties like this please. Keep it up =)

    Liked by 1 person

  2. Hello Nate,
    Very interesting.
    Your post motivated me to try a plasma compilation 🙂
    But on KDE Neon User I have a dependency problem :
    “Les paquets suivants contiennent des dépendances non satisfaites :
    libnm-dev : Dépend: libnm0 (= 1.10.6-2ubuntu1.1) mais 1.10.14-0ubuntu2 devra être installé”

    So I’m not able to compile networkmanager-qt as I’m not able to install libkf:6°5networkmanagerqt-dev which depend to libnm0

    Do you know this problem ?
    Thibaut

    Like

    1. For now, add –ignore-modules networkmanager-qt to your kdesrc-build invocation to make it not build that module. Afterwards, please file a bug on Neon describing the error in detail. Thanks!

      Like

  3. Nice, Can you tell us more about your dev workflow.
    Do you need to restart a session each time you change something? And then stop and restart IDE…
    Thanks in advance for your answer

    Like

    1. Yes, you log out and log back into the built-from-source Plasma session. I find that once I’m in that session, I just resume work and stay in it all day lol. It’s really quite stable.

      Like

  4. I followed the docs a few months ago and I succeeded actually. But good to know you improved the process. Not everything can and should be tested in a VM.

    OTOH, some years ago I was able to do all the work in docker with Xephyr. That seemed even better: performant and clean. Unfortunately it stopped working at some point. Do you know if there is any work in that sense? I wonder if an alternative exists for Wayland.

    This is what I used: https://github.com/carlonluca/docker-kdesrc-build

    Like

Leave a comment