I stumbled upon this post regarding an earlier rant about wayland, but now it seems fine, according to the author.

After using Linux for nearly 5 years, using both depending on distros defaults, I have to admit that I never got the core/main/game changing differences between wayland and x11.

To be said, that I also dont do fancy linux things other than basic sysadmin stuff and from time to time repair the mess my curiosity left behind.

Could somebody explain the differences between those two and afterwards maybe also say some words about what this has to do with the difference between window managers and desktop environments?

I am also happy about links to good blog posts or stuff, that target this very questions (as long as the questions make sence of course). Thanks beforehand :)

    • lattrommi@lemmy.ml
      link
      fedilink
      English
      arrow-up
      4
      ·
      8 months ago

      Excellant write up, thank you.

      I’m not exactly sure what ‘opinionated’ means in terms of software, could you (or anyone who sees this) define it?

    • cornshark@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      8 months ago

      Thanks for the interesting write up! Why does Nvidia have to “adopt” Wayland? Is it not just fundamentally drawing some textures into some rectangles?

        • cornshark@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          8 months ago

          Why does Nvidia need to support night light? Can’t someone from Wayland just write a simple shader in any shader language that does colour adjustments and apply it to the desktop?

    • guy_threepwood@lemmy.world
      link
      fedilink
      arrow-up
      2
      arrow-down
      3
      ·
      edit-2
      8 months ago

      This reads like an AI response to me.

      Mac OS has never used X11 as a primary display system. Apple had a version they supplied with older Mac OS X versions for people using older Unix applications (and half-arsed ports) but that’s been unsupported since 2012. You can still install the modern “XQuartz” open source equivalent, but it’s still secondary.

  • jecxjo@midwest.social
    link
    fedilink
    English
    arrow-up
    20
    ·
    8 months ago

    One thing to note with X11’s design, having a server and client, there was nothing requiring both to be on the same machine. You could run an X11 client on your local machine, ssh into a remote machine and use its X11 server.

    Lets say you are home and can ssh into a work server. You could run Firefox on the work machine, using it’s network and have the visual parts show up on your home computer.

    This was very much a Unix, shared resource style design. Servers and thin clients. Put all your horse power in the big machine and connect using your crappy low power system to it.

    • qaz@lemmy.world
      link
      fedilink
      English
      arrow-up
      8
      ·
      edit-2
      8 months ago

      Keep in mind that in practice this didn’t work that well, it wasn’t very efficient at displaying modern interfaces over the network. Showing a simple text editor over LAN worked fine, but using Firefox from another place was quite spotty.

      • jecxjo@midwest.social
        link
        fedilink
        English
        arrow-up
        2
        ·
        8 months ago

        Oddly I think the only cases I ever used it where I was connecting to my home computer from outside my house was when I needed to connect to my router’s webpage. SSH to my home computer and then pull up the browser to open a port on my DMZ or other such nonsense.

        When at home and just using LAN bandwidth it was to run lesser programs.

    • 𝘋𝘪𝘳𝘬@lemmy.ml
      link
      fedilink
      arrow-up
      2
      ·
      8 months ago

      Back than I tried this. The performance was horrible, even on a good connection. It was barely tolerable on LAN, but over the Internet … no. Just no. There were and are better solution for accessing a remote machine.

  • juipeltje@lemmy.world
    link
    fedilink
    arrow-up
    9
    ·
    8 months ago

    I won’t bother going into technical details about x11 and wayland since other people already explained it much better than i ever could, but basically wayland is supposed to be replacing x11, because the codebase is so old now that it has become very hard to maintain and implement new features without breaking things. A window manager pretty much only handles the placement of windows on the screen, and you have to use seperate applications for setting a wallpaper, getting notifications, application launcher, etc. Whereas a desktop environment is a fully fledged out of the box experience. I personally really like window managers because i like the workflow of tiling window managers in particular, which places the windows in a predefined layout for you. Something that might be a bit confusing is that window managers on wayland are called compositors, which is because in wayland the window manager also has to do it’s own compositing. In x11 you could use something like picom, which is a seperate compositor program that you could use to add graphical effects to any window manager, but on wayland this doesn’t exist and the window manager has to implement its own compositing.

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

    For your second question, a window manager is the specific system that controls the placement of windows on an X11 desktop.

    On a X11 based system, X11 is the windowing system (interacting with the video card) and a window manager is a system sitting on top of that laying out the windows and interacting with the user and other programmes. It is a separate programme on top of the X11 system, and communicates with X11, and X11 is the programme that communicates with the graphics card.

    On Wayland, instead of 2 separate systems there can be 1 combined windowing systen that is both the window manager but also directly communicates with the hardware in a standardised way using the Wayland protocols. This is called a Wayland compositor.

    Meanwhile a desktop environment is the whole desktop - that includes a window manager or compositor but also lots of other tools and software that together make a full desktop experience.

    An example is KDE - KDE is a full desktop environment. It uses its own x11 window manger called kwin (and also able to be a wayland compositor), but it also uses a whole range of other tools alongside that to give you panels, widgets, desktop icons, a clock, menus, settings etc collectively forming Plasma desktop. And then on top of Plasma there is a whole range of bespoke programmes that form the full deskop experience - like Dolphin (file manager), Kate (text editor) and so on. All that software is designed to work seamlessly with the KDE family of tools and systems. The window manager, the desktop tools and the other programmes together form the whole desktop environment. But other desktop environments software will also work - for example Gnome based software can also run with KDE without issue and vice versa.

    Gnome has its own window manager/compositor, and it’s own widgets and tools to make a desktop, and it’s own bespoke software to make a whole desktop environment.

    And there are many others.

    So in summary:

    • Window Manager - the specific system that controls the placment and look of the individual windows talking to X11 which then talks to the hardware

    • Wayland Compositor - the system that controls the placement and look of windows, using wayland protocols to speak to the hardware

    • Desktop Environment - the whole desktop including the Window manager but also lots of other programmes and tools that form the basic desktop (such as a panel, menus, desktop icons) and the whole environment (other software like a file manager, text editor, calculator etc). KDE and Gnome are examples of popular desktop environments