Now, I really like Wayland, and it’s definitely better than the mess that is X11

BUT

I think the approach to Wayland is entirely wrong. There should be a unified backend/base for building compositors, something like universal wlroots, so that applications dealing with things like setting wallpapers don’t have to worry about supporting GNOME, Plasma, Wlroots, AND Smithay (when COSMIC comes out). How about a universal Wayland protocol implementation that compositors are built on? That way, the developers of, say, wayshot, a screenshot utility, can be sure their program works across all Wayland compositors.

Currently, the lower-level work for creating a compositor has been done by all four of the GNOME, KDE, Wlroots and Smithay projects. To me, that’s just replication of work and resources. Surely if all standalone compositors, as well as the XFCE desktop want to, and use wlroots, the GNOME and KDE teams could have done the same instead of replicating effort and wasting time and resources, causing useless separation in the process?

Am I missing something? Surely doing something like that would be better?

The issue with X11 is that it got big and bloated, and unmaintainable, containing useless code. None of these desktops use that useless code, still in X from the time where 20 machines were all connected to 1 mainframe. So why not just use the lean and maintainable wlroots, making things easier for some app developers? And if wlroots follows in the footsteps of X11, we can move to another implementation of the Wayland protocols. The advantage of Wayland is that it is a set of protocols on how to make a compositor that acts as a display server. If all the current Wayland implementations disappear, or if they become abandoned, unmaintained, or unmaintainable, all the Wayland apps like Calendars, file managers and other programs that don’t affect the compositor itself would keep on working on any Wayland implementation. That’s the advantage for the developers of such applications. But what about other programs? Theme changers, Wallpaper switchers etc? They would need to be remade for different Wayland implementations. With a unified framework, we could remove this issue. I think that for some things, the Linux desktop needs some unity, and this is one of these things. Another thing would be flatpak for desktop applications and eventually nix and similar projects for lower-level programs on immutable distros. But that’s a topic for another day. Anyways, do you agree with my opinion on Wayland or not? And why? Thank you for reading.

  • ExLisper@linux.community
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    7
    ·
    edit-2
    1 year ago

    Normally projects like this address real needs. If X would actually fail to provide crucial functionality on modern desktop someone would develop alternative that would cover it and people would switch in a matter or years. Instead Wayland set out to build something complex and useless for most people and now is surprised it takes a lot of time for it to gain traction.

    How it should be approached is that if people need some very specific setup (like multiple displays with fractional scaling and different refresh rates and they want to play games on it and need to get 100% of their configuration) Wayland should provide them a tool to do just that with dedicated server and DE. Most people wouldn’t need any of this and would stay with X, few people would use the new DE. If more and more people would require the functionality provided by the new DE it would grow, get forked and other DE would start supporting the standard. The approach of “we build something 1% of users need, spend a lot of effort to support us” is what’s silly.

    • Auli@lemmy.ca
      link
      fedilink
      English
      arrow-up
      9
      arrow-down
      2
      ·
      1 year ago

      X is bad code and to hard to maintain. You do know the people developing Wayland are the same ones who developed X11? I think their biggest issue is they should have called it X12 or something so people new it was the successor to X11.

      • ExLisper@linux.community
        link
        fedilink
        English
        arrow-up
        3
        arrow-down
        2
        ·
        1 year ago

        So? What features essential for average Linux user are missing in X11? If the code is so bad I’m sure users struggle to use it. Do they?

        So what that those are the same devs? If X is bad code it would mean we should probably look for other devs to do it, right?

        • Gamma@programming.dev
          link
          fedilink
          English
          arrow-up
          7
          ·
          1 year ago

          features

          • mixed refresh rates
          • (not GNOME) mixed VRR/nonVRR
          • (not GNOME) Better mixed DPI?
          • (not yet, experimental in gamescope) HDR support
          • (not yet, experimental in KDE) persistence through compositor restart

          It was the inability to add features like mixed refresh which caused Xorg devs to push for a new protocol. Otherwise it would be yet another series of janky patches to break assumptions made in a 40 year old protocol.

          Other devs have been working on it. Valve’s contributions to wlroots, KDE, and gamescope can’t be understated.

          • Gamey@feddit.de
            link
            fedilink
            arrow-up
            4
            arrow-down
            1
            ·
            1 year ago

            I admire your effort but there are a lot of people in the open source community and especially on Lemmy that just don’t want to understand it, I try not to argue with them but they are fucking everywhere with their trashtalking of various amazing open source projects!

            • Gamma@programming.dev
              link
              fedilink
              English
              arrow-up
              3
              ·
              1 year ago

              I was curious about what they’d say next. Their argument is “most users don’t need more than Xorg, so it’s ‘silly’ to expect investment in Wayland”.

              I found some agreement in “as more people need Wayland features, investment will grow”, especially with the Valve and KDE/wlroots/gamescope. Also Automotive Grade Linux embracing libweston.

          • ExLisper@linux.community
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            3
            ·
            1 year ago

            None of those features are essential for average user. None of them are even ‘nice to haves’ for like 90% of users.

            • Gamma@programming.dev
              link
              fedilink
              English
              arrow-up
              5
              ·
              edit-2
              1 year ago

              They are becoming more essential by the day. HDR and VRR is supported by just about every graphics card for the last 5 years, and displays which support both can be found for $200 or less. Valve had a reason to add HDR support to Gamescope/Steam Deck; it is a highly requested feature.


              I will agree with you on one point: Xorg is not bad code. Xorg is an awesome project, and has developed and changed to the needs of users exceedingly well for decades. But X11 itself is tech debt. The first ten years of Wayland were spent paying that debt off (while simultaneously continuing Xorg development).

              If the features aren’t what you need, then Wayland wasn’t built to support you today. But you might find yourself in 6 years looking at a gorgeous HDR display which works out-of-the-box on your favorite Linux distro thanks to Wayland.

              • ExLisper@linux.community
                link
                fedilink
                English
                arrow-up
                3
                arrow-down
                1
                ·
                1 year ago

                They are becoming more essential by the day.

                Exactly, they are becoming essential now. They are still not essential and definitely were not essential 14 years ago. That’s all I’m saying. Expecting that everyone will invest a lot of effort to support a project that does not deliver any value to vast majority of users is silly. 14 years later the need is slowly growing so the support is materializing. That should be the approach from the beginning: build something people need.

                • Gamma@programming.dev
                  link
                  fedilink
                  English
                  arrow-up
                  3
                  ·
                  edit-2
                  1 year ago

                  14 years later the need is slowly growing so the support is slowly growing

                  Yes! I agree wholeheartedly. Adoption has been slow because Wayland did not meet the needs of most people more than Xorg did. Cinnamon isn’t moving any time soon because the value-add isn’t enough for the average desktop user.

                  But…

                  build something that people need

                  People have needed HDR and VRR for years. HDR is essential for professionals in video and image editing. They needed Wayland years ago, and it was being built with them in mind, not just the average desktop user in 2012.

                  Not every feature is used by every user of that software. I used X-forwarding over SSH once, ever. It did not add any value to me. SSH forwarding adds no value to the average user either. But it is essential to someone.

                • Static_Rocket@lemmy.world
                  link
                  fedilink
                  English
                  arrow-up
                  3
                  ·
                  edit-2
                  1 year ago

                  If you’re going to marginalize a subset of an already marginalized community then nothing will ever be enough. What kind of an argument is this anyway?

        • zwekihoyy@lemmy.ml
          link
          fedilink
          arrow-up
          4
          ·
          1 year ago

          any form of security in the display server would be nice. X is incredibly insecure with no trivial means of locking it down.