About Plasma’s X11 session

X11 is in the news again, so I thought it would make sense to be clear about the Plasma team’s plans for X11 support going forward.

Current status: Plasma’s X11 session continues to be maintained.

Specifically, that means:

  • We’ll make sure Plasma continues to compile and deploy on X11.
  • Bug reports about the Plasma X11 session being horribly broken (for example, you can’t log in) will be fixed.
  • Very bad X11-specific regressions will probably be fixed eventually.
  • Less-bad X11-specific bugs will probably not be fixed unless someone pays for it.
  • X11-specific features will definitely not be implemented unless someone pays for it.

This is actually not too bad; there are relatively few open and fixable X11-specific bugs (0.76% of all open bug reports as of the time of writing), and when I went looking today, there were only two Bugzilla tickets requesting new X11-specific features that needed closing. Most bugs and features are platform-agnostic, so X11 users will benefit from all of these that get fixed and implemented.

Eventually it’s lights out for X11 though, right? When will that happen?

Yes, the writing is on the wall. X11’s upstream development has dropped off significantly in recent years, and X11 isn’t able to perform up to the standards of what people expect today with respect to HDR, 10 bits-per-color monitors, other fancy monitor features, multi-monitor setups (especially with mixed DPIs or refresh rates), multi-GPU setups, screen tearing, security, crash robustness, input handling, and more.

As for when Plasma will drop support for X11? There’s currently no firm timeline for this, and I certainly don’t expect it to happen in the next year, or even the next two years. But that’s just a guess; it depends on how quickly we implement everything on https://community.kde.org/Plasma/Wayland_Known_Significant_Issues. Our plan is to handle everything on that page such that even the most hardcore X11 user doesn’t notice anything missing when they move to Wayland.

Why are you guys doing this? Why don’t you like X11 anymore?

The Plasma team isn’t emotional about display servers; it’s just obvious that X11 is in the process of outliving its usefulness. Someday Wayland will be in this boat too; such is the eventual fate of all technologies.

In addition to the fact that Wayland is better for modern hardware, maintaining code to interact with two display servers and session types is exactly as unpleasant as it sounds. Our resources are always limited, so we’re looking forward to the day when we can once again focus on programming for a single display server paradigm. It will mean that everything else can improve just a little bit faster.

Regardless of when you pull the trigger, isn’t it premature?

Most major distros have already moved their Plasma sessions to Wayland by default, including Arch, Fedora, KDE neon, Kubuntu, and generally their downstream forks. Several others whose roadmaps I’m familiar with plan to do so in the near future.

At this point in time, our telemetry says that a majority of Plasma users are already using the Wayland session. Currently 73% of Plasma 6 users who have turned on telemetry are using the Wayland session, and a little over 60% of all telemetry-activating users (including Plasma 5 users) are on Wayland.

Interestingly, the percentage of Plasma 6 users on Wayland was 82% a month ago, and now it’s down to 73%. What changed? SteamOS 3.7 was released with Plasma 6 and the X11 session still used by default! Interestingly, since then the Wayland trendline has continued to tick up; a month ago the percentage of Wayland users dropped from 82% to 70%, and now today it’s up to 73%.

So you can see that to a large extent, this is up to distros, not us. It wouldn’t make sense for us to get rid of Plasma’s X11 support while there are still major distros shipping it by default, and likewise, it won’t make sense for us to keep it around long after those distros have moved away from it.

Regardless, Wayland’s numbers are increasing steadily, and I expect upward bumps when the next Debian and Kubuntu LTS releases come out, as both are currently planned to be Wayland by default.

Now, is Plasma’s Wayland session perfect? No. (what is?)

Is it better than the X11 session in literally every way? Also no.

Is it better in most ways that matter to most people? The numbers say yes!

Well I’m not a most people! I’m me, I’m an individual! I’m not a number, I’m a free man!

That’s fine, and you’re the reason why we’re still maintaining the X11 session! We’re going to try very hard not to to get rid of it until you’re happy too.

