Famous country western singer Wayland Jenkins.
Just don't ask what hyprland is.
Wayland is a modular communication protocol that specifies how a compositor interacts with its clients, as well as a replacement for X11.
Wayland does not aim to provide a commonly used compositor implementation that could be used by everyone.
This modular approach allows for different desktop environments to have their own Wayland compositor implementations that reliability produce the same or virtually the same output based on the communication specifications without the increased challenges of integrating it into existing Desktop Environments or Window Managers as it allows for more flexibility in implementation. As an analogy, it's like if several people were making the same type of sandwich in different ways, as long as the "client" (the application) gets the sandwich they asked for, the specific process doesn't matter.
In contrast, Xorg is a single, monolithic X11 implementation. Due to Xorg's dated, non-modular design, maintaining and extending it's functionality is extremely difficult. Infact, it's lack HDR support to this day is due to its inflexible architecture.
Wayland compositors combine the functionality of a display server, window manager, and compositor into a single component. This simplified architecture is one of the main design goals of Wayland compared to Xorg/X11 where the display server, compositor & window manager are separate components. This approach ultimately streamlines the rendering pipeline where applications render locally and communicate directly with the compositor, cutting out the X server entirely. Wayland's client-side rendering is more modern and cleaner than Xorg's approach.
So you wanna go from home to school. The whole distance/trip can be done on a bus or your moms car. That's a means of transportation. But, now people are creating a train and soon you will have another means of transportation that you can go to school with, by train.
That's it, Wayland is another means of transportation (newer) than the older means of transportation that existed for a long time, x11 or xorg.
The route is how can applications show stuff on a screen, what transport should they use.
Okay I think I'm following so far
And the whole "show stuff on screen" thing
I'm guessing it's kinda like: you've got a couple people sitting there wanting to play with Legos and only so much room to play. They don't have direct access to the play area because of security reasons so they have to ask someone to place the Legos for them. Wayland, X11, and Xorg are all different people they can talk to to place the Legos in a way where no one is fighting for space.
So basically it's a new way for programs to negotiate who has what part of the screen?
I'm guessing Wayland is either more feature rich or lighter on resources and that's why it's a big deal?
Yeah, it's a new way that programs use to draw their stuff on the screens.
In the middle usually are other stuff that abstract away that part from normal application development, so in general, most applications don't need to care with the low level thing that is being used to draw their stuff, but there is always somethings that some apps will do to bypass or expect to work in a certain way, so sometimes changes and time are need to adjust those applications to play well with the new way of drawing.
The core idea of why Wayland matters is that it is designed to take advantage of the hardware features and how hardware is designed in this century. On xorg, since it was designed around the architecture and expectations of what people thought things should work in the 70s, it was becoming really hard to add features related to how newer hardware worked. Things like multiple gpus, prime architectures, multiple surfaces/screens with multiple aspect ratios and dpis, varying refresh rates, taking advantage of hardware acceleration for graphics drawing, etc, were all really hard things to do because the code had multiple concepts not applicable to the modern age. So, essentially developers were already bypassing 99% of the internals of xorg architecture and hacking things in a very hard way. They basically decided/experimented with stripping apart all the things they didn't need and didn't matter and reduced it to the most basic and core thing that mattered: "how to push these pixels to that surface".
It ended up being a successful experiment, in that it showed it was possible to do.
Now, in the current world, there are solutions that need to be implemented to bring some features up to speed since the wayland thing is so core and barebones. And this is a good thing. It allows developers and applications to think really hard about what they need to do and how they should do and how things should work across all toolkits and desktop environments. Obviously this takes time to make decisions and ensure everyone is onboard, experiment and reiterate on it until good solutions are found.
This last point is what makes end users frustrated when trying wayland because some things are lacking or not ready yet. For the general use, users without really specific needs, they can already use wayland now, but for others they can't because of their particular needs or specific hardware situation.
If xorg is working for you, then there's no need to worry. If it's invisible to you then most likely you shouldn't care, because the desktop environments are changing their sessions to use wayland by default and most users will not perceive any difference. If users see problems and then notice that it's related to using wayland they can choose explicitly to use the xorg version since it will still work for a while.
Hope I didn't make it too complicated now.
The part about negotiation is a bit off-track.
On one end, in the kernel, there's a big array of pixels that is a picture that gets drawn on your monitor (or monitors). On the other end are a bunch of programs that want to draw stuff, like pictures of your friends and web pages. In between is software that decides how the stuff the softwares want to draw get put into the pixel array. This is Wayland; it was written to replace Xorg, which is what did that job for decades prior to Wayland.
If you understand the concepts of Xorg and window managers, Wayland + a compositor = Xorg + a window manager. Wayland abdicated a lot of work to the compositors, making it simpler and easier to maintain (and compositors more complex and harder). But together, they all do basically the same job. If one of the compositors implemented a network protocol, then you could declare equivalency.
I have been sort of following Wayland's development for over 10 years now. I have been using Wayland for over 2 years now. I have been reading and watching various lengthy arguments online for and against it. I still don't feel like I actually know it even is, not beyond some handwavey superficialities. Definitely not to the extent and depth I could understand what X11 was and how to actually work with it, troubleshoot it when necessary and achieve something slightly unusual with it. I feel like, these days, you are either getting superficial marketing materials, ELI5 approaches that seem to be suited at best to pacify a nosy child without giving them anything to actually work with, or reference manuals full of unexplained jargon for people who already know how it works and just need to look up some details now and then...
Maybe I'm getting old. I used to like Linux because I could actually understand what was going on…
it's Xorg's opponent. The challenger.
It is the Way
Isn't he the personal assistant to Mr Burns?
Okay, I’m not OP but a follow up question that occurs to me reading the explanations of what Wayland is, is are there any distros or spins of distros that use Wayland by default?
it's like fight club, but don't tell them i told you 😳💦
it is a window protocol like x11. It is like x11 but new
Wayland is X11’s little brother.
linuxmemes
Hint: :q!
Sister communities:
Community rules (click to expand)
1. Follow the site-wide rules
- Instance-wide TOS: https://legal.lemmy.world/tos/
- Lemmy code of conduct: https://join-lemmy.org/docs/code_of_conduct.html
2. Be civil
- Understand the difference between a joke and an insult.
- Do not harrass or attack members of the community for any reason.
- Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
- Bigotry will not be tolerated.
- These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
3. Post Linux-related content
- Including Unix and BSD.
- Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of
sudo
in Windows. - No porn. Even if you watch it on a Linux machine.
4. No recent reposts
- Everybody uses Arch btw, can't quit Vim, and wants to interject for a moment. You can stop now.
Please report posts and comments that break these rules!
Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't fork-bomb your computer.