> If you like Xorg, use Xorg. If you like Wayland, use Wayland. If you're not happy about an issue, contribute to it.
The problem is that RedHat nee IBM are attempting to force everybody onto Wayland by dropping X11 support. They already tried once and the outcry was so huge that they had to back off saying they would try again next version.
This is kind of a rock and a hard place. The Wayland developers don't want to support X11 but neither does anybody else. Wayland is fundamentally broken in many ways down at the architectural level, but the sunk cost fallacy keeps them working on it.
Everybody forgets that Wayland predates Vulkan. A "real" replacement for X11/Wayland probably needs to restart from "Vulkan support is the base layer" and build up from there.
> Wayland is fundamentally broken in many ways down at the architectural level, but the sunk cost fallacy keeps them working on it.
> Everybody forgets that Wayland predates Vulkan. A "real" replacement for X11/Wayland probably needs to restart from "Vulkan support is the base layer" and build up from there.
I wonder if you could point me in the right direction to learn more about this?
Erm, what do you want to learn? Wayland dates to 2008--Vulkan dates to 2016. That's an EON in tech.
Wayland chose "we will control the compositing to avoid all tearing". This is suboptimal nowadays with monitors with multiple refresh rates some of which are on completely different graphics cards. It's better to let an application have a Vulkan (or equivalent) surface, draw to it, query, and choose its own linkage to the refresh rate. Also, nobody other than Wayland devs give one iota of damn about performance or tearing during resizes (see: macOS and Windows). There's also the issue of how much resource Wayland compositors have to overallocate in order to be able to composite everything. I have applications that regularly crash because Wayland chewed up too much VRAM and the application couldn't get sufficient VRAM resources.
It's better to let something like Zink handle OpenGL rather than try to provide an OpenGL interface. It's better to give something a surface and let Vulkan handle video rendering onto the surface (the application understands whether it needs to do something like sync to audio or whether it is just an animation). etc. This is even more especially true in the world of massive multicore/multithread.
Then there are the architectural decision that range from the silly to the flat out wrong. Fractional scaling is handled by doubling and shrinking--that's a huge waste of processing. Gnome idiocy around client-side decorations which are just a disaster because it forces everybody to link to C/C++ libraries even if they aren't using C/C++.
Security stuff that has been a disaster: Stopping or arbitrarily jiggling the refresh rate to prevent "application fingerprinting" is dumb and just pisses everybody off. Pointer and focus issues because you might figure out some way to intercept people typing. Screenshot/screencast is an absolute PITA because "security". Input Method and accessibility that threw out a ton of working stuff from X11 that still hasn't been replaced.
I mean, the Wayland developers are not wrong that these things are security issues ... but you can't let them continue to persist for more than a decade and then wonder why people think your project sucks. If you don't give them something, then don't complain when they go back to the old, shitty, insecure thing that works.
As you can see, there are a LOT of corner cases to be covered. This is the primary problem. The video subsystem is a lot of fiddly work that very few people are qualified to do. Look at how much work Asahi Lina and Alyssa Rosenzweig had to do to make graphics work on Linux on Apple hardware. Now, multiply that out and you can see just what a mountain this stuff is.
Be aware that in the discussion above, Vulkan can be substituted with Direct12 or Metal which are effectively the exact same graphics API.
Which is actually probably the end result of all of this. We're probably going to wind up with some version of Win32/DX12 APIs on Linux thanks to Steam as that would give you portability betweeen Linux and the biggest OS platform. And, to be fair, most users would probably be happier...
They have converged to the point that the APIs are extremely similar. To the point that you can add a translation layer from Vulkan to Metal (MoltenVK) and lose very little performance, for example.
The concurrency primitives are very similar. The way they all manage memory is a little different, but not horribly so.
And now that DirectX and Vulkan are both supporting SPIR-V as the shader intermediate format, things really have converged.
The maintainer of Xlibre was not the "main maintainer" of Xorg. It is all smoke and mirrors, a fake-it-till-you-make-it strategy to be able to prematurely say "I am a X developer" without having put in the work. Their commits only go back to 2022 and they are all miniscule changes that haven't fixed any of Xorg's architectural warts.
It is not. However, Wayland had to make certain decisions up front that later turned out to be significantly suboptimal in the context of a graphics world that converged to DX12/Vulkan/Metal and all look roughly the same from an abstraction level.
That doesn’t really work. If there’s no longer a browser which supports X11, then I have to choose between browsing the web and having a usable desktop.
The problem is that the Wayland folks are trying to replace X11 rather than provide an easy upgrade path. They simply don’t care about anyone who uses a computer in any way outside of the ways they can be bothered to support. ‘It’s better!’ they cry, despite users telling them for well over a decade now that it’s not actually, because we cannot do the things we want.
And Wayland is being used as a form of lock-in. ‘GNOME uses Wayland now. Just drop support for that crufty old X11,’ they whisper. Never mind that plenty of folks don’t use GNOME and don’t want to use GNOME. Never mind that Wayland is still not fit for purpose.
It may be someday, and that would be great. I’d genuinely look forward to being able to move on from X11. But Wayland does not work for me, and as projects start to remove support for X11 they are removing support for me.
It has been almost 20 years and Wayland JUST merged pointer warp support (literally like last week)--which is absolutely fundamental to both CAD and menu systems.
So, no, Wayland does not support some very important use cases.
If you've had 20 years and can't be better than what you claim you are replacing, what does that say about you as a programmer or organization?
In this case, there are some genuine arguments that what the Wayland developers are doing is, at the least, kind of anti-social and quite possibly harmful to the Linux ecosystem.
This was kicked off because KiCad (and other applications that use X11) wound up with a whole bunch of bug reports because Wayland developers broke mutter which broke XWayland which broke a whole bunch of apps. This wasn't a subtle bug; it made it very clear that RedHat doesn't even do basic application testing inside of XWayland.
So, a whole bunch of applications had to field a whole bunch of bug reports that weren't their fault simply because a "Linux" company with lots of money and resources can't be arsed to not cause collateral damage.
Consequently, people are starting to ask some really hard questions as to whether the overall Linux community would be better off without Wayland.
> i have yet to come across an X11 application that does not run despite using wayland.
That is both the good thing and the bad thing. Application software can seamlessly work on Wayland via XWayland. Anything that needs to touch things outside its own window - notably, a11y and automation tools (which in fairness are functionally the same thing) don't have it so easy.
Is it possible to run an X11 window manager in XWayland and have it manage Wayland windows and intercept keystrokes for all windows?
If not then it’s not really an upgrade path.
I do get it — no-one owes me anything. They don’t even, really, owe me the kindness of not breaking the software I use. In principle I could fork and maintain everything I want myself, or working with others. But …
that's not fair. window managers are not regular apps. wayland has a different architecture that changes how windows are managed. this also has to affect things like taking screenhots, screen sharing, recording, locking, screensavers, etc.
intercepting/sending keystrokes in particular had to be redesigned to make to make it more secure. without that there would not have been a point to wayland at all.
your actual apps that just display stuff on the screen and take your input all still work though.
> intercepting/sending keystrokes in particular had to be redesigned to make to make it more secure. without that there would not have been a point to wayland at all.
Sure, and I really would like to enjoy that security improvement. But would an evolutionary approach have been possible?
For example, would it have been possible to start by running Wayland with all programs in a privileged status, then migrate to using something like OpenBSD’s pledge(2) to spawn programs preferentially in an unprivileged status, then migrate to spawning some programs (e.g. legacy X11 display managers) in a privileged status?
It sure seems like Wayland requires a lot more work from software using it than X11 did. Wayland has been out for 16 years and still isn’t almost universal; 16 years after X11’s 1984 release it was well-nigh universal.
Again, I get that no-one owes me anything. But it seems to me that the Wayland developers committed the fundamental error of trying to replace a working system with vapourware. It’s still vapourware, in that in 2025 Wayland is still not a drop-in replacement for X11.
> your actual apps that just display stuff on the screen and take your input all still work though.
My display manager is an actual app that is a fundamental part of my workflow.
> It’s still vapourware, in that in 2025 Wayland is still not a drop-in replacement for X11.
If it was vapourware, nobody would find it useful. I have been using it for 4 years, it works. I wouldn't call that vapourware.
Question: how do you feel about systemd? Feels similar to me. Nobody forces me to use systemd (and I don't), but the evolution is such that more and more software assumes systemd and it hurts the minority who is not using it.
In order not to use systemd, I can choose a distro that supports something else. Aren't there distros out there that still support X11? Surely that must exist...
At some point though shouldn’t we just push a new standard in order to increase adoption (and thus support/stability)? Thinking heavily of Apple and USB C.
> That doesn’t really work. If there’s no longer a browser which supports X11, then I have to choose between browsing the web and having a usable desktop.
You can keep using the older software? No one is forcing you to upgrade? Should these people be forced to work on projects they don't like?
I wrote in a sibling comment ‘I do get it — no-one owes me anything.’ No-one should be forced to do anything. Folks are and should be free to work on whatever suits their fancy.
But folks should also have a sense of duty or responsibility not to needlessly interfere with others. I am free to release a reïmplementation of ls(1). I’m free to extend it. But I shouldn’t change the meaning of ‘ls -d’ to delete all matching files, because it conflicts with POSIX. I shouldn’t change the meaning of ‘ls -b’ to overwrite matching files with nulls (blanks), even though POSIX doesn’t define it at all and in theory I am free to do so, because GNU ls(1) already uses it for printing C-style escapes.
Sure, it is. But does it matter? I don't think so.
I was happy with Xorg, and there were things it couldn't do that I didn't plan on contributing, so I didn't complain to them.
I am now happy with Wayland, and there are things it cannot do that I am not contributing, so I don't complain.
What I see is that Wayland is quite active and they actually added things I needed that didn't exist a few years ago. That's great. Many people seem to be very vocal about how they prefer Xorg because it works for them: that's great, they can use Xorg.
Someone wants to write another one? That's great, let them do it.
Linux is about diversity. Don't come to Linux and ask it to become Windows or macOS.
FreeBSD and even some Linux distros use boring technology™ that just works, thank you. I don't need breakage due to diversity, I need a stable OS that is reliable, works and doesn't crash.
You want boring technology that works, there's certainly an open source distro for you. And there are open source distros for people who have different needs. "Diversity".
If you like Xorg, use Xorg. If you like Wayland, use Wayland. If you're not happy about an issue, contribute to it.