Ultimately that’s the goal here: make everyone happy! This includes people who have mixed-DPI/refresh rate multi-monitor setups or laptop touchpads, as well as people using AutoKey or graphics tablets with dials on them. Long transitions like this are tough, but ultimately worth it so that we all get something better in the end.

75 thoughts on “About Plasma’s X11 session

    1. Good question! I checked and it’s Plasma 5.20, likely used by people still on Debian 11. It’s still a very small number though.

      Like

  1. I like to launch apps from remote (home assistant –> ssh sensors/scripts/scenes/keypress).

    For instance, opening Plex HTPC, check it is fullscreen, put it fullscreen if not.

    Lock/unlock my screen, adjusting volume, play some music on Plexamp.

    All of this can be triggered by automations or from frontend (by phone).

    I also have a handheld remote with directional arrows, play/pause, volume. It simply simulates key presses (xdotool).

    All of this is basically impossible with wayland as far as I know. Using X11 since kde 2.0 times I never had any issues with that. I really fear the day all my habits will be crushed by x11 becoming not maintained and obsolete!

    Like

    1. Much or all of this can be done with KWin scripting or just assigning actions to buttons. I too have a handheld remote for my HTPC, and I simply used the Shortcuts page in System Settings to bind the actions to buttons.

      If you want to do the emulated key-press approach, does ydotool not work for you?

      Like

    2. I can’t comment on the rest, but I can at least confirm that simulating inputs in scripts is doable in Wayland. xdotool doesn’t work, but there are a few successor projects you may want to look into when you have the time (I updated my scripts to use dotool last year, I believe ydotool is also popular)–their interfaces aren’t exactly the same though, so I don’t know how easy the conversion would be.

      Notably, some of them work in X11 as well which makes testing them out a lot easier!

      Like

  2. @Nate I heard about ydotool and will try that

    other scripts I have require also wmctrl, pactl, loginctl, xset and some of these tools I believe are not working fine with wayland

    Like

    1. That is very different from “X11 isn’t able to perform up to the standards of what people expect today with respect [to] VRR”, which is what the blog post claimed. It also suggested that people with “240Hz VRR monitors” aren’t happy, which is not the case.

      We all know what Wayland advocates are trying to do.

      Like

    2. I don’t know what the ominous “We all know what Wayland advocates are trying to do” quote is about. The the main one I can think of is the reason Nate described in his post:

      The Plasma team isn’t emotional about display servers; it’s just obvious that X11 is in the process of outliving its usefulness. Someday Wayland will be in this boat too; such is the eventual fate of all technologies.

      Also “X11 isn’t able to perform up to the standards of what people expect today with respect [to] VRR”, I think a standard that people have is that you can have two monitors without matching specs work with VRR. It is one I have at least.

      I am one of the people that is excited for Wayland, but it is for the simple reason that I am excited for a Linux landscape that is united under an expandable and modern standard. That’s it.

      Like

    3. But two monitors without matching specs can work with VRR on Xorg. And you are ignoring the comment that clearly imples that people with “240Hz VRR monitors” are not happy on Xorg. He didn’t say anything about multiple monitors or matching specs in that sentence, did he?

      It’s comments like these that make the general public believe VRR doesn’t work on Xorg, at all.

      Like

    4. You are correct, that statement is false. I think the perception is there because different refresh rates do not work, which is what nearly all laptops have and a lot of desktops (I think it is quite common for people to have a high refresh rate first monitor and use their old one as a secondary).

      I am still curios about the ominous “We all know what Wayland advocates are trying to do.” statement because I am honestly getting pretty fed up from all the conspiratorial comments around display server development (which I suspect this falls under as well, but feel free to correct me). It hinders the development of the Linux desktop for no reason.

      Like

    5. But different refresh rates do work, in many cases by default, in other cases you need to do a little configuring.

      But people find it easier to just repeat the myths they have heard, instead of trying to fix their issues.

      My comment about Wayland advocates is pretty simple and nothing nefarious. If you believe Wayland is the superior technology a priori, then you are not going to have a very strong incentive to fix whatever issues you have with Xorg, will you? So they just automatically assume the worst about Xorg without doing any research.

      Some are nefarious though, they know or strongly suspect that some of these issues can be fixed, but they don’t bother correcting the perception, because they would rather have people having the wrong perception about Xorg so it dies faster.

      Like

    6. My apologies if I got it wrong. I don’t actually have any VRR-compatible screens myself, so I wasn’t writing from personal experience there. I’ll correct the post.

      Like

    7. Thank you. Still, you can just do xrandr --props and it does list vrr, does it not? It’s not that difficult to find out that Xorg does have some VRR support (if not most of it).

      Like

  3. Out of curiosity: how many individual machines take part in the statistics? I’m wondering how representative it is?

    Like

    1. It’s 100% dependent on people opting into it. I have no idea how representative the data is, but that’s the nature of opt-in data collection I’m afraid, and it’s the best we’ve got.

      Like

  4. Are you able to tell us when will be implemented in Wayland real restore session of Plasma, I mean one like in X11 (including windows position, and virtual desktops, and alt.activities)?

    Like

  5. (Sadly) still need X11 until TeamViewer finally has proper wayland support and allows headless connections without having to allow the screensharing via a dialog that pops up on every single connect.

    Like

    1. Have you tried RustDesk? It’s a free fully self-hostable alternative and has Wayland support as well headless options.

      Like

    2. Alternatives in general often don’t matter when corporate policies are in place and a certain tools is widely used already and works for 99% of the use-cases (like e.g. Windows in this example). RustDesk is OpenSource and nice but I’d not call it necessarily free as RustDesk also requires licencing for the Pro version if you want to use certain often required features like access control, 2FA, LDAP, and so on so and then it additionally might become a cost issue as well.

      Like

    3. In a corporate environment, I would expect admins to handle the X11-to-Wayland transition by rolling out new tools as needed as part of the normal upgrade and validation cycles.

      TeamViewer is also paid for enterprisey features I believe.

      Like

    4. Well, you still have a few years to convince them to move or get TeamViewer to support Wayland. 🙂

      Like

  6. Hi Nate! Please don’t forget all the employees daily using remote desktop (RDP) in their home offices, relying on xrdp for X11. Unfortunately currently there is no wayland xrdp alternative for Plasma. Krdp is still missing essential features like headless mode, starting new Plasma Login/SDDM session, maybe also x.264 software encoding on gpu-less server hardware and availability at all. Thank you!

    Liked by 1 person

  7. Unfortunately, I won’t be able to switch to Wayland for the time being, because my NVIDIA GPU is a really old one (Kepler architecture), and the latest drivers for it don’t support Wayland-GBM.

    My next GPU probably won’t be an NVIDIA one, but I consider the feature-set on this one to be complete: NVENC/NVDEC support, Vulkan 1.2, OpenGL 4.6… So I really see no point in replacing a perfectly-working GPU just to be able to use Wayland, especially when X11 still works great for my use case.

    I also tried Nouveau with a recent kernel, but KWin would keep crash intermittently, so that’s not an option at least for now (though things might improve in the future, when NVK/NAK support for Kepler arrives in mesa).

    Like

  8. Well, thank god for that!

    I cannot use Wayland!

    In Wayland window rules do not work. Activate and raise actually passes a click. If I get activate and raise to work then the panel does not function! 😵‍💫

    Like

    1. That probably depends on what you need window rules for. I use window rules on Wayland to make the KDE Polkit Agent password prompt always on top. This works, but it’s kind of annoying that I need to do this.

      Like

    2. Is there a bug report tracking this? Without one, it’s unlikely to get fixed, since window rules are a niche feature not regularly exercised by most developers.

      Like

    3. Thanks. I just tried it on current git master and I can’t reproduce the bug anymore, at least not as written in the bug report. Looks like it needs some investigation.

      Like

  9. input handling

    Imo anyone claiming this in Wayland vs Xorg either doesn’t know low-latency, or is spreading misinformation. I have years of experience to back that up.

    Like

    1. There’s a lot more to input handling than just latency, it can also be to do with features. For example, I know in the Gnome world, touchpad gestures just don’t work on X11 (unless you use an extension and extra system software).

      Like

    2. @QwertyChouskie

      there is touchegg which uses libinput normally like in kwin wayland and sends events which the window manager can react to to enable full wayland like libinput gestures. It is a side channel to bypass (or rather supplement) X input methods to make input more like in standard wayland.

      it is not that many (most) wayland things cannot be done in X. It is about the bad design of X protocol and architecture that can’t be fixed without breaking changes.

      Otherwise when X.Org server codebase started to show signes of age, X developers could have started to build a new X server that speaks X11 but based on modern graphics and input api. Think of it as what wayback (https://gitlab.freedesktop.org/wayback/wayback) is doing currently.

      I think the confusion arises from wayland guys (former X developers) talking about how crusty and ancient the X.Org codebase is or that X.Org is virtually unmaintainable. This is true but not the reason for designing a whole new protocol and ways of doing things. Most graphics (drm), input and window handling (kwin logic is mostly shared in such between X11 and wayland version) stacks we are using in wayland today already is on X for a while and currently mostly works ok.

      Like

  10. Wait, this isn’t KDE blogs! This is pointiest stick!

    Almost didn’t notice the difference on mobile until I got to comment section. Man, it’s been a while. Your blogs, here or on KDE blog, has always been a highlight of the week for me. How have you been, Nate?

    Like

  11. Plasma doesn’t support headless RDP on Wayland, but GNOME Remote Desktop does just fine.

    Actually, GNOME Remote Desktop is way better than any RDP implementation under X I tried. Hopefully one day KDE has something as good as it.

    Like

  12. Hi,

    hmmm.. i miss the hard-progrogrammed strg+alt+backspace in Wayland for “break/kill” the Wayland Session for kill hanging Desktops, but so far, with my Desktop and Nvidia-card GTX 750 Ti works all so far nicely, so far i can judge this as Extended User ..

    Because X11, so the head Topic if this blog, did you see already this :

    X.org server fork: New life for X11 or Weigelt’s agenda?

    German Page :
    https://linuxnews.de/x-org-server-fork-positive-entwicklung-oder-weigelts-agenda/

    In English, over GoggleTranslater ( translate.google.com ) :
    https://linuxnews-de.translate.goog/x-org-server-fork-positive-entwicklung-oder-weigelts-agenda/?_x_tr_sl=de&_x_tr_tl=en&_x_tr_hl=de&_x_tr_pto=wapp

    there is speak about a new live, so, why not 2 different grafical servers imo
    and therefore is the way free, if the Fork sussessful and run’s, so why not.

    but, it’s build up a “next task” with Xorg/X11 for Plasma in future, but
    competition drives evolution and this is useful for all of us, like i see it in my Opinion.

    so, it will comes interresting in future 🙂 Maybe with 3 Eyes *hihi* ?

    best

    Blacky

    Like

  13. I think openSUSE Tumbleweed is still on X11 by default and I don‘t know when they plan to switch. I did so locally half a year ago and it works as supposed. I miss nothing. Thanks for all your hard work!

    Like

  14. I see currently 3 Problems.

    Well maybe it’s only 2.

    My older hardware, specifically Nvidia chips in a ZBOX-EN970 SFF and ThinkPad W520. I guess both will be gone in an other 5 years or maybe last a while longer.

    Password managers, RPA and synthetic user testing, specifically KeePassXC and Robot Framework.

    Like

  15. I’m still using X11 for one simple reason. Wayland session is unusable for me without a proper session restore. I have multiple instances of dolphin for various tasks as well as other applications at different virtual desktops. It’s a pain to restore all of them manually each time I reboot my computer.

    Like

  16. Xorg is perfectly capable of handling monitors with different DPI. When it comes to refresh rate, that too is perfectly manageable by X11, but the problem arises with compositors. Throwing Xorg overboard for shortcomings that either do not affect Xorg, or affect it but were fixable, was not a good idea. The transition is still painful 16 years after the birth of Wayland, which also brings with it inherent limitations “by design” and therefore unfixable. Not to mention the enormous fragmentation. This was a problem with X11 when there were different implementations, the problem was solved when one emerged over all the others. Instead of learning from mistakes, it seems that Red Hat decided to repeat them and the others followed suit.

    Like

    1. I came here to say this. There are subtle interactions some of us rely on.

      KiCad needs X11 for the time being, and isn’t a KDE application. I absolutely need it. If KDE stops supporting X11 while KiCad can’t work under Wayland, I’ll need to change desktops.

      So maybe the issue isn’t quite as simple as “KDE can drop X11 as soon as Wayland supports everything KDE needs”?

      Like

    2. Many of the complaints in that article ultimately boil down to GNOME and other environments not implementing enough Wayland protocols. There are also some complaints about performance and clipboard support that feel very compositor-specific or related to glitchy GPU drivers.

      This kind of fragmentation is unfortunate for cross-platform app developers, but ultimately all we can do in KDE is try to make KWin and Plasma the best environments for running your Wayland apps. We can’t fix the whole world; just our tiny slice of it.

      Like

  17. I know X11 is practically unmaintained, but is mature, stable and perfectly compatible. So much for a project no one is working on…

    I get it, eventually things will change so much that X11 will need to adapt, and there’s no one to do the job.

    Sadly, Wayland still needs A LOT of fixes, especially for edge cases, before being forced down into everyone’s throats.

    When I upgraded to Plasma 6.4.0, I noticed my X11 option disappeared, so I tried Wayland once more…It was more snappy, different DPIs worked better… but the fun lasted exactly 30 minutes, when I needed to kill Plasmashell because it was having a memory leak (which doesn’t happen on X11), then I reinstalled the x11 session package, and now everything is working as it should.

    The same has happened, every time I tried, for the last 2 years… one day, there will not be a fallback.

    Like

    1. I needed to kill Plasmashell because it was having a memory leak (which doesn’t happen on X11)

      If you use a slideshow wallpaper and an NVIDIA GPU, this may be https://bugs.kde.org/show_bug.cgi?id=480693, which was caused by a bug in the NVIDIA GPU driver that was fixed recently.

      If not, it would be super helpful if you could try to figure out what component was responsible so we can fix it!

      Like

    1. ii  kde-spectacle  4:6.3.5-2    amd64        Screenshot capture utility

      After few hiccups (for example it didn’t show the red circle icon in the tray when it was supposed to start the recording, so the only way to get rid of the rectangle on my screen was to killall spactacle in the konsole) I was able to record the video, but it had no sound.

      $ sudo apt-get install obs
      Reading package lists… Done
      Building dependency tree… Done
      Reading state information… Done
      Package obs is not available, but is referred to by another package.
      This may mean that the package is missing, has been obsoleted, or
      is only available from another source

      E: Package ‘obs’ has no installation candidate

      Is there a package for OBS in debian?

      Like

    2. I don’t know anything about Debian or its packaging status/policies, sorry. I do know that OBS is available on Flathub.

      Like

  18. Thank you for providing a comprehensive and objective response in FAQ format. That’s what this whole situation needs: more signal and less noise.

    Liked by 1 person

  19. Recently I hit an unexpected roadblock to use Wayland session in KDE. Some of us have to use some Time Tracking software to “snap” our “work” (hint to the software name) and it turned out it heavily relies on different X-related command-line tools to track keypresses, active windows and stuff. I know there is an “Legacy X11 App Support” page in System Settings but it doesn’t allow to expose mouse movement to such applications. And as a result I get almost zero “activity score” there. I heard this works in GNOME Wayland session (a colleague reported this works on latest Ubuntu) but I don’t have any desire to poke GNOME and I am afraid Plasma X11 session will degrade up to being completely unusable in the future. I used an “xinput test-xi2 –root” (a command the software uses) to verify that it can’t see mouse movements outside of any X11/XWayland apps. Is there any possibility we can receive mouse movements setting to allow X11 apps to see that everywhere?

    Like

    1. No. Wayland is delibrately designed to not work properly with applications that have functioned just fine for decades.

      Like

  20. Any chance that the telemetry could be released monthly to the public? Similar to something like the Steam Hardware Survey. It would be really nice to see those stats and data every month.

    Liked by 1 person

  21. Are you guys planning to do something about the bad gaming performance in Wayland? I recently moved to Wayland and games FPS drops by a lot. Just one example CSGO 2 in X11 gives me about 70 to 80 FPS in Wayland I get 30 to 40fps, same hardware(AMD GPU) and settings.

    Like

  22. The #1 reason that I cannot use Wayland is because I need complete headless rdp support because I have servers which provide rdp sessions for multiple users and because I have servers which have no monitor, keyboard, or mouse attached that I maintain remotely via rdp.

    GNOME has solved this issue with gdm + gnome-remote-desktop and it seems work flawlessly but I don’t really want to switch to GNOME as I prefer KDE Plasma.

    I know that it is one the list of things for the new plasma-login-manager.

    I know many users that are in my same situation and without full headless rdp support it Wayland is a no go.

    The KDE RDP is more like remote control or remote assistance functionality and not true RDP.

    I hope that this is addressed before X11 is remove otherwise I will be forced to move to GNOME.

    Like

  23. Please, add a single button option to disable all graphical effects at once, like in X11 unticking Compositing Enable on startup. Right now Plasma 6 feels like MS Windows where I spent hours to disable distracting and unnecessary features.

    Removing geometry option in Konsole means window positioning would never be re-implemented in Wayland, doesn’t it? So, now I’ll have to add dozens of KWin rules to try to make my scripts work as in X11.

    And by the way, why is it still called KWin? It’s not just a WM anymore. To add to the mess? KCom would be a proper name.

    Like

  24. I have ppa and backports in my apt sources, which both provide plasma-desktop 6.3.6 but not plasma-session-x11 6.3.6 or plasma-session-wayland 6.3.6. apt won’t update plasma-desktop to 6.3.6 because plasma-session-* 6.3.5 depends on plasma-desktop 6.3.5. What’s the deal?

    Like

    1. That’d be Jonathan Riddell as the owner with Scarlett Gately Moore and the “Kubuntu Developers” group as co-admins, and Rik Mills, Nathan Handler, Michal Zając as “active members.” Sounds like a group you’d be close to.

      Like

    2. Yeah, I know some of them. However I’m not involved with anything Ubuntu-related in KDE or Kubuntu (which is not a KDE project). So someone who uses or is involved with those projects would be the ideal person to reach out to them about the topic.

      Like

  25. First of all, thanks for unbiased look on this whole thing. I had my fair share of x11 and wayland during the last 17 years. As I get older, I am no longer pursuing things like android on linux, for which the major client is wayland only, and I use my computer for daily tasks and gaming. For which, x11 is still king. I’m currently on nobara, where x11 is broken, so I’ll be moving over to cachyos, and i’ll turn on telemetry so I can contribute to percentage of people still using it. As x11 is halted in its development, there will be attempts to move to xlibre probably. Ubuntu is getting out of touch with its userbase since 2012, so its nothing new. This is why we got MATE, and Mint and PopOS. But when looking at agnostic DE, like KDE should be, there needs to be freedom for all people, no matter the preferences. The support depends on community effort, but freedom to choose shouldnt be prohibited.

    Like

  26. 5 months later and “That’s fine, and you’re the reason why we’re still maintaining the X11 session! We’re going to try very hard not to to get rid of it until you’re happy too.” has turned into “you’ve got a year to pack your crap and move out, so get moving.”

    Like

Leave a reply to guiodic Cancel reply