Most of the post is an “argument from authority”: Trust me, I have a PhD and maintain my own X server, and I assure you that Wayland is a pile of shit!
OP claims that “actually nothing will actually run” because the stable Wayland protocols lack so much important functionality. In reality, many people use Wayland every day, and multiple large distributions use it as the default display server. This doesn’t inspire confidence in OP’s knowledge.
Admittedly, the first bug they linked is a real issue and it should be fixed, but it’s not a Wayland design flaw. It’s an (arguably important) feature that hasn’t been implemented by all compositors yet. With the second bug OP laments that Wayland compositors are implemented in C, an unsafe language. This is true about X.org too, so I don’t really see the point. Arguably Wayland improves on X11 here, because someone could develop a new Wayland compositor in Rust, while in X11 this is a core part of the display server.
It does give anti-SystemD “why make new when what we got now is good vibes”.
Their Java bashing was more a criticism of design patterns than Java, but fell into the meme bashing of tech based on one example. Find an old bug and say tech us dreadful as a result.
With the second bug OP laments that Wayland compositors are implemented in C, an unsafe language.
That’s not what they’re saying. They’re saying wlroots is full of race conditions, which will be very hard to fix because they’re part of a fundamental design problem.
That is a serious problem, but advocating X11 will not solve anything. Wayland is being improved every day, while X.org is in deep maintenance mode.
And let’s not pretend that X.org is perfect. Race conditions at least can be fixed, even if it takes a lot of time and effort. Worst case, someone will rewrite wlroots in Rust. But in X11 any application can kill other applications, install a key logger, pin itself to the foreground, etcetera. This is by design: it’s what makes window managers,
xkill
andxeyes
work. It’s also a huge security flaw that can never be fixed.That security argument is like advocating wearing a motorcycle helmet when walking down the street. It sounds like a great idea and super safe, but it’s also super impractical and the things it’s supposed to protect against are extremely unlikely.
But ok, more security isn’t a bad thing. But why not make it an option, like SELinux for example? That way users can choose a degree on a scale between security and convenience that suits their use case and circumstances. Why make it all or nothing?
No one is advocating X11. It’s hard to have a constructive conversation about the shortcomings of Wayland when every apologist seems to immediately go off topic.
“I don’t want to listen because you don’t know the technical challenges. Oh, you have a long list of credentials? I don’t want to listen to an argument from authority. X11 bad, therefore Wayland good.”
OP even brings up Mir, but you never see Wayland proponents talk about why they think Wayland is better.
Sounds like a heap of crap. X.Org developers moved to Wayland, they were the ones who made it happen. Now, I wonder where this dude with his XOrg Forks and PhD and shit was during all that 15 years it took to conceptualize wayland.
You all need a lesson in taking everything people say, including and most importantly their qualifications with a huge grain of salt.
Wayland has been working perfectly for years now. Many of the supposedly “impossible to implement” functions of the old hunk of junk Xorg were either found to be bogus anyways or have been made available on Wayland.
Sincerely– Someone who’s been using wayland since 2016
Very good point. Mr x11 expert maybe seems pissed he’s gotta learn a new tech and refuses to, so will bash it and hope it goes away. But if they were an expert, they’d probably know the things you mentioned.
Wayland has been working perfectly for years now.
Not for every one. For example, I still get random black screens with only mouse trails, windows disappearing, and videos not playing properly. Why yes, I do have an Nvidia card, thank you for asking.
After finally realizing nobody is interested in EGLstreams, Nvidia seems to be on track to make their drivers less of a disaster for Wayland support, so thankfully it is bound to become better
I just want you to know, this isn’t a failure on anything other than Nvidia trying to force their own crap on everyone and failing
I’m on AMD and had so many issues with Wayland. A lot of games were straight up unplayable due to the amount of issues and some other applications straight up not compatible while scaling is also still a freaking mess. Saying Wayland has been working perfectly for years just feels like clownery and is kinda insulting to everyone who experiences those problems.
This also depends on the desktop you use. GNOME is by far the most stable [In My Experience], and KDE spent the whole 5.x series getting their Wayland support into shape. What you’re describing could be XWayland failures (games don’t run on Wayland lol) and desktop environment bugs.
Depending on how long ago you’re talking about, your hardware, and your desktop of choice, things might’ve been improved a lot since the last time you used a Wayland session.
(Probable) Source for those who prefer actual text: https://lobste.rs/s/acepul/wayland_is_pretty_good_actually#c_bzr8nr
Copy paste?
I remember reading through that thread when it came out and those are extremely worrying points. Wayland has extremely deep core issues. #2 there alone is horrible.
There are and were alarm bells ringing all around btw with Wayland. From a software developing perspective the approach is terrible. You cannot solve super complex problems by throwing away 30 years worth of code and redoing everything from scratch. You’ll just run into the exact same issues again. Which no, haven’t gone away as the technology advanced as many people would like to believe, we’re still using displays and networking and keyboards and mice.
There is a lot of legacy in X but there’s also a lot of accumulated experience and battle-hardened code. The obvious path would have been to keep the good and remove the bad.
Wayland will eventually since those issues but it will take just as long as it took X, because that’s what happens when you start everything from scratch again.
This is filling me with deja vu because it’s exactly what some of us went through with X, trying to piece together a working desktop out of dozens of pieces. But when you point that out you get “ha ha grandpa that’s old stuff, this new stuff won’t have that problem because [insert magic here]!”
Keep in mind that when Wayland started it was supposed to be a mini-server, to be used for the login screen only. Then the idea came to make it usable for stable, controlled and simple devices where there isn’t a lot of user configuration or hardware variation.
How it got from there to “let’s use it for everything on the Linux desktop and ditch X” I’ll never understand.
Which no, haven’t gone away as the technology advanced as many people would like to believe, we’re still using displays and networking and keyboards and mice.
Which X.Org was not designed to support.
My main thought is “this is a screenshot of a wall of text that’s hard to read”.
You should switch to Wayland
Wayland has mostly positive user reviews because it presents nicely to the user (VRR, scaling, etc.) On the developer front it seems there’s a lot of struggle over things that were solved in X11 but for some reason require a lot of debate in Wayland.
- There’s still no way to universally configure monitors and input devices, so the startup cost to checking out a new “WM” (compositor in Wayland terms) is non-zero - you have to reconfigure everything from the ground up, and for anyone with complex input systems (see: accessibility devices) this will take a lot of time because each compositor insists on using a different format for configuring these things.
- Each compositor is tasked with coming up with solutions for all parts of the user experience (hence the last point) and thus anyone who wants to experiment with making their own WM now has to worry about a billion things that wouldn’t have had to deal with in X11. Yeah, there’s libraries for dealing with that stuff, but it’s not as simple as it was and lot of innovative WMs won’t ever be able to make the jump.
These are the two biggest issues I can see that are entirely chalked up to its design. Technical issues (like the “load balancer” thing that keeps Firefox from crashing on Wayland) will be solved in time. However, the above points are unlikely to ever be addressed. Should they be? I don’t know.
X11 world is just really as bad. It’s just so that Wayland is new and X.Org hacks are so normalized it doesn’t register for people how much work you need to put into X to make it work.
Each compositor is tasked with coming up with solutions for all parts of the user experience (hence the last point) and thus anyone who wants to experiment with making their own WM now has to worry about a billion things that wouldn’t have had to deal with in X11
Well, you would be disappointed to know that it’s somewhat the same fuckery under XOrg as every usable compositor and window manager needs to carry fixes, hacks, and hardcoded workaround for edge cases in X or features that are unsupported today. If you use a Wayland library like you use X libraries it’s not that much harder to make a simple Wayland compositor.
This is one of the most cited “wayland issues” and it’s IMO completely and utterly wrong. Go look at how convoluted existing XOrg codebases (mutter, metacity, compton, compiz, etc.) are. It’s only “simple” if you wish to draw a rectangle upon the screen ( and even then, wlroots exist)
Please dont just post screenshots of text. Post a link to the content.
deleted by creator
This is not a case of old people. Wayland genuinely lacks features. People of all ages find it trash.
It is designed to lack features. It has a purposefully limited scope. Bashing it for it’s goal is weird.
I believe this is called cope
I took wayland a decade to become usable. It tells me all I need to know about it simplicity and usefulness.
How do you define “usable”, and how long did it take X to get to that same point?
2 years from the original release to multiple ports, commercial applications, licencing to external groups and people actually asking to use it.
I am of two minds:
- He’s not wrong
- It doesn’t matter at this point
It’s a mess, but honestly so are a lot of critical FOSS projects (e.g.: OpenSSH, GNUPG, sudo). Curmudgeons gonna curmudgeon. There was a point of no return and that was years ago – now that Wayland’s finally becoming useable despite itself it’s probably time to come to terms with the fact that better alternatives would have arisen had anyone thought they could truly manage it.
it’s probably time to come to terms with the fact that better alternatives would have arisen had anyone thought they could truly manage it.
This is the most important takeaway. There’s a lot of people whining about Wayland, but Wayland devs are currently the only people actually willing to put in the work. Nobody wants to work on X and nobody wants to make an alternative to Wayland, so why do we keep wasting time on this topic?
Most people don’t give a shit and just want a system that works. As a lot of distros switch to / have switched to Wayland I have never noticed any issues in daily usage of any of my devices, in fact my surface laptop 4 can’t do external displays if I’m running x11 but that feels like a surface issue not a display manager issue. Point being that the switch is happening and a majority of users do not care as long as their systems keep running, and in my experience there’s no reason to believe they won’t.
Isn’t Linux about choice? If you don’t like Wayland/SystemD etc. then you can just not use it lol
I remember having this realisation about Mir, but only after we collectively ran it off the cliff wall. The main reason everyone piled on Mir was that it was thought that Canonical would be priming Linux desktop for fragmentation with two competing standards.
But in fact, Mir was providing a solution to the fragmentation Wayland was bringing. Now we have 3, 4, 5 Mir-s, all with slight incompatibilities. Want a feature? Better hope all of them decide to implement the extension after someone proposes it. We know how well that worked in the past.
This is also ironic because the detractors of Xorg constantly talked about the issues with Xorg extensions and how many of them there were. But I never really had to look up which extensions Xorg supported, while I have had to do that with Wayland compositors.
You will never be a real display server. You have no hardware cursors, you have no xrandr, you have no setxkbmap. You are a toy project twisted by Red Hat and GNOME into a crude mockery of X11’s perfection.
All the “validation” you get is two-faced and half-hearted. Behind your back people mock you. Your developers are disgusted and ashamed of you, your “users” laugh at your lack of features behind closed doors.
Linux users are utterly repulsed by you. Thousands of years of evolution have allowed them to sniff out defective software with incredible efficiency. Even Wayland sessions that “work” look uncanny and unnatural to a seasoned sysadmin. Your bizarre render loop is a dead giveaway. And even if you manage to get a drunk Arch user home with you, he’ll turn tail and bolt the second he gets a whiff of your high latency due to forced VSync.
You will never be happy. You wrench out a fake smile every single morning and tell yourself it’s going to be ok, but deep inside you feel the technical debt creeping up like a weed, ready to crush you under the unbearable weight.
Eventually it’ll be too much to bear - you’ll log into the GitLab instance, select the project, press Delete, and plunge it into the cold abyss. Your users will find the deletion notice, heartbroken but relieved that they no longer have to live with the unbearable shame and disappointment. They’ll remember you as the biggest failure of open source development, and every passerby for the rest of eternity will know a badly run project has failed there. Your code will decay and go to historical archives, and all that will remain of your legacy is a codebase that is unmistakably poorly written.
This is your fate. This is what you chose. There is no turning back.