Title

  • lloram239@feddit.de
    link
    fedilink
    arrow-up
    58
    arrow-down
    7
    ·
    edit-2
    8 months ago

    X11 is an multiple decade old dinosaur, the developer decided it was growing too complex and no longer representing how graphics are done on modern systems and decided a rewrite. While doing so they decided to simplify some things along the way and in doing so they drastically overshoot their target and removed tons of fundamental functions that was present in X11 (stuff like being able to take screenshots, window manager, etc.). Some of that is slowly getting reimplemented and Wayland is getting closer to actually being a feature-parity X11 replacement, but it’s also taken 15 years and is still not done. The whole drama is the conflict between people wanting it as default and the other group of people for which it simply doesn’t work in its current state.

    • rufus@discuss.tchncs.de
      link
      fedilink
      arrow-up
      58
      ·
      8 months ago

      That is partly correct. Wayland is not based on X.org. There is nothing rewritten, removed or simplified. It’s an entirely new design, new code with a different license. And X11 isn’t written by a single developer. XFree86 was started by 3 people, got maintained by an incorporated and then became X.org and sponsored by an industry consortium (the X.Org Foundation). Many many people and companies contributed. The rest is correct. It grew too complex and maintenance is a hassle. Wayland simplifies things and is a state of the art approach. Nobody removed features but they started from zero so it took a while to implement all important features. As of today we’re almost there and Wayland is close to replacing X11.

      • mub@lemmy.ml
        link
        fedilink
        arrow-up
        18
        ·
        8 months ago

        Also, doesn’t Wayland do things x11 can’t, or did badly, like Variable refresh rate ?

          • rufus@discuss.tchncs.de
            link
            fedilink
            arrow-up
            7
            ·
            8 months ago

            And it will become more as development focuses on Wayland. If you look at X11’s release history, there is (and has been for quite some time) only the most important things going on. That doesn’t necessarily mean things are impossible to do with X11. But it’s just the way things are once something slowly gets replaced by something else.

      • kevincox@lemmy.ml
        link
        fedilink
        arrow-up
        6
        arrow-down
        2
        ·
        8 months ago

        That is the definition of a rewrite, no? They started from scratch. Otherwise it would be a refactor, cleanup or overhaul.

        And yes, it was more than one developer but Wayland was largely started by at-the-time X maintainers.

        • rufus@discuss.tchncs.de
          link
          fedilink
          arrow-up
          6
          ·
          edit-2
          8 months ago

          Hmmh, to me rewriting something means something like writing it again, or revising it. But it’s entirely new, not based on the predecessor, they didn’t have the old code or architecture in mind and it ended up in a different place with different features. So I don’t see a “re-”, just a “write”. I’d say it’s the same category of software (display servers / -protocols) but entirely different and independent from each other. I’d use the word ‘rewrite’ if they were dependent on each other in some form or if one was meant to replicate the other one.

          • kevincox@lemmy.ml
            link
            fedilink
            arrow-up
            1
            arrow-down
            2
            ·
            8 months ago

            I think that’s generally the point of a rewrite. To start from scratch with a better architecture. If you weren’t changing the architecture then you can probably just keep incrementally improving it.

            • elauso@feddit.de
              link
              fedilink
              arrow-up
              3
              ·
              8 months ago

              When you do a rewrite you want to create the same product as before just with better code / architecture. That’s not what Wayland tries to do.

            • zarkony@lemmy.zip
              link
              fedilink
              English
              arrow-up
              1
              ·
              8 months ago

              Yes, but the word rewrite implies that it would serve the same function and retain compatibility.

              If someone wrote a new implementation of the x protocol, as a drop in replacement for the existing x.org server, you might call that a rewrite.

              Wayland is an entirely different solution to the same problem. It doesn’t follow the x protocol, and doesn’t maintain compatibility with the x.org server.

      • LeFantome@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        8 months ago

        I don’t know that I would say that Wayland is not based on X11. It is a rewrite, not a fork but it is the next chapter of a common history.

        Wayland and Xorg do share a lot of code in a way. Libraries like libinput, libdrm, KMS, and Mesa are used by both.

        • rufus@discuss.tchncs.de
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          8 months ago

          I think @elauso@feddit.de did a better job explaining it… It’s a rewrite if you’re trying to create the same product as before. And that’s not what Wayland is trying to do.

          I mean we also don’t say a car is a rewrite of a train (or vice versa) but they share some of the same components (wheels, seats, a driver…) And libinput, drm, mesa aren’t copied to the source code. They’re seperate projects and components/libraries that are used via an interface that makes them reusable. Lots of other projects also use the same set of libraries. For example networking. Or games that are built with the same game engine.

    • WindowsEnjoyer@sh.itjust.works
      link
      fedilink
      arrow-up
      7
      arrow-down
      5
      ·
      8 months ago

      On X I can do everything, on Wayland I can’t:

      1. Enable hardware acceleration in some apps
      2. Games have greater latency
      3. Some games shadowing under wayland
      4. Nvidia sometimes crashes. Their “nvidia-open” driver doesn’t work with Wayland at all
      • Shalade@lemmy.world
        link
        fedilink
        arrow-up
        12
        ·
        8 months ago

        Half of what you said are either issues with your current compositor’s implementation or Nvidia driver related issues, since Wayland on both KWin and Mutter under AMD don’t present any of these issues, atleast for me, while I had the latency issue you mention with my older 3080 card.

        The protocol is still under development after 25 years yes, but at the end of the day you vote with your wallet, and Nvidia clearly doesn’t give a shit about open-source or Linux as a whole since we’re a minority.

      • TheGrandNagus@lemmy.world
        link
        fedilink
        arrow-up
        3
        arrow-down
        1
        ·
        8 months ago

        You’re mixing this around. It’s Nvidia that doesn’t support Wayland, not the inverse.

        Bit like saying “Linux doesn’t support Photoshop” instead of “Photoshop doesn’t support Linux”

      • Kangie@lemmy.srcfiles.zip
        link
        fedilink
        arrow-up
        1
        ·
        8 months ago

        Nvidia sometimes crashes. Their “nvidia-open” driver doesn’t work with Wayland at all

        Really? It’s been working for me since day 1.