4 ms·
The problem with Wayland is really that people understand it to be a drop-in replacement of X11, or something close to it. But it's not a replacement of X11. Yo
by DCKing 6y ago
The problem with Wayland is really that people understand it to be a drop-in replacement of X11, or something close to it. But it's not a replacement of X11. You don't "switch to Wayland", despite what that GDM button seems to indicate. Wayland is just a protocol, whereas X11 is a protocol and entire system around it.
So Wayland is not a replacement of X11. Gnome on Wayland should be a replacement for Gnome on X11. KDE on Wayland should be replacement for KDE on X11. Sway on Wayland should be a replacement for i3 and X11. But as you can imagine in this equation, KDE, Gnome and Sway are permitted and required to take on more responsibilities.
You might take issue with the fact that a lot more of the display stack gets tied up in specific desktop environments. It's KDE and Gnome and Sway that are not providing you these command line tools/screen recording/clipboard access. I don't mean to say this as nitpicking or that """Wayland""" (whatever that means) is dropping the ball, but this is really the responsibility of the desktop environment (or WM) in Wayland's design. Wayland is just a protocol.
What you're observing as shortcomings in Wayland is really a lock of pace and direction of development for (e.g. Freedesktop) standards that standardize clipboard access/screen recording use cases, and the adoption of those standards. The Linux community seems to have been hit by 1) not realizing Wayland does not replace X11 and 2) realizing that, not being to coordinate standardization well of the pieces of the X11 stack that should be replaced as well. If you need to replace X11, you need a lot more than just Wayland. But that seems to keep on catching people by surprise.
I think it'd be helpful for the future of the Linux desktop if more people recognized that.
- ubercow13 6y agoDeprecating Xorg and providing no replacement standard/protocol for almost everything it does and enables is kind of the whole problem, isn't it?
- andyjpb 6y agoNo matter how horrible X may be, it has a lot of value for end users. Almost all of this value is in the ecosystem around X. You can't capture an ecosystem unless you provide that value, plus the activation energy needed to persuade people to change. systemd (as an example of a large, recent, change to the "whole system") touched end-users far less than X so the pain was felt mainly by distributors and sysadmins. Time and again, software that's "better" fails in the market because it doesn't provide the things that users need, want or use. Backwards compatibility is usually key when trying to capture a large, long established user base. ...and that means backwards compatibility even (or especially!) with all the "bad" or "wrong" stuff. This is one of the things that makes software "products" much harder than software "engineering" (which in turn is "harder" than computer science). Science is how it works. Engineering is getting it to work and productisation is getting people to adopt it. Wayland has to solve problems that end-users actually care about rather than just being better in technical ways.
- DCKing 6y agoTo be fair to """Wayland""" (again, whatever that means), Gnome on Wayland seems to be a lot better when it comes to the core smoothness of the desktop experience. I have never seen tearing on Gnome on Wayland, and with X11 I saw it every day. I haven't used KDE on Wayland extensively, but in my short time with it it was a lot less glitchy graphically speaking than X11. For all the shortcomings of the """Wayland ecosystem""", there seems to be true technical merit Wayland has over X11. If only because it fundamentally solves X11's buffer sharing problem. But the writing's on the wall. This change is not coming about through market forces as you're suggesting, but where the developer's interests are. And that's pretty clear X.org's development has slowed down significantly compared to whatever is happening around a Wayland ecosystem. Although sadly not as much effort is put into the stuff that is needed outside of Wayland.
- 4bpp 6y agoI think tearing may be one of those personal preferences where the population is divided down somewhere near the middle, but people on either side can not fathom the existence of the other as anything other than some sort of bad-faith exercise in contrarianism. At least, I for my part could never imagine ever willingly giving up a "real feature" (my perception!) like xdotool for the cosmetic benefits of no tearing (which to me feels like a problem on the importance level of "getting the blinky blue LEDs on your GPU fan to work"), but at the same time there is clearly a large number of people on tech support forums, stackexchange etc. to whom it is of show-stopping significance, as evidenced by the effort and time put into achieving non-tearing and how often it is presented as a self-evident killer feature of systems like Wayland.
- saurik 6y agoThat tearing issue even comes from a tradeoff space: a couple days ago on another thread about X people were noting that to avoid the tearing Wayland seems to have higher latency, and some people (and I would be one of them, were I to experience this) care way more about lower latency than "never ever ever see tearing".
- mcguire 6y ago"Wayland is just a protocol, whereas X11 is a protocol and entire system around it." This statement doesn't make sense to me.
- DCKing 6y agoWayland is a display protocol. X.org is a display protocol, its own server implementation of that protocol, and many utilities to interface with that server. And even more stuff. To illustrate this: if you run Gnome on X.org, you will see you have an 'xorg' binary running in addition to all the Gnome stuff. That's the X11 server from X.org. If you run Gnome on Wayland, there's no 'wayland' stuff running. There's just Gnome implementing the Wayland display protocol. That's why this "switching to Wayland" talk is just missing the point. You're not really switching to Wayland, you're just switching to a "pure Gnome" stack, or a "pure KDE" stack, or a "pure Sway" stack. These stacks all just happen to implement the Wayland protocol in their own compositors (i.e. Mutter, KWin, Sway) because they're committed to standardization and all want to run GTK3+Qt5+Ozone+XWayland+etc apps built for Wayland.
- wnoise 6y agoYes, and I don't want to switch to a pure stack from _any_ desktop environment. I want all these things to easily mix and match. And for all these things outside the pure wayland protocol (and some supposedly inside it), they don't.
- DCKing 6y agoI'm not sure why that's your takeaway here. Wayland exists precisely because things should easily mix and match - it should be easy to get your apps displaying/moving on any standard compositor. The same would go for other Freedesktop standards to do things like input, clipboard interaction, and screen recording. The only difference is that all these things currently used to exist within the X.org project, and now they're in various other places (some parts in fact don't exist at all...). There's nothing stopping people from abstracting a lot of this functionality out in a library for others to more easily build their own stuff with it [1]! If anything the efforts replacing X11 will make it easier to mix and match components, because it gets rid of the focus on the singular X.org implementation. Not saying multiple implementations of the same thing is necessarily a good thing mind you, but you can't accuse these efforts of making it more difficult to mix and match. [1]: e.g. https://github.com/swaywm/wlroots https://github.com/swaywm/wlroots does some of this to make it more easy to build a window manager that supports Wayland
- nine_k 6y agoIt looks like a ton of common functionality is not ready yet. It is dispersed among DEs, and this is not convenient. I hope we'll eventually have some "wayland-goodies" package which will implement the common stuff like easy screenshooting, easy hotkey assignment, easy window inspection and control, etc. I suppose this can be implemented based just on the protocol, and not specifics of a compositor.
- this_user 6y agoMaybe the problem is precisely that Wayland is not an X replacement, because that has led to a situation where there is a certain mismatch between the different pieces of the stack. Few people really understand what Wayland actually is, and how it works, and how it all fits together, which means only few people are actively working on the ecosystem. Love it or hate it, but systemd has been around since 2010, and is almost ubiquitous by now. Wayland has been around since 2008, and it still seems more like a tech demo for most use cases rather than something that is production ready. There is clearly an issue with this project.
- DCKing 6y ago> Maybe the problem is precisely that Wayland is not an X replacement For the understanding of all of this by the community, certainly. But Wayland could have never been a direct replacement for X. The problem with X is not that it's old or poor quality. Even if that were so, that is fixable. The problem with X is that its fundamental design principles are not suited to a desktop made after the early 1990s. The reason X is much more entrenched than being a display protocol very much has to do with every X running system having a standardized X server any system process can talk to. That client server principle was fundamentally flawed and Wayland fixes that, but that very same client server principle allowed this X ecosystem to thrive. Any "X replacement" that did away with X11's core design problems would therefore run into not being able to replace the ecosystem in the same way. If there would have been a coordinated effort to replace X, we would have needed a much broader initiative pop in 2010. An initiative where Wayland is one component, something like PipeWire another, and some Freedesktop IPC standards for e.g. accessing the clipboard and other features provided out of the box by X11, and reference utilities implementing those standards. But coordinated efforts like that are not really how the free software community works! So Wayland just evolved out on its own. It started as a small effort by developers frustrated with X11 the display server protocol. The community then proceeded to take the line "Wayland is a replacement for X.org" and then ran with it, creating confusion everywhere, and stifling progress to replace X11 in the process. Systemd is quite unique in the free software world because it's a tremendously coordinated effort and has taken on a broad scope. And just look at the sheer amount of vitriol that ended up getting just for those aspects of the project. It's just not how the community likes to operate, or at least a vocal minority does not like this.
- djur 6y agoThis was so predictable, though, considering how slow and painful it was to get to even the current level of standardization and interoperability in the Xorg+Freedesktop world. I have to assume that part of the reason is that solving the problems Wayland solves is exciting and fun (and addresses the most obvious pain points with Xorg/X11), but building the rest of the ecosystem is less exciting and doesn't draw as much focus and engineering effort.