cross-posted from: https://lemmy.world/post/39342270

Well folks, it’s the beginning of a new era: after nearly three decades of KDE desktop environments running on X11, the future KDE Plasma 6.8 release will be Wayland-exclusive! Support for X11 applications will be fully entrusted to Xwayland, and the Plasma X11 session will no longer be included.

  • enumerator4829@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    7
    ·
    edit-2
    4 days ago

    Because instead of just using a common well defined API, every developer is supposed to ”work together with Wayland compositors”, of which there are many, none of which are up to feature parity with X. Working together with the (at least) three major compositors is far top much work for most projects, if you can even get them on board.

    Every compositor must reimplement everything previously covered by third party software, or at least define and reimplement APIs to cover that functionality. We have been screaming about this obvious design fuckup since Wayland was first introduced, but nooo, every frame is perfect.

    Take a look at https://arcan-fe.com/ for what a properly architected display server could look like instead of the mess we currently have with Wayland. I’m holding off on moving to Wayland for many reasons, and it wouldn’t surprise me if Arcan becomes mature and fully usable before Wayland. If I get to place a bet on either on Wayland or a few guys in a basement with a proper architecture, I know what I’ll put my money on.

      • enumerator4829@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 days ago

        That list is hilarious. I especially love how gnome just gives up on Wayland protocols and wants everyone to run a sidechannel over dbus instead.

        This is why we can’t have nice things.

        • flying_sheep@lemmy.ml
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          3 days ago

          I don’t get what you mean. Isn’t the list just a status quo and not how things are supposed to be forever? What’s “hilarious” about somebody painstakingly going through all the features and checking how close they are?

          Like I wouldn’t put it past GNOME to give up on interoperability at the slightest inconvenience, but I don’t see that here?

          • enumerator4829@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            3 days ago

            It’s hilarious that all of this was foreseen 17 years ago by basically everyone, and here is a nice list providing just those exact points. I’ve never seen a better structured ”told ya so” in my life.

            The point isn’t that the features are there or not, but how horrendously fragmented the ecosystem is. Implementing anything trying to use that mess of API surface would be insane to attempt for any open source project, even when ignoring that the compositors are still moving targets.

            (Also, holy shit the Gnome people really wants everyone to use dbus for everything.)

            Edit: 17 years. Seventeen years. This is what we got. While the list is status quo, it’s telling that it took 17 years to implement most of the features expected of a display server back in the last millenium. Most features, but not all.

            • flying_sheep@lemmy.ml
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              3 days ago

              Pretty good for mostly volunteers, hampered by recalcitrant project leads that actively sabotage any progress and consider “told you so” appropriate.

              If anyone cared enough, they could have made that list 17 years ago, and pushed through a set of protocol extensions that allow talon to work.

              Why did nobody do that?

              It’s crazy to me that people complain now. It’s far too late for complaints.

                • flying_sheep@lemmy.ml
                  link
                  fedilink
                  arrow-up
                  1
                  ·
                  2 days ago

                  Maybe you didn’t do it right. Everything Wayland I ever complained about is fixed now.

                  I fell like if you had put this list into a Wayland protocol extension request, then put a link to that request into KDE’s showstoppers list, this would have been fixed long long ago.

                  • enumerator4829@sh.itjust.works
                    link
                    fedilink
                    English
                    arrow-up
                    1
                    ·
                    2 days ago

                    It’s great that most showstoppers are fixed now. Seventeen years later.

                    But I’ll bite: Viable software rendered and/or hardware accelerated remote deskop support with load balancing and multiple users per server (headless and GPU-less). So far - maybe possible. But then you need to allow different users to select different desktop environments (due to either user preferences or actual business requirements). All this may be technically possible, but the architecture of Wayland makes this very hard to implement and support in practice. And if you get it going, the hard focus on GPU acceleration yields an extreme cost increase, as you now need to buy expensive Nvidia-GPUs for VDI with even more expensive licenses. Every frame can’t be perfect over a WAN link.

                    This is trivial with X, multiple commercially supported solutions exist, see for example Thinlinc. This is deployable in literally ten minutes. Battle tested and works well. I know of multiple institutional users actively selecting X in current greenfield deployments due to this, rolling out to thousands of users in well funded high profile projects.

                    As for the KDE showstopper list - that’s exactly my point. I can’t put my showstoppers in a single place, I need to report to KDE, Gnome and wlroots and then track all of them, that’s the huge architectural flaw here. We can barely get commercial vendors to interact with a single project, and the Wayland architecture requires commercial vendors to interact with a shitton of issue trackers and different APIs (apparently also dbus). Suddenly you have a CAD suite that only works on KDE and some FEM software that only runs on a particular version of Gnome, with a user that wants both running at the same time. I don’t care about how well KDE works. I care that users can run the software they need, the desktop environment is just a tool to do that. The fragmentation between compositors really fucks this up by coupling software to display manager. Eventually, this will focus commercial efforts on the biggest commercial desktop environment (i.e. whatever RHEL uses), leaving the rest behind.

                    (Fun story, one of my colleagues using Wayland had a postit with ”DO NOT TURN OFF” on his monitor the entire pandemic - his VNC session died if the DisplayPort link went down.)