I'm tired of this anti-Wayland horseshit
drewdevault.com
drewdevault.com
That does not mean anyone is under an obligation to like it.
> Maybe Wayland doesn’t work for your precious use-case. More likely, it does work, and you swallowed some propaganda based on an assumption which might have been correct 7 years ago.
If you insist on disregarding people's use cases, don't be surprised they don't like your software. I've been down this road a lot with FOSS software: "I don't use it because it doesn't do what I need", "sure it does!", "no, it really doesn't", "well you don't need that anyway!"...
On the whole however, I can certainly understand the frustration at having to deal with a community that gets annoyed at anything that changes simply because they're already so used to the garbage pile they have that they now hold the delusion that it's actually not garbage.
In my admittedly somewhat distanced opinion, Wayland's biggest mistakes were not launching with a coherent strategy for replicating functionality like screen sharing, screenshots, and to a lesser extent remote desktop/applications. They just punted and said "that's a compositor problem!" as though that was supposed to make it ok. People have thus harbored some inherent resentment ever since.
Yesterday I made a casual observation about something quite obvious, and more importantly, completely irrelevant. And without fail, the only response was that it was because of x and y. It isn't.
On facebook, the only way I ever get an answer is to use Cunningham's Law. And I even usually use the words "cunninghams law" in the comments. But it always seems to get me my answer.
It would match the ratio between good software and self promoted junk.
----
I think Ubuntu is good gauge for the real state of Wayland. They would like to switch to Wayland as soon as possible but even in the 21.04 Ubuntu still defaults to Xorg on Nvidia based systems.
It's not just the FOSS community, look at how non technical people react every time gmail, outlook or excel makes a tiny change to the UI (not to mention big ones). It really makes people angry when things don't work the same anymore, let alone when it doesn't even work anymore for their use case.
> In my admittedly somewhat distanced opinion, Wayland's biggest mistakes were not launching with a coherent strategy for replicating functionality like screen sharing, screenshots, and to a lesser extent remote desktop/applications. They just punted and said "that's a compositor problem!"
My guess is that it wasn't a deliberate strategy, it just that like anything related to the Linux desktop, the project was underfunded so they had to focus on certain issues. In this case it was focusing on improving from xorg and making sure it doesn't break anything on the main use cases of whoever was funding the project (mainly redhat). Apple and Microsoft can afford to pour billions in their display server/protocol/windowing system. Not so much for Linux.
This seems to point to the general situation of change fatigue. If you pick up a random Android device, what does the "settings" app icon look like? Individually, these things are small, but the small impedances these changes introduce does take a toll on people, especially when you're trying to just get stuff done.
I don't think there's an easy answer here when the developer needs to make fundamental changes, though.
One of the problems is a parity disconnect. A developer/PM often has very different perspective from their users: They see the new changes as they're happening and so they're all small, incremental changes, plus they're closely following development.
A lot of users only infrequently update and/or infrequently use certain features, and so for them, all these small incremental features add up to be massive change for the sake of change. This will often manifest as "Every time I go to do x, it's totally different and I have to re-learn everything!".
I find a lot of software -- especially FOSS -- also communicates change poorly. Release notes are the primary way to get across changes, yet there are several bad things people do that make it basically impossible to read:
* List every change or commit message, especially without categorizing or simplifying the wording
* Don't properly highlight feature changes (eg with screenshots and/or reasoning)
* Have dozens of betas/pre-releases, but don't consolidate the release notes into a final "here's what's changed since the last main release" document
Some examples of exceptionally good release notes: Visual Studio Code [1], Jira [2], Gitlab [3] (though if they only provided their changelog [4] it would be a good example of being overly verbose to the point of unusable).
[1] https://code.visualstudio.com/updates/v1_52
[2] https://confluence.atlassian.com/jirasoftware/jira-software-...
[3] https://about.gitlab.com/releases/categories/releases/
[4] https://gitlab.com/gitlab-org/gitlab-foss/-/blob/master/CHAN...
Most of them are too frequent, automatic, plus they are not actual improvements.
It seems like the developers and product managers want to show progress but the uses just want you to fix boring bugs. It will help if the product folks think of memory, perf and stability as very important features and stop chasing new features for the sake of it.
Memory performance is not too big of a deal, IMHO given the last decade of hardware, but stability is.
Lost mental state is generally as painful as data is. People hate it viscerally.
I have seen 4 figure software get replaced by 5 figure software over that alone. 5 figure stuff runs for weeks to months at a time. 4 figure can crash daily or more often.
Stability was a primary selling point for me, and I used to maintain a session for that purpose. "My session has been active for months and 10's of projects, lets open your sample data and walk through it...." Did that on a reasonable, but not great Lenovo. Hibernate, sleep, hibernate, sleep...
Win 7 too, lol.
I came from IRIX. I would go the better part of a year, apps running, system up, all ready to go. Spoiled. Win 2k was good, Win 7 matched it, and Win 10 is solid, except for forced updates.
I would never, ever devalue stability. People who are focused, task intensive, live it, love it, will argue they need and are worth it.
Not sure they are wrong.
Play it how you will, of course. I will pass hard personally. Lack of stability is very high on my qualification list.
To be blunt, where it exists there are other priority problems.
One may just be flashy speed and other sizzle done at the general expense of the solution being robust.
May only take an event or two needed to cancel out potential gains from those things. Turn that crank a time or two and many will just get back to work.
An attempt or two again? Many will ignore the solution and or have adopted something else.
Net result? The team that did not make stability a priority likely did a lot of market building for the ones who did.
I personally am very frustrated by this constantly, but there is no way around it that will always work. Someone has to pay the cost of market building, it is a separate cost from stability, and sometimes you can't afford both.
But, what does work far more frequently is to get the solution robust early. The longer it gets put off, the more difficult doing it is, both in time, cost, users being requited to do things along the way to support it all.
If so, they can pay now, or pay later, just make sure you manage expectations so they actually do pay.
If, somehow that ended up on you, of course they refuse! Why pay for a free lunch?
So don't allow that. Seriously.
Maybe the customer finds someone hungry enough to pay for them.
Or, maybe that customer pays hard going through this cycle a few times too.
Not my problem and it does not have to be yours.
Can definitely be robust and should be.
In this scenario, it is a mutual problem. Nobody has to use the software, true. However, it again is all about managing expectations.
If it is oversold, people will end up with bad experiences and that does impact who delivered them.
This has already happened. Will again too.
On a short timeline, maybe no big. On a longer one, higher order impacts may actually be painful.
Say a decade of negative public sentiment sees a brutal regulation kind of painful.
Entities putting billions in the bank can and should make reliable software.
There is a YUGE diff between Gmail, Excel and friends, and rando OSS.
This discussion ranged far away from the initial premise.
So, let us take it back a bit.
Weyland. Wants to be the defacto display solution. Does not have the same priorities many users have. Also does have priorities many users have.
Replacing X11 was made an explicit intent too.
Well, if it does not actually do that?
"All that Weyland shit talk" is the outcome.
Maybe subtract the replace X11 part, or maybe find a way to actually replace X11, or maybe just ignore the shit talk?
Because of that problem, I have always maintained we need a way to better fund some projects.
I would love to see the display system funded and all the good stuff worked out properly. For me, the network features and general flexibility of X is worth some money.
When I ran SGI machines, that money was paid and the display systems were flat out awesome.
If it does not do those awesome things? Meh, can just run Win 10.
I used Exceed a lot. Exemplary. That program did everything nicely. I even used a CAD app on Windows that actually was built for X and it was network transparent same as any Unix box!
There is a sub $100 one out there. Maybe a bit more now. Maybe gone too. It was very good.
The freebies are respectable and great for sysadmin.
Funding a first class X11 replacement that also does some new things people want for mobile and embedded makes a ton of sense to me, and I would sign right up too.
Maybe getting a bunch of us tossing a tenner a month at this would fund a project that just gets it all done.
And we need one.
It is obvious to me X11, used as it can be, sees way more than anyone may have thought today. When I was on IRIX, X11 was flat out awesome. Shit just worked, and was fast, and 3D graphics over the wire smooth, fast, performant.
It took a long time for the rest to get there and when they did, nobody really grokked it, unless they came from a solid implementation.
And nobody from the PC, Windows camp got it. Did not even understand what an app server even was.
No fault here either. People saw what they saw, worked how they could work. I get that.
But today, people still saw what they saw, work how they work and ripping all that up is painful enough to not make sense.
If it did, we would have seen this go differently.
So maybe this should not be a volunteer effort. Matters too much to way more of us than I also believe was expected.
If we fund something thwt does what X11 can do and that also will do the new, spiffy, lean things people want today, we would have a killer environment.
Having that be OSS?
Worth it to me.
Or, we can watch the carnage for another decade...
Good discussion, BTW.
People keep saying that Wayland needs to be more of an X replacement but it's never clear what that means. You want 3D graphics over the network, that currently means Vulkan, and if you were going to do that, there doesn't seem to be much reason to tie it to any particular window system.
In a general sense, Wayland is not Unix like, in the same way systemd isn't. X11 is, as were various init systems. And fact is, at the time those things were done, multi user computing was a thing, and it was all done with those ideas in mind too.
At the time, micros were on the rise, and apart from a few exceptions, were single user, and started out single tasking.
Two different roots of thought, now well grown into trees that share intermixed and intertwined branches.
I know that is an issue. Whether it needs to be addressed is an ongoing matter. A matter I am happy to discuss, but not currently one that impacts me too much right now.
My focus is pretty far away from a lot of that. Doing lower level stuff, and often with no OS, embedded. So, write it, include it, port it if need be, then compile and deploy it.
Minimum requirement is gcc, command line, terminal. In all other areas, Win 10 is fine. I really could give two shits what OS it is otherwise. Machines are all fast enough, big enough, etc... good times (for me) actually.
Again, not dismissive, just not a focus at the moment. That could change and I might care a lot too. This kind of thing happens to people. Sometimes often.
When I use X, I tend to make good use of the network capability. It is the primary reason to use it, along with ways, means, tools that have worked forever. I value stuff like that very highly because I much prefer learning and using new things to me, not always remapping stuff I know cold.
For example, in the past, I have enjoyed weaving a single desktop environment from a pile of machines and software. Did that to support, sysadmin, train and develop for advanced engineering software users of all types. I had the industry on my desktop and could run or do almost anything on a variety of platforms from that desktop and the time savings on that as well as my general potency 2as off the charts good. Beat a lot of other people who did not really grok X too.
Log in and just do stuff, and depending on what gets done, a few machines, or just one gets the job done, served up to me nicely, consistently.
For a long while after IRIX was done, I used a machine as my head end. Just worked great for that kind of work. Pretty much nothing was as good since, and apps have become far less flexible too. A pile of VM's are required for that kind of thing today and it is a lot more work.
But, it is also a lot more lean hardware wise too. That is significant right now, though I do not know how significant given how cheap stuff can be.
Anyway, back to the UNIX part. Small programs, smart data, pipes, all that stuff is UNIX. X11 allows all that to travel where it needs to and it is a very nice way to work.
If one wants, everything can be distributed too:
Fonts from one box, X Server from another, application on yet another, running on shared files from yet another, window manager on yet another, etc... An Indy used to serve up its nice window manager for my Linux for quite a while, just for shits and giggles.
And that is the UNIX way.
Sometimes it is powerful. I see people struggle with managed data, engineering software, etc. for example.
under X, I just made a beefy box, one copy of the app, one database on local disk, one backup system, and on IRIX that could be done live while people are working with just a few set and forget scripts too.
Then, serve 20 to 30 users. They do not have to know anything other than how to use the app. And they can't really break it either.
Admin on that thing was mostly cake and the users could run whatever they wanted as long as it had a respectable X server, they were good to go. Few of them would even notice or care, and it worked great over 100-T networks too. Kind of crazy to think about today.
The nice thing was those users could not touch the data except through the app. This saved so. Damn. Much. Pain. Worth the whole setup right there.
So that is one case. That case made me a ton of money too. Edit: That case still happens online, but alsonsuggers from being online. Outages, updates, fails on the part of the provider, data being leveraged in distasteful ways, sometimes expensive ways.
Done local, with X? Total control. It is nice.
Application servers. Loved them. And with super expensive 5 figure software? Making that available and performant to the people who need it without all the installation hassles is golden. Really do miss that.
All very UNIXEY.
Other cases include multi head machines. Beefy machine shared by two people. Was pretty easy with X. Not sure what the state of things is today. Probably not good. Probably not needed either. We got crazy amount of capable cheap hardware these days.
Basically, X is multi user graphical computing and all that can mean.
Current display systems are not.
We have moved quite far away from multi user systems, frankly. The basics exist and work, but we have no display systems that work in the same way. And very large numbers of people do not even know how they could work too.
Honestly, that is probably the core issue in play, boiled down!
"No reason to tie it to a window system"
Well, given a multi user graphical display system, "particular" kind of becomes moot. Run the window manager you want, etc...
In any case, here is what I think will happen:
X11 has always had this basic problem. People who did not use it, or who cut their computing teeth on single user dominant computing think very differently from those who did.
And it is not just about displays. The same thing is true for the command line too. Watching people come from DOS/Windows onto a proper multi user environment showed these differences in thought to be just as stark as those same differences remain stark today in the display context.
Most people know what multi tasking is and expect it. That is the dominant mode today.
Far fewer know what multi user computing is, and again I am speaking from the perspective of someone who took full advantage of multi user computing, and in the graphical as well as the general sense.
And that is the clash, in my view. A secondary one is breakage of a lot of little time tested, production proven ways and means of doing things.
Focus follows mouse + middle button paste is amazing when working across various windows that may overlap, or exist across multiple virtual desktops, for example. I can tell you, that is a super hard one to get away from. I did, and have, but it hurt.
There is a ton of this "noise" and given the state of discussion, appears to add right the fuck up. Still.
But I am rambling:
What will happen is we will either prove out the idea of multi user graphical computing is not useful, or we won't.
If not useful, all this stuff will eventually go away and we will bring up the next set of users on whatever that paradigm looks like in the end and that is that. The rest will be history.
Sort of like how we see mobile dominant users and desktop dominant users today. And that is far from settled. Mobile is nowhere close to displacing desktop. I use both hard too. No way.
But, if what gets made really is not so superior? Like those "precious use cases" really do hold significant value? Or, even if they could, but die off for a while?
Then we will do all this over again, reinventing X11 just like people tend to reinvent UNIX.
And look at the current trend to serve it all up via browser! Seems to me a lot of great 70's era ideas had real legs.
And this will happen because tech never, ever really dies. Someone, somewhere will see it and build on it to complete and it is game on. Or, they will think that way again because the line of thought has merit.
I plan on watching it all with great interest.
Personally, I believe in multi user graphical computing and have seen, applied, and profited nicely from the value it has. Everything should go over the wire, just like everything is a file. So I have something I want to run on my phone? Just ask for it on the display I am using and go. That's X11. I think that kind of thinking is compelling and I think that because I got to do that and it was sweet compared to the usual, find it, install it, configure it, move / copy data to it mess.
Cloud computing does that with a browser nicely. But, it also means a few people get to rule the world too.
Whatever one may think of that, if we were to build multi user graphical computing in from ground zero, I believe it will endure for a long time, just like UNIX itself has. And it will because the core ideas are strong, very generally useful, etc.
We have seen this kind of thing before too. Really great ideas tend to stick around.
And this is not about the people doing Weyland not having great ideas at all. They are trying hard to bring some new ideas into play, much like the X11 people did.
Cool!
It is more about trying to convince everyone that the great ideas behind X11; namely, multi user graphical computing, aren't great, or can be replaced with something that fundamentally is not multi user graphical computing.
Given all that, Weyland NOT replacing X11 may well have set different, and maybe less conflict laden expectations.
But that would also have begged the question: what value does multi user graphical computing have? We may be in a better place had it been asked and answered.
I think it has a lot. And I think, like UNIX, it is most important that it can all be done, not so much that everyone needs to, or will benefit from doing it, or being forced to do it.
We shall see!
I remember my early encounters driving me absolutely mad because I did cut my teeth on that 1 seat 1 user environment.I think where I've ended up going in a different way than most is that over the years I keep cracking away at it because I want to understand it. It's an intuition thing, and you never really appreciate the miracle of it until you sit down and come to terms with what X really did. It was the glue between app logic, state, and a constantly floating set of goalposts represented by every possible set of different hardware.
I haven't even torn into the source. It's taken me so long just to grok the other layers of the problem space. Personally, I think the space X11 occupied is one of the most enticing areas of research open to me, even if I never seem to make the time for it.
Abstraction-wise, we assume we carry context with us everywhere, but an X environment driven over a network breaks you of that quite handily, and I don't think the "Cloud"/SOA solves the real life dilemma jist by lifting everything into a browser.
Agreed.
At the least, risk will be higher than it needs to be, and that puts the other validation into question as well.
Often is right?
When does robustness end up a priority?
Could be a very long time, and or never, particularly given the core value proposition and or features intended to deliver it are not themselves validated by "the market" as you say.
One solution to this is to pay people to adopt the solution.
Another is to deliver features more specific to them.
Yet another is to cover it up, make recovery robust, transparent, etc...
These are all perfectly fine ways to approach beta type cases, initial userbase, seeding for growth.
After that process has shown what the market finds compelling, stability should be right there in the list with the core set of software to build on.
You can't omit stability in life-critical software for example.
On the other hand software's usefulness can outinfluence unstability, if there are no alternatives.
There are competing paradigms now, and that is good, but they have not yet actually reached use value and productivity levels where it is appropriate to say the desktop paradigm is out of date.
At the worst, both will become more generally flexible to keep their value to the users.
The point being made here is not that it always must be stable.
It is all about how often stability is not a priority when it could and or should be.
And in the no alternative scenario, it can be compelling to continue to ignore robustness to get growth and lock in.
When that happens, stability, robustness often stay in the back seat for a large fraction of the product life cycle.
For any given user, the impact may be just low enough to keep them on board too. New features, and asking more money for them, or offering them to make up for that impact can be an ugly cycle leading to users ripe for the picking later on.
Example: Steam cloud save. Countless time I have to force quit Steam's background service because Cyberpunk 2077 and GTA V freeze while saving.
Steam doesn't show the launch game button, even though the game is killed from task manager.
There are no heartbeat like mechanism to keep in check the game process state.
And there are no alternative to launch the game that I bought from steam, so the instability becomes little of nuisance.
But that's a minor issue where unstable features are unimportant ones.
> It is all about how often stability is not a priority when it could and or should be.
And I'm on your team too. That's why my argument is that stability IS A feature too. Countering grant parent's argument that says stability is ignorable as long as the features are validated by the market.
> And in the no alternative scenario, it can be compelling to continue to ignore robustness to get growth and lock in.
As a paranoid user I agree this has been a nightmare. I constantly have to make sure I wont get locked in to services that I pay for, and often time I find myself using open source solutions rather than paid one because of the same reason.
It absolutely is a feature.
Guess the externalities problem crops up in this context.
How to actualize those costs better so the equation makes more sense?
And yes! I hate lock in viscerally. Frankly, will avoid it at very considerable cost.
Which equation exactly? The balance between effort to stability and other stuffs? Sorry I'm a bit lost
This is hugely underappreciated. Last fall I decided I would get back into making videos for YouTube after 7 years away. But two videos into the new series, and the constant crashes of my video editing software I just paid $$$ for have reminded me why I stopped making videos in the first place.
Ultra painful. And anytime I hit flow, I am either gambling by not saving and disturbing flow, or leaving flow trying to save... agreed.
Scriptable may find a lot of use.
https://support.google.com/mail/answer/15049?hl=en
Old gmail is faster and normal things like opening a link in a new tab actually works like any other page and its actually a lot easier to read because of it.
In the new interface you are only given a fraction of the horizontal space for the actual mail, and I actually have to scroll sideways to see the pop out in new window control which for aesthetic reasons is only a graphic with no text label except on mouse over. Popping it out gives you a window that you may or may not need to resize or move for optimal reading and as far as I can see there is no way to just read the mail in a new tab in the same window at all which breaks most people's methodology for managing multiple tabs.
It's not merely bad its actively hostile.
Like you note, this isn't a problem unique to Linux/"free Unixy OSes". In some ways Linux is actually worse than others, consider Gnome/Gtk Updates for example. Or how things like having a library to read a particular image format are quite normal around here; except that library has like half a dozen incompatible but actively used versions and around 1000 released versions. The Linux environment is very volatile and everything constantly changes and breaks. Modern applications bitrot exceptionally fast in Linux, while the community points to "but look this Xchess binary from 1992 still works". That's neat but covers few real use cases. The same community is then bewildered that both people and enterprises opt for distributions which move at a glacial pace and only releases updated software once every five years or so.
Edit: glib not glibc
The GNU C standard library has binary backwards compatibility going back 20 years. They take great pains to preserve that. Are you thinking of glib instead of glibc? The former is from GNOME, and the latter is not.
So not the Linux community then. Outside it.
Do all the new GitHub-driven programmers who exclusively use MacBooks and constantly rev things with the same frequency not exist? Why is this still being presented as a freedesktop-related problem and not a general problem with creators' fickle and fleeting attention, when we have evidence that the category isn't as narrow as the pigeonhole you're trying to put things in?
Sadly, that ship has passed... long ago. When you encounter a random person about "Linux", they will think of the Linux ecosystem, not just the kernel. In other words, your and GP's definition of "Linux" is different, and they are both correct depending on how would you read it.
(And before you go almighty on definitions, the majority of linguists agree to just monitor - or "describe" - the words as normally and plainly used.)
glib 2.0 was released in March of 2002, and has preserved ABI compatibility since then.
Details: Bluetooth headphones with microphones actually show up as 3 sound devices, one high quality output device and a pair of low quality input and output devices. Whenever a microphone is requested, the low quality pair is selected. Output quality goes to shit and any apps that don't get the memo will still send its audio to the high quality output device which has since become an inactive sinkhole. Since many apps request microphone access for non-obvious reasons, the symptoms are that you do something non-audio-related and sound in the rest of the system does some combination of {go to shit, stop working} on a per-app basis. The solution is to disable the low quality input and output devices, which keeps sound output functional and high-quality until Windows Update reverts your settings and sets the stage for the next microphone access to break bluetooth audio again. Ugh.
Interesting. I have what appears to be exactly the same bluetooth headset setup (Bose QuietComfort 35s), and use it all day every day while at work.
I have the slightly annoying thing that if I'm in a video conference all normal audio isn't heard (unless I switch the default audio output), but I only get that when actively in a VC. I have never had 'random applications requesting the microphone'.
See for example the pages of complaints about windows forced planned reboot features deemed unavoidable from the hn majority, let alone the common users.
Any one of {Bluetooth SIG, device manufacturer, Microsoft} could have independently fixed the issue. Every one of them should have forseen it. None of them foresaw it and none of them fixed it, and years later it still lingers. Yikes.
But this is a real problem: it's not good that the Linux ecosystem has been reduced to "we shall eat whatever dogfood Redhat cooks for us". Wayland didn't even start as a RH project, iirc, and didn't really gain any traction for ages, but now it's a Big Deal because RH pushes it...?
That's how I see systemd and wayland. For systemd the consensus seems to be that's it's better than the previous init systems as most distributions have adopted it. It seems we're going in that direction with wayland but we'll see how it goes.
I think the parent comment was alluding to the fact that RedHat has the ability to manufacture consensus. All the distributions use systemd (and pulseaudio and ...) because GNOME and other core components were modified to work only with systemd. So everyone agreed to use RedHat's way because there was no other way. No matter how good RH's creations might be, that's the kind of tail-wagging-the-dog power that is bad for an ecosystem.
But the point remains that, even without any ill intent, the lack of competition and compromise can produce outcomes that look like malice -- people gradually get used to making decisions that go unquestioned, and unwittingly walk all over everyone who no longer has a voice in the discussion. This pushes more people out, and the cycle of the tail winning against the dog repeats and continues.
- Audio system that ignores all the foundations of ALSA and builds Yet Another Layer instead of improving ALSA.
- Display system that leaves way too much as an "exercise for the reader".
- 10+-year-long transition periods on the above, during which nobody's use cases work well.
- Decisions made by fiat rather than by consensus.
I'm not sure what you mean by consensus, if there was consensus on everything then we wouldn't have so many Linux and BSD distributions. We'd probably have just one or two, and you'd probably be more annoyed about "wagging the dog" if that was the case.
Just one point about ALSA; most of it actually lives in userspace. The ~/.asoundrc file can specify complex routing and mixing, including the use of LADSPA filters. What's done is done, and pulseaudio is reasonably usable now, but IMO we'd be much better off if the work that went into Pulseaudio and jackd instead went into the ALSA userland.
As well it should. Because now things that used to take three seconds will take 15 minutes for a month until you learn the new interface.
The designer will respond that yes, but then once you learn the new thing it will take two seconds. And if you save one second twice a day then you'll have made back that 10 hours you spent learning the new thing in less than 50 years!
Except that they're going to change it again in less than 50 years.
And that's assuming that the new design is actually better and not just different or worse, because also, this:
https://news.ycombinator.com/item?id=25950351
Rule of thumb: If the new thing isn't better enough to cause people to switch to it voluntarily without any prodding or the removal of the option to use the old thing, it isn't better enough to be worth it.
Not saying it is right or wrong, but a lot of the upsetting changes for existing users are for the benefit of new users.
Also, "users" are "people" and the average adult lifespan (18-78) is around 60 years. That implies that the time for the "new users" to become half of the user base is around 30 years, so what does that say about how often it makes sense to do this?
But suppose you're right. Then the solution is competition. Don't take away the old thing, provide both. If the new users want to use the new thing and the old users want to use the old thing, great.
And then if the new users still want to use the old thing you've got a pretty good red flag that you messed it up.
Your new UI might be garbage, but there's no red flag here. A new user will likely need to make use of tutorials, troubleshooting, and other help online; most or all of which will be based on your old UI (and possibly coupled with comments like, 'Don't use the new UI, it's trash. Here is how to switch...'). Having been such a new user, I only pick the new UI when forced or when it's clearly better; the former being the more common case.
Sure, you can make your official documentation use the correct UI (or design your UI in such a way that the documentation can be agnostic—but then what is this big change that makes lives better?), but unless your documentation is very good, people are still going to need to reference all these other sources.
Recently ran into this issue when submitting an app to Google Play. New interface didn’t even match up to Google’s own instructions. Frustrating.
That doesn’t add up at all... you’re implying that users are gained and lost at exactly the same rate, consistently, over a span of at least 30 years.
It doesn’t invalidate your other point about competition, but it’s a flawed argument to base any reasoning upon.
The point at which "new users" are the majority of the user base never even happens.
Edit: unless there is a majority of unsatisfied customers (:
Nice try Google/Microsoft developer! I'm pretty technical, your sh*t change is still sh*t.
I remember a time when updates from gmail, outlook, or excel improved upon the previous version, sadly that was about 15/20 years ago for Google/Microsoft, respectively.
It does give you a garbage stack that solves problems though.
Remote desktop is a harder problem to be sure, but it is also a pretty common use case (window remoting less so). If you're setting out to modernize and replace such a fundamental component of Linux Desktop then you should probably have a plan for that. If not in the first spec, at least a statement to the effect that it will be part of a future spec instead of just punting to "implementation defined".
An unsecured screenshot escape hatch can be used by malicious software to scrape information shown in windows on your system, and with modern OCR being what it is (or, hell, a shady Mechanical Turk transcription job), that could be an attack vector for surfacing people's private information.
The other reason is that this isn't base functionality, for example an embedded implementation has no need for screenshots.
I'm unsure what kind of graphical environment you can imagine where screenshots are not useful at all (if only to capture the screen when something weird is going on).
For debugging purposes, the display server can just dump the screen to a file or a serial port itself. The only reason you would need this in the protocol is so other arbitrary applications could capture the screen.
Also, screen sharing is not that easy of a problem if done properly (eg. allowing another app to act on the buffer and directing it here and there)
Recent issues:
* The brightness control for my screen doesn't work with it.
* The mouse sometimes lags
* Graphical corruption in Chromium when on webgl sites.
* Blank screen after resume from hibernate.
* Seems to randomly freeze forever sometimes after an OOM killer run.
* Chromecast wouldn't work
What most people mean when they "switch to Wayland" is that they're switching from Gnome on X11 to a "pure Gnome" stack that uses Wayland and a bunch of other Freedesktop standards for interopability. There is absolutely no code from the "Wayland project" running there, because the Wayland implementation is Gnome's own (it's called Mutter). Similarly, KDE's implementation is in KWin itself. The source article is from an author of yet another window manager (Sway) implementing Wayland.
What you're observing is not "Wayland not being there yet", it's Gnome not being there yet. All of these deficiencies have nothing to do with Wayland itself: they're general QA issues that plague an underfunded Linux desktop that's making a slow technology transition.
Wayland here ends up often being the scapegoat of a Linux community that looks to want to change but can't sort itself out. The result of blaming these issues on Wayland instead of - mostly - Gnome and KDE means that we're not going to the right places to have this fixed. In terms of bug reports, and contributions of code and money.
[1]: I mean, if you can come to terms with the substantial architectural differences implied by Wayland w.r.t. to X11. But that's a discussion on another level.
People, especially people trying to work done on their computers, usually mean the former.
Unknowing users can freely associate Wayland with bad vibes due to how KDE and GNOME chose to brand their new compositors but we can do better.
But if Kwin & Mutter aren't quite shit when it was combined with X, but are shit when combined with Wayland, how does that shape perceptions of Wayland?
In an alternative universe there would be Kwin the X11 display server which would replace Xorg. I’m sure it would just be as big riddled and feature incomplete in the early years of its development.
It still smells, because I cannot load my own web components library or/and my own CSS for use on all sites, so every site MUST reinvent wheel.
When Firefox for Linux used native GTK+ UI elements in web pages, with user theme applied, every web page looked like native applications. It was excellent. Then this feature was cut, because "every page must have the same look on every device/OS combination". F><k. Now every web application tries to reimplement the look of Gnome 2.x, and does it poorly.
There's a meta-lesson useful here for anyone who doesn't know it yet: modern software has network effects. And the same phenomena you see with other networks apply to software stacks. If everyone else has implemented a protocol wrong, for example, and your software comes along that has implemented the protocol correctly, but as a result your software doesn't work with the existing stack,
a) Odds are, the rest of the world will not change to work with your software
b) New users, using your software, will perceive the problem is your software doesn't work, not that the rest of the stack is wrong and you're the only one that did it right.
Maddening, but it's the nature of complicated systems built by thousands of people in a distributed fashion.
(I can't lay hands on the link right now, but there was an ex-Microsoft engineer who had a blog where he talked about the heroics MS developers would go to every major Windows release making sure their OS was compatible with popular user software. It didn't matter that they were the company setting the rules in their ecosystem... If the latest version of Windows broke Photoshop, they had to figure out why. In that particular instance, it was because Photoshop had gained some performance optimizations by baking binary images of default structs the OS gave it into their code instead of calling the right API to get a struct properly initialized, saving a library call. MS had to reimplement some C++ structures in C so they could maintain the memory image of the relevant structs to avoid breaking Photoshop).
For a modern example of this in action, see Bluetooth and the madhouse of device 'quirks' you have to settle with day-to-day, since each device has subtly protocol-breaking opinions on how to implement it.
Wayland is a display protocol. Practically all of the pain people are experiencing has nothing to do with how Gnome/KDE/Sway really display things differently. The pain everybody experiences is that the realization that suddenly we need a new input stack too, a new way to screenshare, a new way to do clipboard access, a new way to do a bunch of other things. All stuff that also needs to made, standardized, and achieve maturity outside of the new display protocol.
It's tempting to call that fallout of other stuff that needs to be changed "Wayland" as well, but I'd say that misses the point completely and calling it that won't help anyone get this stuff fixed.
Mind that I have no formed opinion of Wayland myself, having not used it. Trying to deduce probable causes from hearing people duke it out here and elsewhere.
On Linux, there's X11 based desktops and "post-X11" desktops. "Post-X11" would involve implementations of Wayland and Freedesktop Portals [1], using libinput [2] - and some other things I'm forgetting. All these things don't depend on Wayland and run fine on X11 too (heck you can even run a Wayland compositor in an X11 window), but most of this stuff is pretty new, implementations have lots of QA issues, and application adoption is also not fantastic. On X11 you can just talk to the X11 socket directly for what you want as a workaround, but on post-X11 you have to adopt a new means of doing it. And that hurts.
[1]: https://flatpak.github.io/xdg-desktop-portal/portal-docs.htm...
But my requirements are different from yours.
If you've been shooting yourself in the foot all your life, eventually you'll stop noticing that your foot is bleeding.
It would have to rely on compositor and driver bugs in those other platforms.
If no implementation of Wayland is ‘there’, it seems pretty reasonable to say Wayland is not there yet.
I think it can be seen in OP's list that most of the issues that OP raised are actually not due to deficiencies in the display protocol. Specifically replacing of the X11 display protocol with the Wayland display protocol. But Wayland solves fewer problems than X11. So to replace things like standardized screen recording and input processing, you need other things on top of Wayland.
And that's where by far the most issues with "Wayland" come from - stuff that has nothing to do with the display protocol, but the tremendous pains it takes to replace X11.
[1]: It's worth pointing out for fairness that X11 based desktops are also pretty flawed even if you're used to some of the flaws.
Given this, it’s not surprising Wayland has become the name associated with the overall goal.
Wayland is bad design, and it shows in the users' and maintainers' attrition.
This is not something conceptual about Wayland, or intrinsic to it. Any display protocol can have multiple client/server implementations. It just so happens that most of the free desktop standardized around the X.org implementation for X11, but even for X11 there were multiple client and server implementations.
The second thing is that software duplication efforts have a well known, tried and tested solution: implement the duplicated effort in shared implementations or libraries [1] !
The thing I find hard to wrap my head around is that this complaint is given in a community that usually champions protocol-over-implementations and diversity of implementations. The people actually making a difference on the Linux desktop are damned if they do and they're damned if they don't.
What you want at that point is to agree where to read and write common configuration. I'm not sure this is likely to happen either, as gnome has gsettings/dconf and kde has simple files and you will now awaken the plaintext vs efficiency dragon.
The current situation is just how it coincidentally turned out - there's just not always a clear direction on the free desktop (and that's even what many people like about it). If wlroots or something similar had existed earlier, then this probably would have turned out differently but c'est la vie.
edit: looks like it might already be provided via wl_output::scale [1] except you get the wrong effect that way. You want to tell the client what DPI they should render at, so that you can keep scaling at = 1
[1]: https://wayland.freedesktop.org/docs/html/apa.html#protocol-...
Why not have a shared implementation?
The codebase could be re-engineered, sure, but a lot of people championing Wayland tend to see this duplication of effort as good for some reason, and at least last I engaged with them did not like the idea of a "new X11."
Personally I think something like that is an inevitability.
It'd still solve a lot of issues that X can't.
People seem to like that we have many browser implementations but when it comes to display servers it seems like they want Chrome to rule them all.
Diversity is great but equality in failure is not helpful.
X11 is a protocol. What you mean is that we end up with something like Xorg, an implementation of X11. Which is still incorrect because a major design goal of Wayland is to move as much logic as possible from the server to the client.
I wonder how long it'll take to have a Wayland server running on the AT&T Blit...
When people talk about "pushing stuff to the DE" what they mean is the Wayland project aggressively scoping the Wayland protocol to drawing surfaces and handling input events. They're not trying to become a generic desktop message bus for everything an application might want to do -- that's literally what dbus is.
Once that ship has sailed, what you want instead is a shared method of providing configuration. The goal is to have all 3 implementations read configuration (like DPI scaling etc) from one place. That way the user won't have to configure common things in 3 places to get any semblance of apps looking remotely close to eachother.
Wayland is trying to do one thing well, whereas Xorg did many things poorly. It's valid to feel frustration that the community doesn't coordinate to put those APIs in place, but it's very much not valid to blame Wayland developers for it.
Please be a little bit more charitable: I'm very candid about the usability problems on the Linux desktop, I'm just telling people where they need to send their time, money and concerns to fix it.
> "but that's not our problem!" when something breaks.
Which is the entire point of getting rid of X11. Wayland is a display protocol and does not intend to solve all of the problems that X11 ended up solving, same as the display stack in any OS designed after 1990 (like Windows, Mac OS X, BeOS, Android and ChromeOS) do not solve these problems either.
While technically true, that is a bit of deflection. In some cases none of the compositors have implemented certain things yet.
My biggest issue with gnome is that it doesnt remember where my windows were last time I ran an app. Someone over in way-land probably should have told them that would become a their-problem so it could be addressed it sooner. Same with window decorations, they should be handled by the compositor IMHO. Sometimes a new thing should come with recommendations for use.
Deflection is entirely my point here :) These things are real problems, but they should be fixed in Gnome/KDE/Sway/wherever you find them. Complaints should be addressed there, and not at "Wayland", because "Wayland" can't fix em!
Wayland is the implementation detail in Sway to have a display protocol your Gtk, Qt and XWayland apps use to draw themselves, really no need to draw more attention to it than necessary. It's the Sway implementation that does all the magic.
asshole.
Can’t speak to Chromium or Wayland, but Chrome on Mac has this problem for me and I just had to completely disable hardware acceleration.
Overall, my Linux GUI experience has never been as smooth as it is now on Wayland and I tried pretty much all common DEs/WMs in last 8 years.
X11 is not even remotely close to being "there" compared to Wayland and if Gnome implementation sucks, then please first try better implementations first before writing comments like this.
No, Wayland protocol is not perfect and yes, some niche use cases are still not covered, which is why various extensions of the protocol are still being developed. X11 at it's current state is nothing but a collection of hacks glued together. Wayland is, however, a very robust, secure and well-designed modern protocol, which, most importantly and contrary to X11, actually works.
* The brightness control for my screen doesn't work with it.
Never been an issue on my Samsung laptop. I strongly suspect this depends on your hardware, but I'm not going to spend a week to prove it. * The mouse sometimes lags
Never happened outside of catastrophic load scenarios. * Graphical corruption in Chromium when on webgl sites.
Are you using Nvidia? I've had no major graphics glitches since using AMD. * Blank screen after resume from hibernate.
Never happened.The last two aren't applicable, since if anything has been OOM killed recently I didn't notice, and I don't have a Chromecast.
Is it just basically a backdoor going through the hardware?
Is there some way that a compositor works with Linux security so that you need a special privilege or root or something in order to record the screen?
Something similar used to frustrate me no end when asking the Python community for help trying to solve a problem.
Regularly someone would comment, "Why would you want to do that?".
I wouldn't be asking if I didn't have a need to do it!
It's bizarre that some people can't see beyond the end of their own nose and imagine different use cases to their own.
There's a lot of people out there who are happy to tell you that you have an XY problem, but when you explain why it is not, ... crickets.
Unfortunately in my experience it is often followed by an explanation of why what I'm trying to do isn't what I should want to do, as though I am not aware of my own goals and constraints.
Sure, some people are assholes, but that's just people. Nobody's in your mind, they can't guess your requirements, thought process and level of experience. In my experience, more often than not, asking the question "why would you want to do that?" gets you a bad reason. "I did X this way because Y. I need Z." would filter the legitimate questioning out. From there, the others are just assholes, and those are everywhere.
As for the small differences in semantics, I'm not a native speaker, neither have outright negative connotations to me, but I feel like getting tripped up on such a small thing - and simultaneously assuming the interlocutor's intentions - is kind of overblown.
"Do", in the present tense, does not carry those connotations. It implies "I have acknowledged that your want is present and real, but I need more information about your context to be able to help."
Sure, but if I told a plumber they'd understand and help me find a solution to my problem. That isn't what happens on StackOverflow, instead they try to convince you that you have to change your problem to fit the solutions they're familiar with.
But yeah - the 'XY problem!' crowd (along with the 'But The Rules!' crowd) has also totally destroyed Stack Overflow.
It seems impossible that it will be ready for use before it is hopelessly obsolete (e.g. Windows and MacOS will be beaming images straight into your brain or something.)
Wayland is (fortunately) coming, but changing a whole ecosystem is not a small feat (even with the great backward compatibility with XWayland, because unmaintained apps will never port)
agree 1000% - really don't care about X per se, but remote windowing is an awesome and unique feature, and disrespecting it by treating it like some obscure/uneeded thing and qustioning why people are mad about it conveys alot about the attitude that i don't want to get behind
If the Wayland design was weighed down by such things, it could never hope to be progress.
But actually "remote windowing/apps" is even better supported, it's a universal proxy: https://gitlab.freedesktop.org/mstoeckl/waypipe Absolutely does not require any support from the core protocol.
X-Windows is itself a weak response to remote access. I have memories of trying to use Oracle Forms over a modem connection to uni, and finding it far inferior to VNC connections to work systems - effectively unusable.
The remote-windowing mechanisms of X-Windows are coupled to aspects of X-Windows that Wayland was created to overcome. The video 'The Real Story Behind Wayland and X - Daniel Stone' discusses this.
Microsoft Windows does not do remote-windowing in the X-Windows sense. RDP is not Explorer. From what I read, a RDP-like-thing could be built, and Wayland would not get in the way of this. I think the Wayland team make a clear case for why this is out-of-scope for them.
don't throw the baby out with the bathwater, in other words
He’s not asking anyone to like it; in fact, an informed dislike would be much better than the reaction many people have to Wayland.
A lot of the response the Wayland maintainership receives is instead a reflex-response of uninformed people repeating out-of-date FUD they heard somewhere, without ever having actually looked into the issue themselves. Which is something you just don’t do if you think of the people on the receiving end of it as real human beings.
(That kind of scarlet-lettering does have a place! It’s a perfect tactic to allow newer community members to assist in suppressing a widespread “old evil” which the community long ago chose to excommunicate, for complex reasons that the newer community-members haven’t been around long-enough to absorb. It’s the reason people belittle/make jokes about Multi-Level Marketing schemes, pseudoscience, etc. — or in the FOSS sphere specifically, about bought-out projects like AdBlock Plus. The people who reflexively just laugh at newbs for using $thing, are acting as part of an “insulation layer” of people defending a community from a threat at the margins without really understanding the threat themselves; and they’re acting at the behest/connivance of people closer to the core of the community who do understand the threat.)
But Wayland was never excommunicated from FOSS. There is no old threat; only old arguments. The core people working on Wayland are in fact the same people who work on X. The other core people, those working at the distros who package these components, were never against Wayland; just wary at first, because they didn’t want degraded functionality. (And even then, they’ve always been shipping it on distro spins for e.g. mobile, where using X11 has never worked.)
> They just punted and said "that's a compositor problem!" as though that was supposed to make it ok. People have thus harbored some inherent resentment ever since.
It’s not punting when the same maintainers also write the compositor. (Yes, they do!) They’re effectively doing the same thing StackOverflow does when it tells you “this is best handled on [other StackExchange site X]”: not trying to make you Somebody Else’s Problem, but rather telling you to go to the counter two paces to your left, where they’ll trundle over wearing a different hat, and then help you solve your problem there.
The whole project of Wayland was to take a monolith with mixed responsibilities (Xorg) and refactor it so that the responsibilities were each handled in the correct places, by teams who best understood that layer of the stack. As such, “Wayland” as a project staff covers all the resulting components—they’re all outgrowths of one project. But all those resulting components are all also their own codebases, with their own growing maintainerships, with their own negotiated APIs, so that they can grow separately, be swapped out for competitor projects, etc.
I don't care how much better Wayland is...if it can't do something I'm used to and need, it's going in the trash. I don't have time or interest to read mailing lists and bug trackers to know when it's fixed.
Editing since I can't reply - I didn't mean to come across as rude, sorry for that. Just explaining that as a user, it doesn't work out of the box. Having to explain to users to do the above is not an ideal solution.
Complain to Slack.
Apple for example regularly uses pressure from users on app authors to drive improvements in their platform. I don't see why Linux distributions should flip backward to keep their platform static, to the detriment of their long term development.
Wayland said screen sharing is something to be solved outside of Wayland itself. That solution is still early and not complete. It's not anybody's problem, it's just how things are. It'll get fixed eventually, in the meantime X11 still runs fine for most users and in 6-12 months switching to Wayland should have fewer tradeoffs. Until then Wayland is missing some use cases X11 easy fulfills. Unfortunately X11 is also missing many use cases Wayland fills. As a result we should expect different users to be better served by different answers about how ready a Wayland environment is for them and both to be equally correct.
Screengrabbing during the last year was even better than what X11 could provide, including the ability for the user to limit the grabbing to display or window. That's something that user cannot have under control in X11.
Pipewire is also not limited to Wayland; it will work with X11 too, so the X11 users won't be abandoned just because there's Wayland support too. Firefox doesn't seem to have problem with it, Chrome has it behind flags. For apps with fast moving releases as these, I don't see any problem with them supporting 0.3 release and when/if there is API breaks, updating it.
Beats not supporting screen sharing under Wayland at all.
I.e. it's not that the tech stack or architecure is the wrong it's simply not done yet and not done to the point it's a bit silly to blame Slack for not enabling it.
It's also not the fault of wayland/pipewire/chromium/electron/slack for not all simultaneously releasing working screen sharing but it is a mistake to say you can switch from X11 to <Wayland stack> and not worry about screen sharing.
I use pipewire for screen sharing, I like it, but its not a fully baked stack and won't be for some time yet.
Are you sure? I'm pretty sure I had two tabs, one for picking displays and other for picking windows. Pretty much like this: https://bug1675764.bmoattachments.org/attachment.cgi?id=9186...
"Will this let me share individual windows?
No, only entire outputs. It would take significant work in wlroots, and likely a new protocol, to make this possible. A second rendering pass would be required, which would significantly reduce wlroots performance, so this may not be implemented any time soon (or ever).
Will this let me share all of my outputs/displays at once?
Not yet, no. It will likely never create a single stream that combines all of your outputs, but once we implement better output selection, there is no reason xdpw cannot create multiple simultaneous streams of different outputs."
So it looks like I'm shit out of luck for quite a while on sway/wlroots. Looks like Gnome figured it out. Not sure about KDE.
Thanks for the constructive and informative discussion.
https://github.com/emersion/xdg-desktop-portal-wlr/issues/12
Just recently (I was on a Fedora box temporarily) I was trying to figure out how to get Nautilus to stop starting a search whenever I typed something, and instead highlight the nearest match in the current directory, y'know, like pretty much every other file manager in existence. Eventually I found a thread where the core Gnome contributors were saying "it sounds like you don't want this feature, what you really want is a better search function". They probably should never have enabled "reactions" on their bug tracker since it was piled 100's high with negative reactions - yet they still doubled down and said it's not something they're going to support (despite having supported it in the past, and Ubuntu even bundling patches to make it happen up until recently).
It's a frustrating trend in FOSS that contributors feel like "we're doing this for FREE don't you know, so whatever we say is lore and since you're not paying, we don't have to listen to you". Yes, I understand how amazing it is that this software is truly free and created by volunteers, no, I don't understand how that gives you dictatorial power over 100s of users who don't like the changes you've made.
To be honest I don’t see how you can understand the first bit but not the second. Yes, they can make changes that you don’t like without consulting you.
Commercial software, like most things in life, is responsive to incentives. The people who buy things get the most say in the product.
For open source where the end users aren't buying anything, and the developers are either creating product for their own gratification, or for some more nebulous corporate goal, the incentives are rather indirect. And that makes a big difference. Software, under those conditions, will frankly be worse for the majority of users.
This seems to be the dominant culture, but it's actually pretty toxic that people feel entitled to whine about software created by people who owe them absolutely nothing.
Constructive feedback is useful, and appropriate if the creator indicates that they want it.
Whining and ranting is a waste of energy. It makes people feel bad and leads to no beneficial change.
I don't think Drew DeVault wrote this because he's received lots of useful constructive feedback.
What makes you think people owe nothing to each other in the open source ecosystem? I maintain a package for Fedora, I have submitted a few patches to the Linux Kernel, and I regularly report bugs. Do the Wayland developers not benefit from any of the above?
Even my mother, who is not very technical, has managed to identify bugs here and there which I report on her behalf. Do the Gnome developers not benefit from that?
We cannot all be contributors to every package we use, but we are all part of an ecosystem and we all have the right to ask for changes by others in that ecosystem. You call it whining, but you know what? When developers break use cases, users have the right to complain about it. If the Wayland developers do not want to hear those complaints, they should not be involved in developing software that millions of people depend on, nor should they have tried to replace software that millions of people depend on.
Actual contributions are another matter. If you contribute to a project, then sure, you should get a say proportional to the size of your contribution. And I wonder how many of the people who complain about Wayland have made sizeable contributions?
An important point here is that it's up to the maintainers to evaluate the value of your contributions from their point of view. If you don't respect this, you're again trying to impose obligations unilaterally. That is, offering help that may not really have been wanted in the first place and then expecting something in return.
>If the Wayland developers do not want to hear those complaints, they should not be involved in developing software that millions of people depend on, nor should they have tried to replace software that millions of people depend on.
This seems way off base to me. I hope this attitude is not pervasive because it seems like it's a huge discouragement to people who want to write useful software. (If you succeed to any degree, millions of people are automatically entitled to shout at you whenever they experience some inconvenience.)
How many people asked for their distro to switch to Wayland?
You seem to think that these critical packages that millions of people depend on can be treated like hobbyist projects. Yes, when your project is a hobby, you can tell people that their complaints are not your problem and that they should just fork the code if they need something different. However, distros should not make hobbyist projects core components that users are unable to avoid, nor should anyone push their hobbyist project as a replacement for a core component.
The fact is that the Wayland developers set out to replace X11. In what world are they not opening themselves to criticism from people whose use-case was supported by Xorg but not supported by Wayland? By now a decision made by the Wayland maintainers will affect the vast majority of desktop Linux users; why should they be immune from complaints? When people depend on your software you have to deal with their complaints, that is just a fact.
I don't think that's quite right. It's certainly bad manners to be rude, but the underlying complaints are one of the better - if not best - means by which the people who make the software can get feedback to ensure they're building the right thing.
Would you invest in a startup whose founders constantly complained about how their potential users whined about their product?
Aside from auxiliary revenue sources like complements and consulting, open source software has value in large proportion to how many people use it. Reputation and goodwill, if nothing else, bragging rights, job opportunities, and so on. You don't get these things from writing software than isn't used.
And you can't really expect everyone to provide constructive feedback. Often, the more emotional the rant, the more pain the user is feeling. Not all humans are dispassionate rational agents. Not every user is a professional product manager able to outline constructive incremental improvements to satisfy requirements. And it's silly to expect that. Product managers are paid well in industry to do this. Doing it for free for open source is just as much a donation.
I'll go further. If you're not willing to tolerate more and more rants as your software gets more popular, to the point that you end up not contributing or quitting, it might be better if you didn't start. Abandoned and decaying software hurts too, and it especially hurts the people who took a bet on it.
(I learned my lesson young. I created a few bits and pieces of open source, and quickly found the the effort of integrating the contributions of third parties more work than it was worth. The only way I'd do open source again is as a developer outreach / organization halo PR strategy for the benefit of a company I'm being well compensated to work for.)
If someone relies on a piece of open source software on the assumption that it will be maintained in perpetua for free, then they’re simply foolish, and they have only themselves to blame for any resulting harm.
> Not all humans are dispassionate rational agents
You seem to be forgetting that this applies just as much to the people who maintain open source projects. The endless negativity inevitably has an effect.
People in charge of large FOSS projects like Gnome should not pretend it's just some hobby project they can do whatever they want with. Those projects are essentially public infrastructure and should be treated as such. It's not their personal plaything.
Yes, people who do the work have the most say, but sometimes they really use that to do stupid things with the code. I don't know how to correct that though. Commercial software is no better about this.
They're not pretending. I'm afraid you're laboring under a misconception. Nothing obliges the GNOME team to accede to the wishes of people who contribute nothing to the project.
Nothing, until users flee and they stop receiving bug reports, patches, donations, and so forth. Moreover, because of what Gnome is, if they drive users away it will also negatively impact other projects, because for a lot of those users leaving Gnome means ditching open source software entirely and switching to e.g. OS X.
Part of the joy of open source are the freedoms it gives you, including the freedom to fork a project that doesn't meet your needs and make it so that it does. This works as it should pretty often - look at the gnome2 forks, the systemd-less distros etc. There's plenty of choice out there, and plenty of opportunity to get involved.
If you're unwilling to exercise those freedoms, then you're just whining about the stuff you're getting for free.
Losing users is always a bad thing for the open source ecosystem. Lost users means fewer bug reports, fewer patches, fewer donations, and less support from paid developers working for various corporations (easy to forget but there are people whose job is to maintain open source projects like the Linux kernel). Fewer users means less incentive for hardware companies to provide any support, even just minimal technical documentation, needed for open source developers to write drivers (let alone contribute to that).
Forks require a significant commitment of time and effort, and really should be considered a last resort. The time commitment is much greater for prominent projects that receive a lot of activity like Gnome or Linux. Most users, even those with the necessary technical skills, do not have enough spare time to maintain a fork when things break.
Your dismissive attitude is fine for a obscure hobbyist project with a dozen users. It makes no sense for desktop Linux distros that now have many millions of users.
I understand that people can be aggressive, rude, and downright hostile. I'm not suggesting that such behavior be rewarded. Nor am I suggesting that every open source project has to do everything any user says. I do, however, object to the notion that there is no obligation whatsoever between the producer of a technology and the users of that technology, regardless of whether money has changed hands.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
You will find that most other FOSS licenses contain a similar clause.I agree with that, projects should clearly state their goals and priorities upfront. But relying on legalese from MIT license is not the solution.
I struggle to express how strongly disagree. This is like saying that someone who gives away a 3D printer on freecycle is then obliged to help you fix any problems with it.
I said nothing of the sort. They have an obligation to the project and its value as a piece of infrastructure used by many (including noncontributors).
Pretty sure they are aware of this, even Gnome. Gnome's Dev Team is often citing user studies etc. and I believe they are genuine in trying to produce software for the public, rather then themselves.
...Though I believe they don't grog how disruptive changes (any change) can be.
The option always remains to change it yourself or stop using it. It's not as if it's bound to the hardware (Apple) or shipped with the machine (Windows). It's not a SaaS that may vapourise or change underneath you.
There's no way to force consensus in situations like this. The best you can do is force out those maintainers you don't like with a harassment campaign.
If I changed every bit of software I dislike, I would have no time left for my actual job. Yeah, I get it, these volunteers found the time to work on this one project and therefore get more of a say about what changes will be made, but you know what? They also have to use other software, and they would not have time to work on something like Gnome if they were busy making changes to Wayland or the Kernel or whatever else.
Worse, in my experience, Gnome developers will turn down patches that do not align with their ideas about how things should work. I have had it happen to me, I have seen it happen to others -- even when we find time to change something, we cannot commit to maintaining our own private fork, and dealing with merge after merge or trying to keep up with a project that has as much activity as Gnome or Wayland. Obviously some patches need to be rejected, but in the case of Gnome I have found that rejection often comes down to their notorious "less configurability is better" attitude.
As for stopping using it, how does that work with critical packages like systemd? At some point you wind up having to ditch an entire distribution, with all its infrastructure and maintainers, just to get one use case to work. In some cases you are left with a choice between a project that has the features you need but has received no updates (including security updates) in years, or a project that does not have the features you need but is actively maintained. More often than not people will just give up on their use case, which in some cases means giving up on open source software entirely since that use case was the reason they were using open source in the first place. Some might think that is fine, users have the freedom to choose what software to run, but the fact is that fewer users means fewer contributors (including many people who make only the small but very important contribution of reporting bugs) and a less robust open source ecosystem.
They don't get "more of a say", they get ALL the say. This is the way of Free/Open Source.
As for stopping using it, how does that work with critical packages like systemd?
It works the exact same way. If you don't like it, don't use it. Simple as that.
"Facilitating the unrestricted use of extensions and themes by end users seems contrary to the central tenets of the GNOME 3 design."
I don't ever remember cursing my Windows 3.11 machine that the scrollbar and toolbar icons were distracting in File Manager, nor do I crash my car when the speedometer changes and wish that the distraction of the speedo and rev counter was removed.
I remember using GNOME2 and loving it.
I often wonder constitutes a "power user" - someone who wants to actually get stuff done and not fight the UI to discover things??
I wonder when iOS became the ideal - blindly fumble around whitespace to see if some text is actually a button or if there is some unfathomable control hidden that you need a magic incantation to discover (swipe left on a list control is delete - my mum still doesn't know this)?
Is a "power user" someone who has learned all the different ways of interacting with a modern user interface? You used to learn: click, double-click and scrollwheel. Now every interaction with a control is different and impossible to learn or discover simply by using it. Absymal.
Gnome more or less optimizes for minimal configurability, the theory being that most users want the UI to be as clean as possible. They do not particularly care if someone would like to be able to change some annoying behavior, because they thought that behavior made sense and they feel the cost of adding a button to disable it, or even burying a configuration bit in gconf, is far too high. Of course, they do not have the resources needed to run actual user studies the way Apple, Google, and Microsoft do, so their idea of what users want is mostly based on their own ideas about what users want (since they usually dismiss feature requests from their actual users, because those are "power users").
"There was only one catch and that was Catch-22, which specified that a concern for one’s own UI in the face of flaws that were real and immediate was the process of a power user. Orr was an average user and could be listened to. All he had to do was write a feature request; and as soon as he did, he would no longer be an average user and would have to be ignored."
Also it doesn't even show hibernate button on the "start menu" (or whatever it's called these days) - because apparently the ability to actually power down the box while keeping all states is too confusing to have!
It is not, sometimes GNOME devs even say outright that the project is for their peers and those who share their vision. They do their testing on other GNOME aficionados. In the days of Unity, Canonical did some of their user testing on regular people, those days are long gone.
It truly needs its own fractal of bad design essay save it would have to a farce in 7 parts.
To say that they targeted a different kind of user is insufficiently descriptive. 3.0 was the beginning of ticking off the users they actually had in order to target users they wish they could get with a total package that such users could never encounter in a million years because joe average wasn't installing Linux in 2011 regardless of how simple you made the interface.
9 years later the Linux user base is virtually unchanged and gnome 3 is no longer horrifying as 9 years of labor have rendered it modestly acceptable after the worst ideas were put off or mitigated.
If you spent 300k building a hovel where the roof fell in quarterly and you after much consternation and a decade of work figured out how to keep the roof mostly in place most of the time I would pretty much expect such a project to be the go to horror story among home builders in the neighborhood.
This isn't meanness its just honesty.
It doesn't - you are completely free to roll back those changes, or make different changes of your own.
Maybe.
I think the discussion should happen.
Because I don't think "I wrote it, if you don't like it, you write it" is a 100% defense to hordes of upset users.
GNOME has tens of millions of users.
I do understand your sentiment. I don't like GNOME myself. But there are alternatives. If you don't like it, try using something else, contributing patches with configurable behavior or maintaining a fork.
FLOSS maintainers are a rare breed. We as a community need to find ways to not burn them out. Even if you have millions of happy users, just a couple of really toxic ones can make it feel not worth it.
I was referring to the hundreds of users who "reacted" to the bugzilla thread on this issue, but I'm sure it effects many many more.
> I do understand your sentiment. I don't like GNOME myself. But there are alternatives. If you don't like it, try using something else, contributing patches with configurable behavior or maintaining a fork.
Generally I don't use GNOME, on this occasion I was working on a laptop supplied by an employer. The frustrating thing isn't that they don't support a feature that I want, it's that they strip away features that existed before, and completely ignore and talk down to users who tell them that the feature is very useful and much wanted.
> they strip away features that existed before, and completely ignore and talk down to users who tell them that the feature is very useful and much wanted.
I'm under the impression that GNOME strives for similar UX to macOS. This behavior sounds just like Apple to me, so maybe it's just the correct way to do it.
I've used both macOS and GNOME as daily drivers and got frustrated with both. I'd certainly get frustrated if an employer forced me to use unsuitable equipment (and some have in the past). But that's not the fault of GNOME developers.
Those hundreds of user are:
1. A vocal minority, most likely. People happy about it don't go on bug trackers to support devs.
2. Not making the software, not part of the decision making process. Don't like the end result ? Fork it if you have the ability. Give constructive criticism if you want and you think the team is receptive to it (or even cares about it. Sometimes, I just don't want your genius idea).
So, yes. They're doing this for free. Don't like it? Fork it, or don't be an ass. If you can't do either of those, the third option is to fuck off.
I don't use Gnome because I don't like the direction they've taken it in. But they have absolutely every right to do with it as they please. And I have every right to insist it's totally not fit for my purposes and refuse to use it.
The same way I have no (current) interest in using Wayland because it'd be too much hassle to try to replicate my workflow with it. But they're free to ignore me the way I ignore them.
This doesn't mean you don't have a right to discuss or critique and discuss and if appropriately fork or write you own.
I am not sure what you mean here. Weston, the original implementation, includes support for screenshots, screensharing and RDP. Other implementations decided to implement those in a different way, for various reasons. The way to not "punt" this would be to use libweston but that has its own set of issues, and it seems strange to blame the Weston hackers for not upstreaming every single other thing that some implementer is working on.
I'm not fully up to date on the state of these things, but if the different implementations doesn't have a common interface it's goodbye to ever having screensharing work for everyone. I think that's what the parent means.
If we're lucky Discord/Zoom/etc. will implement it for the most popular compositor(s).
Similarly with screenshots - even though it's a much simpler problem it's annoying if the program taking the screenshot is fundamentally bound to a specific compositor.
If I'm not mistaken there are standardization efforts underway today though?
No, not really. In practice what happens is Discord/Zoom/etc do implement it for the most popular compositors and then the other compositors follow suit if they want to support those applications. You would be complaining even more if they only supported weston because their screencast mechanism is pretty limited, and it would suck if the other ones just copied that.
The current "standard" is to just use pipewire and have the display server talk to the pipewire server, most commonly using xdg-desktop-portal. This is obviously outside the scope of Wayland, because any application can talk to pipewire and share/receive a video stream. I don't know about Zoom, but Chromium has support for this in the works, so Discord should get that eventually from updating their Electron: https://github.com/electron/electron/pull/26022
You can still use Xorg on most distros. In Ubuntu it's one checkmark.
Why do you feel the need to announce this to anyone, particularly the people who work on it for free and owe you nothing? Is that not his point?
While we can all agree X is a pile of something, I am in the camp that remains unconvinced by Wayland. It does not work on my hardware, it does not solve problems I have. OK, no more screen tearing, which is nice.
Wayland have to understand that if they want to replace X, they'll have to replace X.
>That does not mean anyone is under an obligation to like it.
Doesn't seem that was the point of that statement. Rather, it's asserting that it's invalid to claim that the very people who built the thing in the first place are a "vague authority".
How true the accusation it, I dunno, but that's my read of the sentence - not that the volunteer devs are somehow entitled to endearment by virtue of their volunteering. :-)
Eventually that use-case in Xorg/X11 will cease to function when it becomes obsolete and unmaintained, but I agree how bad the outright dismissal of someone's use-case can be perceived. There has to be a civil discussion on both ends.
It's not just about replicating this functionality. It's about having an open framework that makes building these tools, and other unforeseen tools, easy. X11 was very accommodating of this.
For example, I like to run xsnow during the holidays. Wayland's answer to xsnow is -- we don't support that, but tell you what, draw up an RFC for a D-Bus API for desktop snow and wait 5-7 years for compositor implementors to consider incorporating it. Or something completely different. You know, whatever. It's like you have to prove your use case is valid to the community before you can even start hacking on it in a way that you can expect it to work with more than one DE.
For Wayland the attitude is "Fuck you. You get a buffer for a desktop window and that's it. [Wayland does not support nested windows.] Oh, that's not enough? You're not writing a desktop app? You want snow on the desktop/a desktop magnifier/a hall of mirrors effect toy/an anime window sitter/pinnable menus/something that responds to global hotkeys/etc.? I'm sorry, did we not anticipate your pwecious widdle use case? Fuck you. No one actually writes applications that way any more, nerd. Go back to the nerd table. We're trying to get the cool popular Mac-using kids to notice us here."
The X11 security issues are mitigatable with some changes to the server implementation. The Wayland approach really never was about security. It's about letting the cool kids define the shape of the Linux desktop to the exclusion of ordinary users/hackers.
FYI there is some prior art for poking a security hole in the Wayland server to support X11 features, but obviously not all implementations will want to support this: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/b...
This is inimical to the design principles of Wayland, whose security policy is to isolate all clients -- no exceptions, no escape.
The 1984 Mac was largely a novelty, but it was one that demonstrated possibilities. There are non-novelty applications that are precluded by Wayland. Something like EXWM could not be done. You cannot write a standalone virtual-desktop switcher, it must be integrated into the compositor. Et weary cetera. Wayland is very opinionated about the kinds of programs you can write for it, and if you want to go beyond that you must traverse the step function into "write your own compositor".
But criticizing Wayland on a pure comparison basis, clinging on to Xorg server – absolutely doesn't benefit anyone, including whoever is posting it.
X window system (the idea) and Xorg server (the project) – is kind of abandonware [1] at this point. The last release was in 2018.
Don't want to get into random philosophy about contributing vs complaining vs criticizing, etc.
But in this situation – there's just a definitive community health benefit in moving on. Not complaining, not contributing, but just moving on. There is no further value left to be added in any comparison.
1: https://www.phoronix.com/scan.php?page=news_item&px=XServer-...
Then why not include an example compositor that solves these issues?
>Maybe Wayland doesn’t work for your precious use-case. More likely, it does work, and you swallowed some propaganda based on an assumption which might have been correct 7 years ago.
I'm a game developer. None of the software I use works reliably or at all on Wayland. None of it. And I'm completely fine with that, I'll keep using Xorg and you can give me a call when my "precious use-case" is handled.
Getting xwayland working is another story. I can't seem to get it to work at all on my PinePhone; but to Wayland's credit, the phone crashes for all sorts of reasons.
But emacs X/"gtk" frontend has been controversial for a few reasons, with work having been under way for quite a while for a new frontend, somewhat unrelated to Wayland.
Xwayland not working on pinephone is ironically primarily an X problem, as Xwayland is just xorg-server compiled with only the Wayland backend enabled.
And, as there are little to no xorg developers, fixing xorg is proving tricky as there is no one to make a new xorg release...
As for the pinephone part, I may not understand your point about “to Wayland’s credit”, do you think stability issues on the pinephone is due to wayland?
Ubuntu Touch
Mobian (phosh)
PostmarketOS (sxmo, phosh)
Manjaro (Phosh, Plasma and Lomiri)
And multiple release versions of each; using multiple different sdcards as well as the on-board memory.The only OS that doesn't exhibit the reboot/black-screen issues for me is the one used to allow flashing of the device over USB.
The factory test software works, all of the different OS variants; so if there is a hardware issue the factory test software isn't able to detect it. Notably, I've left the test software running without issue.
I've even tried turning off all the hardware dip switches.
It's a shame, 'cause I really like the concept, and bought it for myself as a birthday gift. Thought it would be a fun project to hack on.
Edit: A commenter on this thread mentioned Emacs. I have not tried that as I have recently switched to Emacs but if that is true then that would also be a big one for me.
My biggest gripe is that if you have more than one window of Chrome open it gets VERY slow. Multiple tabs are good, multiple windows are not.
"It's a perfect compositor, as long as it is not expected to composite." ;)
Personally I need the ability to open a remote window on my desktop, fingers crossed that someone will add that.
Chrome regressed on Wayland after changing the default rendering path on Linux. The slowness seems to be a problem in getting proper vsync, and there are multiple cases where it was/is causing issues.
chromium --enable-features=UseOzonePlatform --ozone-platform=wayland & disown & exit
You can also adjust your .desktop Chrome launcher to use these flags
Steam works fine. What exactly doesn't work for you?
"at the moment there are several types of applications that not only don't work in wayland, but would be very difficult, or impossible to work natively in all major wayland compositors.
Examples (in order of importance to me):
* Programmatic output configuration (xrandr, arandr, etc.)
* CLI clipboard access (xsel, xclip)
* Third party app launcher/window switcher (rofi, dmenu, albert, docky).
* Clipboard managers (parcellite, klipper, Gpaste, clipman, etc.)
* Third party screen shot/capture/share (shutter, OBS, ffmpeg, import, peek, scrot, VNC, etc.)
* Color picker (gpick, gcolor3, kcolorchooser)
* xdotool
Until Wayland has all these (and more) and they are as stable and feature-rich as the existing apps on X, I will not willingly switch to Wayland.PS: ydotool has been touted as an equivalent of xdotool, but ydotool has only a tiny fraction of the features of xdotool.
And it's unlikely that it'll get much better any time soon, as its README says:
"Since Jun, 2019, I have little time to maintain this project"
wtype is supposed to be another equivalent to xdotool, but it has even less features than ydotool.
If the rest of Wayland's X equivalents as feature poor as these, I don't hold out much hope for Wayland in the near future.
[1] - https://old.reddit.com/r/wayland/comments/85q78y/why_im_not_...
* It's not exactly the same, but I use Kanshi for dynamic output configuration. https://github.com/emersion/kanshi
* https://github.com/bugaevc/wl-clipboard
* https://hg.sr.ht/~scoopta/wofi
* https://github.com/yory8/clipman
* There's wlrobs for OBS. There's grim/slurp/wl-recorder for use outside of OBS.
* You can use grim to grab a particular color on the screen, but the UI wouldn't be as good, of course.No hate, just a practical problem being solved. No one is forcing you to shift prematurely, although assistance is always welcome to fix your usecase.
There are also a few forks on GitHub with native wayland patches out there too if `feature/pgtk` doesn't.
Now that may not be true.. but it seemed clear cut. I wanted to try Wayland really bad because i have a multi-DPI monitor setup, and Xorg is awful at that. Yet, it seemed too early.
Nvidia isn't exactly some niche product. Not exactly a "Precious use-case".
Wayland is 10 years old, and extremely stable. If it isn't working properly it's either your driver vendor or your desktop environment that is to blame.
How much of the market share is Nvidia? A stupid quick search's top result says 80%. So 80% of PCs can't run Wayland?
To be clear, i know nothing of compositors/etc, I've had nothing but problems with Xorg, and i want to use Wayland. _and yet_ - it seems like there is not a single PC in my house, or any of my family, that can run Wayland.
I'm happy to accept your statement of where the blame lies. But if you're telling me Nvidia can't run Wayland currently.. does it matter to the end user? When "Most PCs" can't run Wayland his statement of "precious use-case" seems off base.
No. 80% of PCs cannot run Sway. Both Mutter (GNOME) and KWin (KDE Plasma) implement support for EGLStreams for the Nvidia driver. However, EGLStreams itself is inherently quirky and kind of broken, per Nvidia themselves. They're working on moving to DMA-BUF to fix this, and at least on the KDE side, are committing to replacing the implementation in KWin to use that once the driver is updated to use it.
> it seems like there is not a single PC in my house, or any of my family, that can run Wayland.
Huh, here at work and also privately all can run Wayland just fine; just always had issues with NVIDIA, so we would see it exactly the opposite way. We vote with our wallets and strictly prefer AMD or Intel GPUs, as they both play much better with Linux and open source in general (could always get better, though).
Note also that on Linux the market share from AMD increased from ~25% to ~40% over the course of the last two years[0], and those do not seem to be short-lived effects, and the ratio may well tip over in favour to AMD soon in the Linux world.
So yes, if you want to run Linux with a modern Graphic stack you will need to buy a GPU from a different vendor than NVIDIA. At least if hell freezes not over, and they put off their backwards bent attitude against open source drivers.
If you do not want that then fine, use your NVIDIA card, but don't expect people to put in any extra work just because NVIDIA always want to be a special snowflake; seemingly putting in extra effort to produce as much extra work as just possible to support it.
[0]: https://boilingsteam.com/amd-vs-nvidia-are-linux-gamers-swit...
That's not at all what GP is saying. They're saying that X handles their use case, and Wayland doesn't, and that most end users won't care about who's fault that is.
A lot of the criticism of Wayland comes from uninformed jerks who want to trash the protocol over stuff that isn't a real problem, but there is also a bit of reflexive lashing out that comes from Wayland advocates. GP is just saying they can't switch to Wayland until the ecosystem around it matures. That's not an attack, you don't have to take it personally.
> you will need to buy a GPU from a different vendor than NVIDIA
I run a 4K monitor on my desktop with an ~6 year old NVidia graphics card. I run modern software on that machine, I watch movies, I run games, I do 4K art, I even boot into Blender occasionally. I'm not seeing significant slowdown or framerate problems as long as I use NVidia's proprietary drivers in X. But on Nouveau, it's unusable. Who's fault is that? Probably NVidia's! But it doesn't matter, my computer currently works well, I have no plans to upgrade in the immediate future, and this was put together during a period where NVidia was very clearly the sensible choice for anyone who cared about Linux graphics performance.
It's reasonable for people to use older hardware, and it's reasonable for them to want that hardware to work well. We're not talking about people running 32 bit OSes or something, not everybody upgrades their graphics card every 2 years, and it's not really feasible for the surrounding Wayland ecosystem to only target the people who do.
I don't have a proposal for that, I'm not saying anybody has to do anything. I'm actively rooting for Wayland, I do think it is the future. But I'm also describing why I don't run Wayland on my Arch setup and why I don't recommend it to people who ask me about getting into the more technical side of Linux. If someone wants to take even that as some kind of anti-Wayland screed instead of as a completely neutral, factual representation of the current state of the world and the Wayland ecosystem, then that's their problem, not mine.
There's this thing I'm seeing where anyone bringing up these issues just gets asked, "well, what's your suggestion? You want to force developers to do X?" I'm not suggesting anything! I'm describing why I don't use Wayland on my desktop. That's it, that's the only thing I'm doing. I don't know how to solve the problem, but the problem exists, even if it's not your fault.
Only the first group is the problem, and I think noone is bothered by the second.
No.
Long-term Nvidia share is about ~18%, AMD ~12% and Intel ~70%. But that's for the entire market, and since Windows gamers are skewing toward Nvidia, that makes the rest to make up the percentage.
So 80% not being able to run Wayland due to being Nvidia is grossly incorrect.
I'm extremely sympathetic to this argument, and I actually agree with ddevault's decision not to support NVidia in Sway. I think as an Open Source maintainer you don't have an obligation to burn yourself out solving a problem that is NVidia's fault, and we need real pressure on NVidia to stop being completely awful.
However.
Linux is at the point where I am able to start recommending it to ordinary people, and even technical people who are used to Windows. One the selling points I use is that a lot of hardware "just works" in Linux. NVidia is not ddevault's problem to solve, but people buy NVidia cards, and regardless of who's fault it is, if someone walks up to me and asks about switching to Linux or using a tiling window manager, I am not going to have a conversation with them about graphics cards. I'm going to point them towards X-compatible software that gets good performance regardless of their graphics card.
Doesn't mean it's anyone's fault that I can't recommend Wayland to everyone, but I can't recommend Wayland to everyone.
And I am on the Wayland hype train. I don't like X11, I want to run Wayland. In most cases, I would be defending Wayland right now. But if one of the conditions of switching over is "buy a new graphics card", if it's "redo all of your linux-wacom setup"[0], if it's running an entire embedded X session just to get Emacs working[1], if it's that common applications just don't work right now, then that's not ready for prime time. Those aren't problems that the Wayland devs can fix, but until they get fixed, I just can't in good conscience tell people that the Wayland ecosystem is mature and ready for regular usage.
The moment I have to talk to someone about throwing out hardware, I'm recommending them to stay on X. I don't care who's to blame, people want software that just works, and I don't feel confident that Wayland just works. I'm not going to recommend every i3 NVidia user throw away their graphics card, that's not a real solution. I sympathize with the devs who are being hounded to solve problems that aren't their responsibility[2], but I also sympathize with the users who are just as much not to blame for any of this. It is also not their problem to solve when they can instead just use an existing stack that works today. They have zero obligation to play Where's Waldo with the maintainers of a dozen projects just to build a working system.
----
[0]: Do equivalently powerful tools to linux-wacom even exist for Wayland right now? I can't find out. There's basically zero documentation that exists on this that I can find, compared to an extensive Arch guide about rebinding keys under X11, multiple helpful utilities like xsetwacom that are pretty well documented, and dozens of blog posts and forums that are troubleshooting even obscure issues. That's not a narrow use case, my computer is an art station. I need to know before I switch that my Cintiq will work perfectly, and DuckDuckGo doesn't know the answer to that question.
[1]: Emacs is finally working to get rid of its X dependencies, but it's still not part of the main release, I'd still need to switch to compiling Emacs myself, which... no.
[2]: And I'm also sympathetic to arguments that this just takes time, and as people start to switch more utilities will be written and driver support will get better. But it's taking a really long time. And I don't know where NVidia fits on that spectrum, because I'm not confident that they're going to magically stop being awful any time soon. Maybe someone else will write a compatibility layer around the driver or something? Eventually? Waiting for NVidia to go out of business and their hardware to vanish isn't feasible.
TL;DR Theoretically libinput is a linux-wacom replacement.
The issue here is that sway, one wayland compositor, does not want to support NVIDIA hardware because they lack manpower. They are also not able to attract anyone willing to implement this support, like other compositors have done.
If you wonder why this is the case, just read this blog post again, and wonder if you'd like to spend your free time working with maintainers that write like this. Go ahead, read any of the other blogpost, or skim through the closed issues in the sway repository.
Trying to spin sway's failure to support NVIDIA's hardware as "NVIDIA hates wayland" is ridiculous in 2021.
FYI I use sway as my main DE, and I'm indeed grateful to its creators and maintainers (ddevault is not a maintainer anymore). But when I read this:
> "We’ve sacrificed our spare time to build this for you for free."
they sound to be entitled to my gratefulness. This is just such a toxic way to go through this world.
...
Really? "Us, open source devs demans nvidia to alter their ways". And you wonder why people are disappointed in wayland?
What's your proposal? Requiring paid and free-time spending software developer to bent backward and maintain some complex parallel implementation for EGL-Streams just because NVIDIA always want to be a special snowflake? Even seemingly putting in extra effort to be a PITA for all involved and produce as much extra work as just possible to support it.
With that in mind really nobody can wonder why NVIDIA market share is continuously getting smaller in Linux systems https://boilingsteam.com/amd-vs-nvidia-are-linux-gamers-swit...
Do you thing Nvidia would ignore them, like they ignore Linux?
On some platforms (Mac) they don't have that opportunity at all.
Drew wrote a blog entirely devoted to the Nvidia issue: https://drewdevault.com/2017/10/26/Fuck-you-nvidia.html
Unfortunately, Wayland is dead in the water until it can run on Nvidia machines, and no amount of blog posts will change that.
if people on HN don't know or care on something like this (I didn't, and I don't), then good luck telling less HN-y people about wayland being the protocol and not the implementation.
I'm annoyed at myself for this very comment, but somehow, somebody (many people), somewhere messed up the messaging around these things.
Then it becomes a question of whether GNOME/KDE have feature parity between X11 & wayland. Then other compositors can go about implementing the interfaces they've setup to be GNOME or KDE compatible
Can't say he isn't straightforward. If you bought your computer without thinking about running Linux on it, or if you're looking to install Linux on an employer-supplied Windows laptop, there's an excellent chance you're a shitty consumer that he doesn't want using his software.
What I haven't considered is whether NVIDIA's Linux drivers might be implementing a particular graphics stack interface differently so that implementing Wayland on top of it becomes a PITA for some developers (not that GNOME and KDE didn't compromise to implement it anyways for users' sake). That does not make me a "shitty consumer", there is no way even a cautious consumer can take things like "GBM vs EGLStreams" fully into account every time.
Reading OP, I figured it was righteously angry. Reading your article, I’m now figuring he’s just angry and abrasive. The OP article reads hypocritical after reading yours.
>so he writes an article about people being assholes about him not writing free extra stuff
I did write that extra free stuff, and I'm arguing that some people are being assholes because they perpetuate the lie that I didn't do the free work, and because feature "foo" doesn't work, project bar must be bad. But feature "foo" does work, and using that falsehood to say project "bar" is bad is a dick move. This is the "horseshit" that's pissing me off.
The Nvidia issue is different: Nvidia goes out of their way to prevent their hardware from being used for this purpose. For example, they use signed firmwares that we simply cannot use for implementing the features we need, relying on cryptography to lock us out of their platform unless we use their driver. Then that driver doesn't support what we need. Nvidia deliberately prevents us from putting in the effort. They have created an artificial monpoloy on the required labor, then refuse to do it.
The other side of things is what I see differently. When folks are saying wayland isn’t ready, or even that it sucks, I mostly see them as referring to the ecosystem, not wayland itself. It’s an unfortunate quirk of language. Because foo doesn’t work, the bar ecosystem is currently bad.
On the nvidia side, I’m not going to engage further with you on that because you called me a shitty consumer and that pisses me off. Fuck me, you don’t want me in your userbase anyways, right?
I've spent the last few months doing GPGPU stuff on Nvidia Jetson devices and my experience has been the complete opposite. I've rarely seen something with such bad support and documentation.
Unfortunately… I'm not a hobbyist, I'm not tinkering and the aforementioned repositories are… about it. There is little documentation about
- how to build a custom OS image (necessary if you're thinking about using Jetson as part of your own product, i.e. a large-scale deployment). Ideally, I would like to do that as part of a CI/CD workflow. What proprietary drivers and libraries do I need to install? Nvidia basically says, here's our custom Ubuntu image with the usual GUI, complete driver stack and everything – take it or leave it. Unfortunately, the GUI alone is eating up a lot of the precious CPU and GPU resources, so using their OS image in production is no option for me.
- how deployment works on production modules (as opposed to the non-production module in the Developer Kit)
- what production modules are available in the first place ("Please refer to our partners")
- what wifi dongles are compatible (the most recent Jetson Nano comes w/o wifi)
- how to convert your custom models to TensorRT, what you need to pay attention to etc. (The official docs basically say: Have a look at the following nondescript sample code. Good luck.)
- how do I automize testing of TensorRT models & code? Why isn't there a compatibility layer which allows executing my models on non-Jetson devices / on a CPU (obviously at lower performance, but I don't mind).
- … (I'm sure I'm forgetting many other things that I've struggled with over the past months)
Anyway. It's not that this information isn't out there somewhere in some blog post, some obscure Github repo or some thread on the Nvidia forums[2]. (Though I have yet to find a wifi dongle that works reliably…) But it usually takes you days or weeks to find it. From a product which is supposed to be industry-grade I would have expected more.
[0]: https://github.com/dusty-nv/jetson-inference
[1]: https://github.com/jkjung-avt/tensorrt_demos
[2]: https://forums.developer.nvidia.com/c/agx-autonomous-machine...
I see so many conflicting stories about how well AMD GPUs behave and perform on Linux. Some new, many old. Some even as extreme as "I bought a new AMD GPU and there are no drivers for it yet". Furthermore for Blender specifically AMD seems to get the short stick in performance.
Really leaves me confused as to what to buy. Just venting.
Basically I would say it doesn't work.
- if you rely on something that doesn't currently work on wayland and you write about it on (for example) hacker news then you're the asshole and you should be dropping that something and switch to wayland (which of course, most of us cannot do)
- if your current setup works and you'd rater spend your time doing your stuff instead of rebuilding on wayland, you're an asshole
rinse and repeat.
Most wayland advocates can't seem to understand the philosopy of "I don't really care about xorg vs wayland, my current xorg-based setup works well enough for me, i'll switch when I can be equally productive on wayland".
They might care a little bit more when their only interactions are with snarky people going "sO yOu StILl CaN'T tAKe ScReEnShOts oN wAyLaNd haHaHa sHiTtY sOftWare", or legitimate assholes.
Because usually the part "my current xorg-based setup works well enough for me" is not true. It will be said, when it comes to wayland, and they don't want to switch... but once hidpi or mixed-dpi displays or reliable screen-lock or something other comes on topic, then suddenly "linux" (not xorg, but linux) is behind the times, doesn't work out of the box as other systems do and requires hours and hours of configuring.
That's the "my current xorg-based setup works well enough for me" in the full glory.
> Because usually the part "my current xorg-based setup works well enough for me" is not true.
case in point. What do you know about my current setup for example? it works remarkably well for me.
Stop making the whole wayland thing look like a bunch of annoying people.
Same rehash the same arguments of Linux vs Windows that people have been having for years. It's turtles all the way down :)
It's only less common nowadays around these parts since tux has become far more usable day-to-day in the last decade.
Look at the sibling of your comment (link for brevity: https://news.ycombinator.com/item?id=26004250).
Once proper wide color gamut and bitdepth support is added, it’ll be even better, as the monitors are 10-bit Rec.2020 and 8-bit sRGB. Which under X11 isn’t even possible to support, as again, Xorg only sees one single screen it’s drawing on, and it’s up to the lower levels of the stack to split that.
EDIT: Answering the most common question which is asked all the time as my comment is getting some visibility here:
Now why does wayland break screenshot and keyboard tools? Because "every program is a keylogger by default and can see any event, look at the contents of any window" is a major security issue, especially as it means the entire security model of screen lockers or containerized applications is useless.
Under X11, basically every application you run can trivially escalate itself to root. As even your Zoom client can just listen to your key events when you unlock your screen or use sudo in your terminal, save your password, and tada it can elevate itself. Under X11, there is no security whatsoever, and no separation of privileges.
EDIT2: Why is sandboxing applications important? (a) more and more proprietary software is also released for linux, which you probably shouldn’t trust. And (b) if e.g. your XMPP client is compromised, you don’t want the attacker to gain root.
EDIT3: Yes, screenshot tools and screensharing still works. I can use KDE Spectacle under Budgie or Chrome, and Slack, Teams, Discord, Jitsi all work just fine. OBS requires a patch, but also works nicely. It’s not impossible, it just requires software using it to be updated.
Sounds like a roughly equivalent situation either way? Personally I'd sooner use only Qt applications than have to use Gnome.
The result is good enough for my use case, I don’t have to deal with toy applications and I can use the full crisp resolution.
And thanks to standard protocols, I can use KDE software like KDE Spectacle as screenshot tool or screensharing with Slack, Teams, Jitsi under Budgie just fine.
If your only non-Qt application was Firefox, what was your problem under X11? Certainly for me having to switch to Gnome's WM/panels/etc. much would be more disruptive than switching browsers. (You might find Firefox valuable enough to be worth switching your whole DE for, in which case fair enough, but I don't think it's an objective advantage for Wayland).
(IMO Konqueror is a much better browser, but I'm sure everyone has their own preferences)
Plus I use firefox lockwise as password manager.
OK, so what's the solution here? Give up on screen-shotting tools forever? Or is there a plan to fix this somehow?
But by making it an explicit API, you can also apply an include/exclude list to the programs allowed to call this API, and e.g. exclude sandboxed applications from taking screenshots. Or e.g. add a permissions prompt (as on android or iOS) for an application to request to be on that include list.
The Wayland protocol provides the building blocks for someone to create an Android-like sandboxed environment, but doing so would break every application. Snaps and Flatpak come closer, but still generally miss the mark, since many applications require your entire home directory to be bind mounted in their container.
Running wayland alone gets you very little in terms of sandboxing. It locks the front door, but leaves the backdoor and all your windows open, because that's what every application under the sun expects.
> Under X11, you are basically running every application with root, always.
This is ... not true, either broadly or generally. You're saying this because Xorg runs as root, which means that any security flaw in Xorg yields root access. I think saying that "you are running every application with root" is stretching it a bit, but I'll accept it.
But Xorg doesn't have to run as root. OpenBSD started it years ago with Xenocara, but AFAIK Fedora also does not run Xorg as root. I'm not sure what other OSes are doing, but it's at least not a flaw of X11 in general, just a flaw of Xorg.
I’m saying that because if you ever type in your password, e.g. into a screenlocker, into a terminal with sudo, or an apt-get gui, every application can listen to those input events. Every application has the ability to be a keylogger by default. And with that captured password, it then can either inject input events into your terminal, or run sudo itself.
> The Wayland protocol provides the building blocks for someone to create an Android-like sandboxed environment, but doing so would break every application. Snaps and Flatpak come closer, but still generally miss the mark, since many applications require your entire home directory to be bind mounted in their container.
That’s true, but also not. With X11, even a flatpak without any special permissions or bind mounts can still basically control your system. Just listen for input events until you see the keys "s u d o", then listen until you see something that looks like a password, then wait until the user is not paying attention, and inject virtual input events to start a terminal and inject input events to run "sudo rm -rf /*" with the password you captured earlier.
By making the ability to intercept, record, or inject input events a special API, wayland at least allows flatpaks to be sandboxed at all.
Why such complication? An hostile application can simply add an "evil" line to your .bashrc and you are fucked anyway. No need to keylog anything, nor the fancy stuff that you describe. It doesn't need to be a graphical application, even. The "ls" command can do it!
That’s the point of flatpak. But as long as you use X11, there’s one single privilege escalation path left, and that’s the complicated one I described above.
Sandboxing arbitrary badly behaving software is just going to use the same APIs as flatpak, so this helps for your use case as well.
That's just false. Flatpak has the ability to restrict access to such resources, but it's completely up to the author of a Flatpak application if they make use of it. Like my file manager and text editor are Flatpaks fetched from flathub.org and both applications have unrestricted access to my whole home directory by default, including my shell configuration -- even the Chromium Flatpak can do that by default.
Edit: I just counted, out of 30 installed Flatpaks from flathub.org 19 have full access to either my whole home directory or the host file system.
Long-term, all applications should strive to be properly sandboxed this way
Of course it is. Someone who read your comment and didn't question it might now believe that Flatpaks would enforce filesystem sandboxing and prevent, say some game, from accessing their shell configuration or ssh keys. That's false and it's dangerous, because nothing is worse from a security perspective than misinformed users who have a false sense of security.
> but this sandboxing becomes useless on X11.
That's also false. For example X11 provides mechanisms like the X11 security extensions which prevent clients from accessing each others data through the X11 protocol (like key events or buffer content), which means when I run my color picker or xev in a such an X11 security context they literally stop working outside of their own window. Firejail makes this type of sandboxing easily accessible and it also provides the ability to easily isolate x11 clients with xpra or xephyr.
So it's not like it can't be done, it's just that Flatpak doesn't care about it -- which is fine. With dbus you get the same issues, because clients on the same bus aren't isolated from each other. In this instance however Flatpak cared and implemented a dbus proxy to isolate clients from each other without throwing dbus away.
I agree, but definitely not this way! The sandboxing details must be 100% controlled by the user. The people who distribute the application should have no say whatsoever about their required permissions. That's ultimately for the user to decide. From the point of view of the application, all files are visible, but it may be a mock filesystem with mock resources. Letting the application distributors chose the permissions defeats the whole purpose of the sandboxing.
Still, assuming a lack of other sandboxing, running a keylogger is pretty trivial. It's not by default, as you put it, but an un-sandboxed application has enough access to your filesystem to perform tomfoolery and get your credentials. At that point, there's no need to start a terminal, you just load some shellcode in whatever process you control, and say goodbye to your data.
As for sandboxing, well, you're right, although one could sandbox X11 if they wanted to. "X-on-X" is actually a thing, rarely used outside developing X, but I could see it being used for seamless sandboxing with some work. Work that, inevitably, no-one will actually do, so there's that ;)
To me the real progress needed is that applications need to move to using sandbox-friendly APIs so they don't break when put in the sandbox, and moving to Wayland is a key part of that. Applications built around the X11 idea of always having full access to everything will need changes regardless of what sandboxing solution is in use.
And any program can (on a relatively default box) trace arbitrary programs under your gid and scan memory for passwords. The real issue here is that there are very weak process boundaries within a gid (because it is historically most convenient), not necessarily a lot wrong with X11.
But the X11 boundary can’t be resolved unless you put a whole X server into every single application’s container with XonX, or you replace X11.
Which is part of why wayland exists.
(Sorry for butchering up the quote)
They're saying that because every app under Xorg can do keylogging they're effectively running as root, as any of them can keylog your root password next time you type it in.
All the hand wringing over root privilege escalation on Linux is almost irrelevant for most single-user systems, as since there's really only one non-root account which usually has all the data the user cares about, getting access to just that non-root account would be disaster enough for the user.[1]
So if Wayland's design is standing in the way of doing useful things because they're concerned about root privilege escalation, they've got their priorities mixed up.
[1] - not to mention that once a non-root account is exploited then getting root in some other way, even if Wayland itself can't be exploited, is usually not difficult.
If you sandbox an application today, while it can’t access the filesystem at all, and nothing under your user account, as long as it can show you a window under X11, it can log, manipulate, and inject any input events or window contents of any other windows as well.
That’s the one single big hole in todays sandboxes under linux, and there’s only two options to solve it: put a whole separate X server into the sandbox of every single application with X-on-X, or replace X. Which is one of the things wayland fixes.
That said I would use wayland if nvidia wasn't busy fucking everything up.
I have firefox windows on both monitors, and like to drag tabs over from one to the other.
Under X11, doing so is either impossible, or requires restarting firefox, which really isn’t something I’d wanna do.
There was an old XUL extension for firefox to parse QT_SCREEN_SCALE_FACTORS and apply it instead, but that’s long gone. And normal Gtk apps never worked properly.
Jailing applications only has a meaningful benefit whatsoever under wayland, as a flatpak without bind-home under wayland is actually properly sandboxed. Still a rare case, but at least it’s possible and getting even somewhat common.
In 2021, screen sharing and screenshots are table stakes.
No one will fault you for using X because zoom hasn’t supported wayland yet. The problem is people sharing blatant falsehoods like “wayland doesn’t support screen sharing” when there are plenty of programs that can do just that on wayland.
Wayland allows the same as well. It’s just an include/exclude list for such APIs, so you can actually limit which programs can access what.
Under X11, jailing GUI apps is entirely useless as there is no actual security boundary. Under wayland, you as user are in control and can define whether spectacle should be able to take screenshots (sure) and whether myflashlight-flatpak should be able to access all input events and take screenshots (probably not).
Maintainers with attitudes like this are why we can't have nice things:
https://drewdevault.com/2017/10/26/Fuck-you-nvidia.html
Sadly, the OSS driver doesn't support the 4k monitors I use for work well enough to actually use day to day. So my option is to use an "evil" but very stable driver and no wayland to do my job and get paid, or not.
Which means that the author bought an nvidia GPU at a point in time when it was already obvious that nvidia would treat linux as a second class citizen.
And even if not, you should first complain to the company you paid hundreds of dollars to, not the unpaid volunteers.
Or rather, complain to your IT to do so.
Meanwhile we (or at least I) aren't asking any unpaid volunteers to fix anything. We're asking them to stop claiming their new software works for practically every use case when it doesn't, nothing more.
He complains about users not using his software while also (literally) saying “fuck you nvidia”.
Hypocrite much? I’m a former GNOME software foundation member and was on the GNOME sysadmin team. I literally used to have root on gnome.org. I’m not the enemy here, but I’m being made out to be one because I use hardware that OSS stuff does not reliably support.
Who is 'them' here? Is that Drew DeVault, or can you point to someone else specifically?
In this specific case I guess it is fair to say it's Drew, since he wrote the article we're commenting on. I don't think he's alone in his statements on wayland though.
> usually some versions behind
Currently on 5.4-5.5, only Big Navi is not supported yet. With the state of the GPU market right now, we'll probably catch up before the prices on those become sane :D
Funnily enough, it's Intel that's slowing the updates down more than anything. amdgpu is rarely an early adopter of new Linux kernel API surface. i915 is very much one, all the time.
Everything else is completely unsupported, and if you’ve got an issue with that, you’ve got to complain to Nvidia, not open source projects.
You expect a single unpaid volunteer maintaining a wayland compositor alone to somehow be able to add support for nvidias badly documented custom format?
I'm not asking him to suddenly love Nvidia, but there has to be some compromise here. Nvidia works wonderfully on linux for desktop + x11 (with 4 x 4k monitors mind you) and for CUDA. I'd love for the nvidia proprietary drivers to support wayland, but I'm also tired of his hyperbole about bad users who don't want to use wayland.
Hell, I can't even fix the screen-tearing or get Optimus to work with Nvidia's proprietary drivers with X11 on my GTX 1050 Ti Max-Q laptop. It may be 'usable' in a sense that it doesn't crash, but the number of graphical glitches that I run into every single day (literally opening my laptop requires me to refresh every window) that I never run into with Intel or AMD kind of proves to me how much Nvidia cares about desktop usage.
Drew Devault might be a jerk (not my words) and have a lot of fallacies in his arguments, but that doesn't mean you should be doing the same thing.
People usually don't get to chose what HW the company buys for them and, anecdotally, "the component X doesn't work with Wayland" rarely makes a difference.
I've tried Wayland many times a year over the past 5 years.
I still only get a black screen.
X11 just works.
If he wants someone like me to use wayland, that’s the problem. If he doesn’t want me to use it, then there’s no problem. But I think this guy isn’t just maintaining it. He’s evangelizing it too, right? Get rid of the old broken X11 and come to the promised land of wayland where we fixed x11’s woes. And if it doesn’t work for you:
> Maybe Wayland doesn’t work for your precious use-case. More likely, it does work, and you swallowed some propaganda based on an assumption which might have been correct 7 years ago.
He seems to be saying it works and you’re dumb if you think it doesn’t. And at the same time saying he won’t support maybe the most common cards out there.
All that to say, nvidia doesn't really do the work to play ball in Linux with Wayland. There is no way to improve these drivers, you can only hope Nouveau can solve your woes.
Or, here is a wild idea, we stop looking for some "wisdom" in what people who often express themselves this poorly write. Most of what this "thought leader" writes that I happened to read have the same punchline, and it got old pretty fast.
Sometimes, stuff is just garbage. You don't have to look through 99% of the garbage to find some 1% that is supposedly not as garbage.
https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-G...
> This work will hopefully land in time for the start of standalone XWayland releases separate from the xorg-server. Those should begin this spring in time for the Fedora 34 release as likely the first distribution shipping standalone XWayland packages.
> With this and other NVIDIA proprietary driver work pending to improve the Wayland support, hopefully by Ubuntu 21.10 we see GNOME on Wayland by the default so that for Ubuntu 22.04 LTS is also that shift away from X.Org.
It boggles my mind how people can be complete assholes to people writing FOSS because the sense of entitlement that users have when it comes to FOSS is staggering, and the more technical someone believes themselves to be, oftentimes, the more caustic they tend to be in how they interact with FOSS developers. Obviously this isn't the case for everyone, but having been a silent observer on Github issues for many FOSS projects as well as reading the rants on reddit and HN against FOSS technology <X>, it really pisses me off even though I have no skin in the game.
These are real humans and people devoting their own free time to build something they are passionate about and believe in. It may not work for you, you may even think what they are doing is a terrible idea. Then provide constructive criticism if you wish and move along. That's all too rare though. In reality, what people really want is they want Wayland (or insert Technology <X> here), but they want it the way they would wish it to be, and so they will essentially engage in negging developers and their decisions trying to beat them into submission. It's despicable behavior and no one should be defending this.
Measured criticism is fine, but then move the fuck on. Let people passionate about FOSS they care about, continue working on it. But don't be an asshole and keep trying to tear them down just because you selfishly want what they are building, but you want them to really build it the way you want it and to meet your specific use cases.
> So my new approach is “fuck you”. None of the Wayland detractors have a clue.
Lumping everyone who may not have a rosy view of Wayland together.
There's a good comment by an (alleged) pentester mentioning how Wayland doesn't really buy you that much. He's right. The bigger issue is lack of isolation within a gid. I can still debug your terminal and try to get your root password.
I think it's a lot closer to the author's intent to read the post as "here's what I'm experiencing" rather than "here's a category view of the world that I want you to endorse". Obviously a statement like "no one in [group] understands [thing]" is never going to be 100% true. When people say things like that, they're venting.
Err, no, a bunch of people who bother talking about Wayland propose it as a solution to everything. Now that they are being called out on it they are walking back their positions.
See that "and"? Your comment here only addresses the second half of that sentence, which is probably true, and people shouldn't do that. Most of this thread is discussing the first half, which doesn't seem like it's actually correct. You can't say "people are missing the point" when he's making two points in the same rant.
There are pro-wayland people in this thread arguing the former point ("Wayland works for almost everyone"), and mostly they aren't putting up convincing arguments. So far I've seen: "it's really someone else's fault" (ok, in the meantime wayland doesn't work for me") -- "actually no operating system should support this" (ok, back to windows or apple or non-wayland linux it is).
> More likely, it does work, and you swallowed some propaganda based on an assumption which might have been correct 7 years ago.
> [Wayland] invented some new, fixable problems in the process — most of which have been fucking fixed already, and years ago!
> Most of the lies you’ve heard about ways that it’s broken are just that: lies.
The author didn't support these statements at all (which is the whole point of the rant, he's tired of doing that. that's fine). Someone else has to do that for this rant to make sense. So people are saying, "here is my common use case. how does it work on wayland now?" If they only thought it was broken due to lies and propaganda, it would be easy to explain how it's since been fixed. But people aren't.
If we were in a room of 100 people, and two folks got into a shouting match, everyone would start listening. And then a group decision would get implicitly made. Is it a personal argument, best to stay out of it? Or is someone getting attacked unfairly, and it makes sense to intervene? Everyone in the room starts watching, and everyone starts thinking about what the group is going to do.
Online is nothing like that. If someone behaves like a complete asshole on one thread, most people don't see it. Especially if the asshole is "some random guy" with no standing in the community. Since there's no real drama, the incident doesn't come to the community's attention. The person on the receiving end of the abuse never gets to have that moment that you'd have in a room of 100 people, where you know everyone sees you and supports you, and maybe you get some "points" for keeping your cool. There's no points for that online, just silence. I think it can feel very isolating and frustrating, and I'm not sure how to address it.
The Wayland world will continue improving and chances are your problems will be sorted out one way or another in the future. But attacking people working to improve the status quo without any obligations on your side is fucked up beyond reason.
Mmmmkay. That's a pretty broad statement, good luck with that attitude!
> I’ve tried appealing to reason and rationally debunking each lie that some Wayland detractor flavor-of-the-week is touting to tow the party line, but it didn’t work.
I guess he's referring to this post? https://drewdevault.com/2019/02/10/Wayland-misconceptions-de...
And to numerous comments on HN and elsewhere.
The 'wayland sucks' movement is sooo annoying, even to me and I'm just a happy wayland user and haven't spent any of my free time writing those thousands of lines of code.
Personally the community around wayland seems to have some toxicity in it. That is the only thing I really took from the original post.
Luckily, DeVault is an insanely prolific writer of actual code, so there's no need to evaluate his attitude. His code speaks for itself.
I for one greatly appreciate a lot of DeVault's work. Do I think he has the softest way of expressing his opinions? No. Do I need him to in order to appreciate the technical merits of his work? No. I'm not looking for a life partner – I'm looking for excellent software.
He has worked on projects other than wayland.
Sourcehut is a notable example: A free github alternative that has great e-mail integration. One of the amazing features is that the UI uses no javascript (pure server side python) and is super fast.
But you’re right, I’m the problem for responding to a fawning endorsement of the author with a very moderated opposing view. My bad. I’ll do better on the next account.
Commenters routinely underestimate the amount of flamebait in their posts by 10x or more—it always feels like the other people are doing worse. No one would objectively describe your posts in this thread as "very moderated".
"Wayland doesn't X!"
"Actually, it's on purpose or X that is not working on Wayland because [reason]."
Sure but that doesn't make it work.
Guess what, you're using linux, and these things take time to develop and be adopted. That's the way linux always has been, you trade off less than perfect software for the benefit of endless configuration.
Wayland will be widely adopted one day, but insulting anyone who has issues with it does not help your case.
What I mean is, back in the day with X11, all clients were equal and there were nice little tools that let you switch between virtual desktops graphically (desktop pagers). I myself wrote a little taskbar (with the kind of glow animation that moves with the cursor that Windows 7 made popular), but never published it unfortunately. A lot of people wrote or hacked on window managers. It was never really easy, but at least it was possible.
Now with wayland, you have to write not only the code that draws the titlebars, but the code that puts the pixels on the screen, input handling, clipboard handling and all kinds of stuff.
Of course you can fork an existing window manager, or use something like wlroots, but they are all opinionated. If you just want "GNOME with different titlebars" someone else wants "KDE with different titlebars" - you're out of luck. So this makes the barrier to entry really high.
On the other hand, if somebody would write a "window decorator" interface, you could write a small window decorator process (like we had with Compiz). I don't believe this will happen, because it would have to be adopted by multiple compositors to make sense. If it did, I would have a bunch of ideas I'd like to try out one day.
Wlroots isn’t opinionated at all. In theory, it’s perfectly possible to write a gnome shell alternative using wlroots. Writing a taskbar for nearly all wlroots based compositors is also possible.
You could even write a plugin for wayfire to implement the Kwin protocols, and write another plugin to implement a simple window manager.
As for changing the titlebars, as long as you enable CSD, you could just write a theme.
- decide it's time to make a New Thing which will supersede the Old Thing rather than living beside it
- decide that some features of Old Thing will not be directly supported by New Thing; instead New Thing will be flexible enough that people could implement those features on top of it
- declare that the work done to support those features will have to be done by the people who want to use them
- declare that the time has come for New Thing to supersede Old Thing, before said work has been done
[Edit: this wasn't intended to be a list of things that are individually bad ideas. It's only the last, in combination with the others, that I think is ill-advised.]
That doesn't really describe the situation very well, seeing as XWayland works seamlessly. Wayland compositors very much support living beside X programs.
"decide it's time to make a New Thing which will supersede the Old Thing rather than living beside it"
A non-substantial argument. Whats the difference between a wayland 'superceding' X and a wayland 'living besides' X? Does implementing Xwayland not constitute trying to 'live beside' it? your argument is vague and you can respond with more ambiguity. Install X and wayland. Nothing stops you.
"decide that some features of Old Thing will not be directly supported by New Thing; instead New Thing will be flexible enough that people could implement those features on top of it"
WHICH features? the 'old thing' can never equal the 'new thing' otherwise they would be the same. Wayland is purposefully LESS flexible (again, how is wayland more flexible? Or is that another vague statement?) in its input handling and screen handling which is why screen recorders needed to be reimplemented in the name of security.
"declare that the work done to support those features will have to be done by the people who want to use them" How is this controversial? You seem to ascribe some kind of motivated reasoning for the statement that certain features aren't being maintained/developed by wayland developers. Dev says 'no' to a feature request, why is this controversial? EGLstreams is the closest thing to a controversy but nothing prevents anyone from forking and implementing support. Open source, no excuses.
"declare that the time has come for New Thing to supersede Old Thing, before said work has been done"
no such declaration has been made.
This style of argumentation is as bad (if not worse) than baseless rejection of Wayland because of "vague" criticism.
If I try to read between the lines, the author is worried that if more people don't jump ship and switch to Wayland, suffering through whatever trouble they might face, Wayland won't get better faster. Which although true, is a very selfish argument that does not see beyond the author's own use case.
I'd like to try Wayland sometime, so far I haven't. I don't think there will be a lot of issues that I'll have to get around, but honestly I'm not looking to find out right now. I use Xorg and I'm happy. At some point, I'll try Wayland.
I have been attacked for using irssi, too, instead of weechat. They still hold the view that it is not maintained despite showing them the commit history. Crazy. Make no mistake, I am not complaining, it is the Internet after all.
I recently installed Fedora after my Windows install bombed out after an update. I went to play World of Warcraft with my buddies and found that the mouse handling in Wayland was pretty severely broken, at least for WoW. You move by clicking both of your mouse buttons, which starts moving you forward, and then you turn your mouse to steer. Under X11, your mouse is in the same place after you release your buttons (this is the intended behavior). Under Wayland, only god knows where it's going to pop up; it seems to be following your mouse movement while you turn, but not exactly. I said "whatever, it's a good thing I don't play too much WoW" and made peace with what it was.
Then I went to share my screen. I couldn't. Total showstopper -- I use this functionality every single day, and I can't part with it. Wayland is officially off the table.
I've been using X11 since. Everything has worked perfectly. I'm not going to suffer through some software that I actually need to use under WINE having fucked up mouse handling, or hold out for multiple years before I can share my screen again. I can't imagine even attempting taking Wayland seriously if I had Nvidia hardware. If somebody's take is that I should go fuck myself for expecting things to work while they tell me that my other options are wrong and bad because it works for "most people" (which is pretty stupid -- even Average Joe has a lot of showstoppers, it's why the Year of the Linux Desktop hasn't happened), they can have fun dumping time into software that's inferior in many regards.
EDIT: in response to Drew's flagged and dead comment (which I feel is quite unreasonable, he brings up a point about the compositor having some responsibility here too) -- I am not using Wayland under GNOME -- I switched to KDE and spent a fair amount of time digging through DE, WINE, and software settings trying to get these things working. I'm willing to slog through a lot of shit to get the technically correct solution, but some bridges are too far. I'm not changing my entire DE, GPU, software choices, etc. for the sake of using Wayland, even though it's superior to X11, and I think that's what a lot of proponents of it are missing.
When reading up on what desktop environment to use, it's hard to get a balanced view unless there are commenters like this, saying that running Wayland works.
Kind of like reverse survivorship bias. The only wayland sessions that get attention on the internet arw the ones that don't work.
Oh no, a single thing doesn't work yet, the entire system must be fundamentally broke for everyone. Definitely not just a bug or feature someone hasn't gotten to yet, no no.
If anyone wants to keep using X, they're free to step up and maintain it. So far no one has been willing.
I can also understand that these people have strong opinions on why W is so much better. The only trouble is that others, who are possibly not developers of window systems, may not care, or may find that it breaks their software, or may not want to write software that depends on W and doesn't work on X.
So what if Xorg is "barely maintained"? It works. Hell, as long as it works, it's likely better for it not to change. If there are issues, in the free software world we say "patches welcome". No developer should feel chained to a project.
The Wayland community contributes a fair share due to xwayland, and we get stuck on this quite often.
And yeah, it'll need fixes. over time. It's big, complex, and interacts with device drivers that are very much in flux.
Why would Xorg users care about XWayland, or new releases or contributor patches?
Those who contribute to Xorg and feel stuck could step up to maintain it, if they wish. (Don't they do it already?)
If they don't wish to maintain it, maybe their contributions are a waste of everyone's time? (Then again, maybe they get paid to do it, in which case it's their money-misery trade-off to make.)
Over time, Xorg users may indeed need fixes. Then, I'm sure someone will step up.
XWayland is Xorg. An Xwayland fix is an Xorg fix. An Xwayland bug is an Xorg bug.
> Those who contribute to Xorg and feel stuck could step up to maintain it, if they wish. (Don't they do it already?)
No one maintains Xorg anymore, so there is no one to review patches, merge and roll new releases with them.
There's a huge difference between wanting to fix a bit and becoming an upstream maintainer.
The maintainers left for good reason, and no one wants to be stuck with that turd.
> Then, I'm sure someone will step up.
It is not "over time", it is now or never.
You say "now or never" but I've no idea what you're talking about. Your reply makes zero sense. If there's any trouble in the future, I'm sure someone will step up, as I said.
Your attitude to the problem is a big contributor to Xorg upstreams demise.
The biggest is, of course, that none of the maintainers wanted to deal with that dumpster fire anymore and jumped ship, and no one in the know is dumb enough to pick up the torch. But, a delusioned userbase is very unhelpful in recruiting new blood.
I've gotten curious. I want to try Wayland in the near future. But it would be good to have an idea of what kind of issues I might encounter, so that I can change back to X11 in an emergency.
If you are seeing a bug I guess just try the other one out and see if it reproduces, but I can't think of the last time I did that.
The only thing that is a common issue is screen capturing not working. If you have PipeWire setup it will work for most applications but it is still quite new. So if something related to screen content grabbing is not working it could be a Wayland triggered bug.
I know that the process of moving to Wayland has been slow and hard. It is definitely not an easy task. I know it's frustrating when something that used to work does not any more. I know the process is not complete and there are still a few things that might not work well. But for god sake, these people are volunteers. Stop bullying them with angry posts complaining about their work. You likely don't pay a penny for all this great software that you are using. If you think that X is better, just use it, and live with its unfixable issues. If you don't like distros moving to Wayland, contribute the packages to keep using X, maintain X, these guys are offering you the keys! Please stop shitposting about the work of people trying to make things better.
Apple breaks things all the time and they don't get half of the heat. And they charge a lot of money.
Out of curiosity: What are those issues with X? On my day to day use of Xubuntu I don't encounter any problems. What would I gain from switching to Wayland?
There will always be people who'll criticize what you do, especially on the internet. You can't let it get to you.
And since no one company is behind the linux ecosystem, everyone works on what they want to work on, so every change is fundamentally starts with chaos in linux. But it will stabilize on a good enough solution (eg. I don’t see much ill with the current 3-4 implementation of the protocol with one of them being a minimal “lib”, that can be used for small niche window managers to build on)
Ubuntu 20.04 probably had good reasons not to ship Wayland as the default. I think this because I've had the experience of using OBS in Ubuntu 20.04-- which works-- vs OBS under Debian buster (using Wayland by default)-- which, as of two months ago, didn't. And I wasn't even looking for differences here-- just that my workflow got interrupted on Debian because of this problem. I'd wager there are surely other such outstanding issues with Wayland as the default.
The issue I ran into is being fixed-- or perhaps is already fixed-- which is great.
I'm not anti-Wayland. I'm also not a Wayland developer, or Wayland fan. All I know is it's supposed to replace another part of the stack that I don't develop or give a shit about. To the degree that things don't break when that happens, I'm happy. When they do break, I will be temporarily frustrated.
Functionally, though, Wayland is still not fully there yet. It's better now than it ever was, but the authors are still punting on major chunks of missing functionality.
> We’re out here trying to make things better. Wayland fixes unfixable problems with X11, and might have invented some new, fixable problems in the process — most of which have been fucking fixed already, and years ago!
Keyboard remapping has been punted on entirely and is still horrifically broken and undefined in the protocol definitions. Despite this, compositors still to this day, use XKB as the basis for keyboard input mapping because there is no standard way of doing this for a compositor. Even wlroots does this. This is a really bad workaround to the problem because XKB itself was an incomplete rewrite of the existing keyboard mapping code in the original X11 server, and even it doesn't work right, which is why Xorg desktops have awful things like ibus.
Full nvidia support is nonexistant except with nouveau, which often doesn't work correctly for basic 2D graphics. Obviously this is out of the hands of the wayland devs, but for a user it is still major functionality that is lost, and pretending that nouveau is an equivalent replacement is problematic -- I've had generic VGA drivers perform better. And "perform better" in this context means "managed to draw a coherent image to my monitor", not "maintain 60fps".
There are other features/problems that have also been punted on (remoting support, but that arguably doesnt belong in the compositor stack) that users actually need in some cases that wayland devs -- probably because of the rush to get rid of Xorg -- have avoided implementing. I get that it is hard, and major kudos for the progress that has been made, but Wayland is definitely not there yet without some coherent answer to these features. I say this as a user and a dev using wlroots.
It's one of the reasons I love stale closing bots. I don't have to pay attention to people who are dicks. I can just unsubscribe from their issues and let a bot handle it.
No solution is perfect, but this one keeps me sane.
PulseAudio did have some growing pains, though. I don't remember them exactly, but I remember having to tinker way too much to get apps to work together/correctly between ALSA and PulseAudio, etc. I still have a finicky laptop that REFUSES to do audio over HDMI unless I boot the machine with the HDMI cable plugged in already.
No real point, here. Just rambling.
I mostly agree, although I prefer OpenRC personally. I was bit by
[* ] Stopping service 1:30 remaining
too many times to really like SystemD, although I tolerate it on my daily driver these days. systemctl edit service-name
[Service]
TimeoutStopSec=XX
You can also override the global default DefaultTimeoutStopSec in /etc/systemd/system.conf.I mean Slackware used to send a SIGTERM to all processes, wait two seconds, and send a SIGKILL. Why would anyone need more? It's the Unix way (except it isn't).
If you disagree with the default wait time then you disagree with the default wait time. So what.
Summarily killing processes with a SIGKILL should really be a last resort because it can very easily corrupt data.
If you have processes which just hang for ages during shutdown, there is probably something wrong with your system (or the process's code) which might warrant further investigation.
I kinda wish "proper shutdown" was never invented at all. That would've motivated so many developers to care about reliability much more :P
I'm talking more along the lines of ZFS – I can always pull the plug without worrying about FS consistency, because the FS always goes between valid, consistent states atomically.
The problem is a thorough lack of semantics on file systems. It's the wild west.
ACID was a good start for databses, but even that is pretty vendor specific in the specifis... and nobody truly understands the basics of it anyway.
It's a difficult problem.
[0] Well, not exactly, but you get the idea.
It's just another init system to me. I don't really care enough about it to get upset and complain that I had to read some documentation and edit a text file to change its behavior.
The other comments already explained how to change the timeout per-unit, but I wonder how would you want a “perfect” init system to handle this?
Hang forever until the process dies without any message (as far as I know this is how legacy shell-script-based inits would handle it)?
Kill the process immediately and risk data loss?
Behave as-is but with a lower default delay?
The thing is, “with enough users someone will depend on both the public and private parts of your APIs” is true (and I am sure I butchered up this quote as well)
I regularly have to open pavucontrol to fix basic things like "where output audio streams are routed to", fight with audio frequency rates, etc. On new embedded designs, PA is often the bane of my existance because of the insane heuristics it runs to figure out audio policies and mixer/routing behaviors. Even the major desktop environments have trouble trying to integrate with the blasted thing.
PA is still hot garbage, straight from upstream source.
If you think that the window manager was modular component you can basically pretend that wlroots is X and the compositor is the window manager. It is just as modular with that logic except more efficient and capable.
Being able to dump screenshots or process them in any other way, also again with bash scripts, is very modular
Being able to debug parameters of X windows, etc...
In the wayland model, these previously modular components that communicated through process boundaries to cobble together those policies that make a desktop are typically subsumed into one process called the compositor. Look and feel is still the domain of the widget set, but window policy is not.
There are other processes involved though where the compositor and the client do talk the Wayland protocol via IPC, such that the compositor hands off various responsibilities to external processes.
As far as I understand, X11 ended up with the window manager architecture pretty much by accident; initially, window managers didn't even exist.
It doesn't do output configuration, input management, application window drawing, font rendering, or remoting, all of which X did itself (although modern application rarely made use of that part of X). Those things are delegated to the kernel or to application libraries.
This argument is plain and simple abuse behavior. The people criticising Wayland never asked you to make free shit. They have no obligation to like it or to not voice their concerns when they might be impacted by your free shit. If you don't want to hear criticism of your free shit, get off the internet.
> It has a real cost, you know, being a dick to maintainers.
Same goes for being a dick to your users (especially those who didn't choose to be your users) or random people on the internet.
> [...] Most of the lies you’ve heard about ways that it’s broken are just that: lies
Ah yes, shouting "fake news" works so well.
I'm not even anti-Wayland really - it simply does not provide any advantages for me at the moment while breaking some things - but this kind of attitude makes me not want to touch it.
Xorg is Overly Bloated/Done without giving much importance to security.
On the other hand, Wayland is technically superior , might be more secure than Xorg. But, it's feature parity doesn't match with that of Xorg.
Now,i don't think those features must be pushed into Wayland itself. i don't know but something desktop oriented Wayland implementation with those missing pieces filled would be good idea.
But, will security suffer? Maybe. For example, Wayland is said to be secure because window can't see other windows. But, necessity arose due to requirement of Screen Recording so some API was created to access The Screen. So, didn't it make that security claim irrelevant because each window can access the screen? i think it's still not thought out properly.
Mac OS X had a very secure graphics architecture where no program could emit pixels into the window content of another program. As a result? We could barely support OSX. We ended up having to do rendering to pixel buffers and then using mmap through an invisible file shared between the service and client, then dumping the contents of the pixel buffer straight to screen using some code every client ran. Rendering from graphics card to RAM back to video buffer cost us half our frame rate.
On Windows? Client program passed its HWND to the service. Service bound an OpenGL target as a child of the client program's window.
Security is important, but in a graphics service, it creates a solid trade-off between what is possible and what is safe. That HWND trick can definitely be used to fake a login window and steal user passwords. But it also allows some programs to run on Windows that were technically impossible on Mac OSX without a complete rearchitecting.
(Clarification: I've gotten out of the game of writing Mac OSX software, but if I understand correctly that trick is possible under the modern architecture. It turns out Apple needed the ability for one program to write into another program's windows directly because they architected QuickTime as a service and performant video display required a similar trick to the one we were doing. So they added a mechanism for two processes to describe a shared rendering target to Quartz).
No, because these APIs allow the user to audit the requests and allow or deny. You could have a default-allow policy and get back to the X security but most implementations ask you to confirm first.
Using KDE or Sway, if I set my desktop scaling to 2x, all programs that run through XWayland have extremely blurry display (they've been rendered at 1x and then crudely scaled up). This includes firefox, chrome, and emacs. The browsers have ongoing work to support wayland natively, but neither is stable for me.
If I set my desktop scaling to 1x, I can then scale up individual xwayland programs with flags like `--force-device-scale-factor` if they support them. This gets me close to the behavior on X but on X I can just set a global 2x scale.
I totally understand the frustration of OSS maintainers when people demand they fix things with no intention of getting into the code. On the other hand, the marketing behind wayland encourages some unrealistic expectations. I went out and bought a new graphics card and it turns out I can't even run firefox! That was not what I expected to happen.
Definitely a painful use case combination still but one that should solve itself once things actually start using Wayland rather than XWayland.
Anyway thanks for the tip!
https://github.com/masm11/emacs
Pretty sure there are builds for the browsers you mentioned that run natively on wayland
So, end users are not supposed to complain because they don't know the full stack by heart? What kind of crappy piece of opinion is that?
You have been trying to reinvent the wheel for a decade and splitting the whole community on petty shit like this, halving development effort on an already non-popular platform, and yet you wonder why people are angry. Instead of evolving X11 and deprecating old features to drop tech debt over time, you went and created your snowflake project and paraded over how much more secure your project is when it doesn't have features to this day, features which are working perfectly on X11. This blog post is the epitome of the whole wayland development group's selfishness. You did this thing for yourselves, for your own comfort and feel-good bullshit, not for the whole community. The Linux ecosystem has suffered too much for no good reason, to the detriment of user experience and market share.
I do wish tensions about it could be lower. I think there is real damage for all any time they rise.
Maybe something will drop off but you'll want to come in and support it while you find it worthwhile, that's all anyone else is doing too.
> Daniel Stone ~ The real story behind Wayland and X'
https://m.youtube.com/watch?v=RIctzAQOe44If you're going to complain, at least be constructive, research solutions yourself and provide feedback that has value.
I'm not sure if the Wayland contributors are overreacting, but I'm guessing people are not being nice when something doesn't work and write posts like "Wayland sucks so bad it doesn't work on XYZ" rather than posting "So I found out that Wayland doesn't work for XYZ, how can I help the project with this?"
And helping in the context might be as simple as writing up the use case and providing logs, or maybe raising the issue with the app developer.
For example - here's a bug report I wrote instead of just complaining that BT doesn't work well on Linux/Ubuntu: https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/18...
It's getting solved!
<3 to all the maintainers out there - thanks for your hard work.
The open source ecosystem is all of ours and we should nurture it rather than just wine about it's problems. At least they are our problems and we can have a meaningful impact on them :)
* small grammatical edit
Anyone that has a high DPI display and/or NVIDIA card and uses most of the popular Electron based apps or Chrome will have a bad experience.
Not saying Xorg is any good, or the scaling decisions in Wayland are bad. Just that its not objectively possible to switch away from it yet, for a large number of people
See e.g. https://www.reddit.com/r/swaywm/comments/d2qqtk/yet_another_...
Also it's (ironically) an X11 related issue which shows up do to XWayland backwards compatibility, not something new with Wayland.
Chrome also since supports Wayland natively so the workaround in that PR isn't even needed for it anymore. Electron is still a bit behind but it's looking like Electron 12 should have native Wayland support as well, until then the workaround for X11 app scaling is there.
There are still a few things I'd like to see land (which are closing in) before saying Wayland is a better fit for most users but better DPI scaling certainly isn't one, it was one of the first wins to land to be honest.
.
Regardless sway isn't for most users and will probably never be. I'd look more to issues in KDE or similar where it's more focused on the "normal" use case, supports Nvidia just fine, and is expected to work out of the box.
The aforementioned workaround would make some X11 use cases work but not all, because X11 has no way to do multi-monitor fractional DPI awareness without rescaling so there is only so much hack workaround you can do in the meantime.
But there's no need to rush users to it just because it can work. IMO let Electron and whatnot get updated in the meantime so it's a smoother transition.
But it doesn't work for me (aka. important features are buggy in the gnome/wayland/whatever stack I am using if I select wayland in gdm). Am I now a lier or an unimportant victim of the March of technology?
I am using wayland on my laptop anyway, as it comes with better scaling. I actually want to like it and I am very thankful for the developers putting so much work into it.
But the rollout, especially of gnome-wayland, was a disaster. It wasn't ready* when it came to fedora and it wasn't ready when it first came to Ubuntu and it is barely ready today. The developers (and some diehard fans) repeatly insisting it was robbed many of any faith in the project.
People are saying so much about it because they tried and something broke. And yes it may be QT's (still problems with clipboard) or Firefox's or Gnome's or Nvidia's (half of all linux desktops) fault, not the Wayland core teams or the Wayland protocol's. Doesn't matter in the end.
* With ready I mean feature parity with gnome-x11. Working for "almost everyone" (and with a very, very, significant almost at that nvidia) is just not good enough. Not if you want to replace one of the most important components of a user's desktops. At least for my day to day usage it is pros and cons, but all the pros are something we learned to live without, all the cons are fresh wounds.
GNOME doesn't work for you. GNOME uses Wayland, but the bugs you experienced are not the fault of Wayland. They're the fault of GNOME.
GNOME is a dumpster fire and its premature roll-out to Fedora, Ubuntu, etc was very badly done. None of that has any bearing on Wayland, except to fuel the flames for spiteful people who choose to use the botched GNOME roll-out to harass anyone who has anything to do with Wayland.
GNOME works for almost everyone. Most of the lies you’ve heard about ways that it’s broken are just that: lies. And if you insist on living in that fantasy, then keep it to yourself.
Fantasy: Wayland does not support screen capture.
This criticism is not legitimate. In actual truth, many Wayland compositors do support screen capture.
Not fantasy: GNOME on Wayland does not support server-side decorations.
This is a legitimate criticism of GNOME.
So GNOME doesn't support your precious use-case, but it works perfectly fine for most users without server-side decorations.
This doesn't make GNOME a "dumpster fire" to anyone except the "Wayland sucks!" crowd. Or more of a dumpster fire than, say, Sway: I'm positive one can find a feature that Sway doesn't support.
But yes, if GNOME or Sway is missing a feature then you want, then that's on them. It would speak ill of GNOME or Sway. But it usually does not speak ill of Wayland, which is the fallacy many, many, many people make, and then fill my inbox up with hateful shit over stuff that Sway actually supports!
Yes, but I, and I believe most people talking about Wayland mean "user experience on current Wayland implementations", of course.
> None of that has any bearing on Wayland
No, Wayland is not a project that can stand for itself. It drives, needs and causes further work and implementation in compositors, Window libraries, applications, distributions, etc.
Wayland on it's own is a academic coriosity. Wayland that "works" for anyone is a interplay between diverse forms of software implemting or relying on parts of it. Getting Wayland to work is were the problems are, not in the protocol (at least I assume so, I don't have any real insight into it).
And that "Wayland stack" is not (completely) working for me.
Then again I don't post on the Wayland bug tracker, but on the gnome one and I don't want to make excuses for
> spiteful people who choose to use the botched GNOME roll-out to harass anyone who has anything to do with Wayland
Harrasment has no place in in this discussion, no matter what one thinks of Wayland.
... But op was not really about that (at least I didn't understand it like that). It was about "wayland not working" being lies and people not getting it being either malicious or so fooled they are living in a fantasy.
- Multi-Monitor support (especially with multiple different resolutions)
- HiDPI support (even if some of your programs haven’t been updated for that yet)
Now why does wayland break xclip and vnc? Because "every program is a keylogger by default and can see any event, look at the contents of any window" is a major security issue, especially as it means the entire security model of screen lockers or containerized applications is useless.
Under X11, basically every application you run can trivially escalate itself to root. As even your Zoom client can just listen to your key events when you unlock your screen or use sudo in your terminal, save your password, and tada it can elevate itself. Under X11, there is no security whatsoever, and no separation of privileges.
edit: I completely agree about "electron applications". Those are not native applications on linux, those are badly made backdoors using browser runtimes. I do not run them and I strongly recommend to my family, friends, and peers not to run them.
Microsoft has VSCode, Skype and Teams on linux, Zoom has a native linux client.
With modern electron apps, often even being able to be updated remotely, you have to start treating more and more software as hostile as well.
That said, even if you’d only have trustful software, you should still sandbox it, as if there’d be an RCE in a chat client you wouldn’t want the attacker to be able to elevate itself to root.
[0] https://www.electronjs.org/blog/chromium-rce-vulnerability
This is not even remotely true. You are able to snoop on events that use the X server - typically programs run as your user or programs that you have chosen to forward to your X server.
You are correct that the X server gets all events from all clients and therefore can log keys.
Such as your screen locker, your terminal with a sudo prompt in it, or your graphical Apt client?
That being said, I've been using Wayland for 2 years, and it's mostly just worked, and worked better than Xorg for many things. Unfortunately I often have to switch back to X for specific applications, but luckily Ubuntu has made that fairly painless. There are pros and cons; the arguments for and against Wayland don't really add much to the conversation, which is sort of an odd state to be in.
No, not if input is grabbed, sorry.
> your terminal with a sudo prompt in it,
Pinentry&co are mainstream for a number of years.
Does it matter why? If I use VNC to do my work, it is absolutely impossible for me to switch to wayland, no matter how justified the reasons are.
If a new replacement would have the exact same set of supported use cases as the original, it wouldn’t be useful. The point of wayland is that it enables some new use cases, while restricting some older ones.
Wayland is still powerful enough to implement VNC (weston supports RDP in both directions) or xclip (KDE’s klipper works just fine under wayland). It just requires effort from third parties.
XTerm has a secure mode, which even locks the keyboard.
(Last time I tried Wayland, it was because an update changed the default to it, without me noticing. Something important to me was then broken, and I had to switch back to Xorg, manually. That left a bad taste in mouth.)
Wayland still have bugs, but as Drew DeVault writes: They are fixable and importantly there are people willing to work on Wayland.
One of the more pressing issue currently is the Nvidia drivers, but that's not the fault of the Wayland developers. Users need to complain to Nvidia about that.
That said, I feel that Wayland devs (and users) are just now (re)learning the ecosystem catch-22 problem. The ecosystem hasn't caught up with Wayland's new architecture because the layers don't line up the same way. This means entirely new layers (or adapters) need to be created all the way up the stack.
Also, this new design and these interfaces are almost completely undocumented, so it makes it very hard for a non-waylander to step in and contribute. I made a couple attempts to fix bugs, but after wading through Github issues for 4 hours, and getting no help on IRC, I gave up.
Unfortunately the ecosystem is responsible for building the rest of the stack, but it's hard, because there isn't much in the way of documentation or examples in the ecosystem. That's the catch. The ecosystem is expanding very slowly because there isn't much of an ecosystem.
Drew, all of the points that you have made here might have some backing in facts, and it is clear from the tone and overall message that you're frustrated, angry, at your wits' end....but such a rant will accomplish nothing but make you look like an asshole, which hurts everyone in the long run.
I would encourage you to delete this and start over. Even if you are a 100% right, this looks terrible, and nobody wants to see this.
As far as documentation I think this comment chain has the perfect set of links for that https://www.reddit.com/r/swaywm/comments/l54a1a/guidestutori... and the subreddit in general is a great source of information/tips on it. In general it's going to come down to 1) packages for sway, and wayland tools for things like clipboard/screenshot/xwayland/etc, and wayland compatibility on different toolkits/libraries 2) your sway config file which ties all of those packages together and personalizes the look, feel, and functionality of your workspace 3) envvars and other configurations to signal to GTK/Firefox/QT/etc you want to prefer wayland native (otherwise a lot of things still default to X11 which will run via xwayland).
Right now I'd classify it as "no harder than getting dwm/i3 working the way you want it for the first time but a lot of work". Also like I said it gives the apps the ability to understand per monitor DPI or fractional DPI and so on, not it makes every app work perfectly. E.g. FF has really solid and performant GPU accelerated rendering and video decoding you can enable on top of webrender in Wayland but it's a GTK app so if you have it run at 1.5x scale GTK is going to render it at 2x your screen resolution at 3x your configured DPI and downscale the output by 2x to end up at your resolution with 1.5x scale like you asked. Not much different than when it was on X11, except it's a bit more performant and they say it's easier to maintain/simpler than the X11 GPU acceleration code. On the flipside you have Chromium which now has the same GPU accelerated story in Wayland (with configuration) but understands how to do 1.5x without rescaling when running in Wayland and can move to another monitor that's 1x and scale appropriately.
tl;dr: it's a lot of work and a bit scary, don't jump unless you've really got some time and interest. If you do jump it does do what it says on the tin though and apps are only going to get more native Wayland support with time not less.
It’s an opinion, not a theory. People should be able to hold the opinion that “Wayland sucks” without being labeled conspiracy theorists.
If someone says that Wayland sucks, and tells why he thinks so, then this is a very legitimate opinion that has nothing to do with 9/11.
On that note, if the developers are so frustrated that all their work doesn't get the resonance they wished for, probably they are in the wrong business. I am very familiar with the fuck-you-all attitude. But if it comes to this on my part it is usually because I messed up really-really big somewhere and got lost, and needed self-reflection.
EDIT: Btw, I was considering to comment on his flaming, but then I read "mailing list etiquette" and figured that flaming like he does actually breaks etiquette, oh well... Let him flame, I don't care.
When exactly on Linux my NVidia 1660 GTX will do fractional scaling at 150% so a 27” 4K monitor is usable, doesn’t crap out every two minutes and actually ships with some distributions and importantly actually stays working every time I update it, I will stop berating it. This has been promised forever and it’s still a pile of random things I have to hack around and then I barely works.
Until then I’m a Mac and Windows desktop user.
This is a perfectly valid argument about why wayland doesn't work, from a user's perspective, not a developer's. This is precisely what users expect from the system, and frankly, Xorg made it work, despite the mess it was of a tech stack.
Wayland is a very beautiful ivory tech stack, but it was created for a much different use casw than what an average user is going to care about, and as such, it suffers greatly in the end-user's eyes vs. the old and busted Xorg.
I’m just fed up of being told constantly that something works really well when it doesn’t. I’m fed up of people telling me when it doesn’t that I’m not believing hard enough or have some obscure combination which doesn’t work on Tuesdays.
If I sit down and use something and it doesn’t work then it doesn’t work. It’s Boolean.
E.g. screencapture. Does Wayland support screencapture? Yes (kind of), but I can't write a Wayland screencapture app. I need to write a Gnome screencapture app or a wslroot screencapture app, or I can even write one that supports both.
But what if someone using the new Future Desktop Environment wants to use my app? It probably won't work because it probably will use a different extension for the same behaviour. So I need to add the extension for that too...
That tells me pretty much everything I need to know about wayland.
My other machines mostly use KDE or Sway on Wayland though.
Wayland and modern post-KMS Xorg do not control your hardware, and have no real ability to do anything with 3D acceleration outside of what Mesa/DRI/DRM/KMS grant them the permission to do. Wayland and Xorg both call the same APIs provided by them, and call them effectively the same way.
The side effect of this is fbcon can be ran on modern "all shader/no fixed function" hardware without special hacks and I can run a 3D accelerated program on the console with no X or Wayland running... which also, by extension, makes X and Wayland both just simple normal programs that don't particularly do anything special.
If you can't run Steam games, this either means Proton (or the native Linux binary of that game, for the few that have them) has a bug that has nothing to do with Wayland, or your system isn't setup correctly (this happens most often if you accidentally install an Nvidia GPU and use binary drivers).
Heh
So, the vast majority of people wanting to play games? Let’s be real, Nvidia is currently the king of gaming GPUs. You can’t just handwave it away when talking about gaming on Linux.
The only thing that I can imagine that you are talking about is lack of proprietary driver support but that doesn't really seem related to Steam.
Nouveau was pretty good but wouldn't properly handle 144 Hz.
If Ubuntu keeps using X, I think I'll be fine for a while.
I'm one who feels that ranting is a kind of art (or can be profitably interpreted that way), and well-formed rant counts as art.
This is a good rant, not great, but heartfelt and sincere with judicious use of curse words and rhetorical flourish.
(For greatness in ranting see the work of Mickens, perhaps our finest performing ranter of the day. https://mickens.seas.harvard.edu/wisdom-james-mickens )
- - - -
On a tangent, I've been keeping an eye on the Arcan project https://arcan-fe.com/
> Arcan is a powerful development framework for creating virtually anything between user interfaces for specialised embedded applications all the way to full-blown standalone desktop environments.
> At its heart lies a robust and portable multimedia engine, with a well-tested and well-documented interface, programmable using Lua.
(Nothing against Wayland, I'm just mentioning it to say something potentially useful to someone.)
> We’ve sacrificed our spare time to build this for you for free. [...]
> You’re gonna maintain Xorg yourself, because we’re not going to volunteer our time, sacrifice our weekends and evenings staying up late for your sake [...]
This surprises me - I thought Wayland was developed mostly by people who were being paid full-time to develop it, at the various commercial Linux vendors (Red Hat etc.) or companies like Collabora. (And I thought the same was true of Xorg, and has been true for many years.) Is it really true that Wayland is primarily volunteer-driven?
It's true that most people are nonetheless getting Wayland for free (and, to be absolutely clear, harassment is unacceptable even to people being paid to work on the project), but the dynamics of the situation change a lot based on whether the developers are volunteers or paid by some company.
Developing software is difficult and thankless, even if FOSS. I don't know what else to say other than this article feels like a waste of space.
the crazy conspiracy theory here actually is that we need to replace Xorg/X11 with something that just doesn't work, and nobody actually wants to use.
keep appealing to outrage, though. hypocrite.
With that in mind, can anybody recommend one or more good books / websites / whatever, that represent a moderately comprehensive introduction to all this "desktop stuff"? That is, graphics servers, window managers, compositors, yadda, yadda, yadda. I'd like to dig in and actually start to understand some of the underlying details of what's going on with all of this.
https://magcius.github.io/xplain/article/index.html
That covers the graphics part which is the same for the two windowing systems. See Wayland's FAQ[1] and architecture[2] page for why it was made and how they differ.
https://wayland.freedesktop.org/faq.html
https://wayland.freedesktop.org/architecture.html
Though not primary goal according to their FAQ, Wayland also improves security. For this see:
https://lwn.net/Articles/517375/
http://mupuf.org/blog/2014/02/19/wayland-compositors-why-and...
Wayland feels like some ivy tower academic's ideal of what a display system should be. Everything usable is an 'exercise left to the reader'.
Look, if you're a dev working on an open source project meant to replace a critical piece of infrastructure, don't be surprised when people don't like or adopt it when it breaks a lot of their uses cases.
I'm not sure what you mean. This is actually exactly what is being done in GNOME and KDE's wayland implementations.
I just disagree with the whole concept that a desktop environment, window manager, or whatever else has to change because the underlying display server changes. That should be fully transparent. It seems to me that these guys have handed way too much off to the desktop / window manager, washed their hands of it and said 'deal with it'.
The push behind wayland happened specifically because the desktop environments wanted to implement their own display server, and it was becoming problematic to try to make it happen transparently. It's actually somewhat of the reverse of what you're saying, desktop environments can only wash their hands of things and push them off to the X server for so long before it becomes untenable.
Honest question by someone who wants to try out wayland, do steam, gog games, and wine games work on wayland well? What about things like obs?
Caveat: this applies only to compositors based on wlroots, list of them here:
https://github.com/swaywm/wlroots/wiki/Projects-which-use-wl...
The most mature compositors from this list are sway, wayfire, hikari, and cage. YMMV with other Wayland compositors, and if you have issues with them, you should speak to them, but not blame Wayland in general. If you have Nvidia hardware, you will also have to use the nouveau driver, and YMMV with that, too. I recommend Intel or AMD GPUs, both companies are much more cooperative with the FOSS community.
Issue tracking: https://bugzilla.gnome.org/show_bug.cgi?id=745032
And other -ve comments on HN.
> […] just to maintain that broken pile of shit.
> […] If you do know what you’re doing, though, you’ll soon realize you want nothing to do with that shitty codebase.
If it is a "broken pile of shit," and a "shitty codebase," wouldn’t the anti-Wayland be right? I do not use Linux on the desktop.
However, proponents probably also shouldn't push 'no yes it does work for you' replies though, particularly on the Nvidia thing, since that statement has to be followed by 'if you make serious performance and capability tradeoffs that you may not want to make.'
This software disclaims support for this and that thing [1] - that's fine, just add those to your constraint set and see if you still want to use that software at the end of the day. If you don't, that's fine, either write some code to lift your constraints or move on, but don't be a dick about it.
[1]: maybe because the guys that build that thing are jerks, and aren't being good citizens. Which, sure, fine, but from a user perspective, this peg doesn't go in that hole.
actually I am victimized by the extra frame of latency. cool rant though
And before you waste time with "Instead of RDP you should..."
Save the effort, I have no interest. RDP works with XFCE exactly the way I want it to. But I understand there is a working GNOME RDP interface now, so maybe I'll give it a shot with Wayland when I bring up a new server.
Really? You are just doing it to provide free software with no returns for you? I find this hard to believe.
You aren’t doing it because you wanted to explore a particular technical area that you are unable to explore at a day job, pad one’s resume, impress your developer friends, or help maintain the software as part of your day job?
But yes, proprietary divers are still slow to update.
> Wayland works for almost everyone...
Oh good. Tell me how to get XFCE running with Wayland then?
I'm not a user of X11 or Wayland, not really. I just picked a DE that I liked. I guess my choice puts me firmly in the anti-Wayland camp though since I won't be running it anytime soon.
XFCE works fine under X11. Stay with X11 in that case, but it's incredibly arrogant and dismissive of the Wayland folks to say "your use case will work under Wayland, you have no excuses" and then also say "well, actually, it will work if you force your upstream to port your DE to it".
There are some ad-hoc implementations for doing what you want iirc, but it really is more "integrated" than what you are used for.
I have to test, have not done that in quite a while, but I think that you can just call let's say "sway" on the CLI and it will start wayland directly.
I don't use or follow XFCE myself, but a quick search suggests the developers are working on it, though they won't get there anytime soon. (most of what I can find seems to be from 4+ years ago, so not anytime soon could be yesterday for all I know)
I can excuse XFCE for being slow. However that is very different from the claim that because XFCE is a bit slow that Wayland is in general bad.
XFCE doesn't have such a big team, and they are careful to maintain stability, so they are going to work slower. I accept this.
The reasons I _personally_ am convinced Wayland is bad has nothing to do with XFCE support, really.
As they just released 4.16 last month, we should see an announcement regarding dependencies for 4.18 anytime now.
There were better solutions in the past. Still could be, and possibly better solutions for the future.
I use sway everyday and i freaking love it. Mixing monitors with different resolutions AND different refresh rates all running at their native speeds with no tearing, all while keeping my nice i3 Shortcuts? FREAKING AWESOME!
Does EVERYTHING work? Nope, somethings are broken, some require config changes or workarounds. I have an XFCE desktop installed as a backup for work when i know i need to do a lot of Zoom conferences but for my private stuff i can just avoid non-wayland software and for most things IT.JUST.WORKS. and it's superbly fast and comfy AF to use.
Complain away how wayland doesn't do everything xorg does. Stick to your abandonware for legacy reasons. That's fine. That's your freedom.
I just like the Window Manager :)
Only thing I'm missing is copy and paste isn't working with Chrome Remote Desktop.
Overall it's been great and smooth experience since I switched last year.
i3 is a X11 window manager and has no Wayland support at all.
Sway is a Wayland compositor that closely resembles i3.
The counterpoint is that a lot of great FOSS software that is 80-90% great but with a terrible UI, terrible documentation, or glaring incompatibility that makes the experience entirely unpalatable for a swath of users. And so a lot of people don't use it. Which is also fine.
In my case, ranting didn't help. In fact, it made things much worse.
Also, in my case, I was lucky enough to hand my project over to some really sharp, energetic and positive people that have taken my work to the next level.
Turns out, the absolute best thing that I could do for my project, was to step away from it completely (not even being a "benevolent dictator emeritus"), after ten years of dealing with some really annoying crap. My being associated with the project was actually a boat anchor. I hate to say it, but not everybody loves me, and I'm fairly good at giving as well as I get (see "didn't help," above).
I have no experience or knowledge regarding Wayland, infact this post was the first I have heard of it. That being said, if the author's rant truly reflects the attitude of the community, it's sounds pretty toxic.
I've seen that sometimes here, although it's more frequent on Reddit.
I try to not contribute, but even knowing about the problem I catch myself - it seems to be human nature.
The OP's feelings are probably justified and I can empathize with them but the rant was still jarring and probably won't have any impact on the haters but will affect others.
Just my thoughts, maybe I'm virtue signaling a bit too much.
https://gitlab.freedesktop.org/wayland/wayland/-/commits/mas...
There's been a lot of external hostility and conflict over the years. Which unsurprisingly affects community culture.
And the reverse too. I recall encountering surprising "yikes!" even early on, from excursions from professionalism, tone-deafness, and groupthink. Which didn't help with external harmony.
It might be interesting to explore sometime, what might have been done differently long-term, to perhaps have gotten different dynamics. For instance, if replacing X11 had been envisioned as first a broadening of alternatives, and only then a narrowing to a new standard. Open source often uses forking and competing projects to defuse hostility and keep people engaged and productive. Coping gracefully with "lots of diverse everyone trapped on the same boat" isn't its strength.
The strong reaction to Wayland is due to breaking even the few things that used to work.
He was talking about the bullying and abuse that many people think they are entitled to hand out, just because because.
I have no opinion on Wayland - I use what ever is in front of me, but I share the disgust at the bullying.
Times have changed. We are no longer a bunch of young men, tough and full of testosterone, able to give and take all teh shit - and loving it.
Times have changed, now the time is to be nice
I'm dismayed by how much people just categorize everything as 'anti-' or 'hit piece' (when it comes to news) or ... something that implies some sort of extreme bias or conspiracy when it comes to an opinion they don't like these days.
Nobody it seems has a valid point of view, it's so often just some sort of 'propaganda' or something...
and so thoroughly documented! /s
Why is this sarcasm? I've rarely seen a young free software project even come close to the level of documentation of Sway! Have you tried `man 5 sway` yet?
From your link.
Oh, hey. That was hard.
If you have nVidia, you're outta luck.
intentionally crippling a DE out of spite so it cannot run on the drivers i use every single day is also a crappy look. https://drewdevault.com/2017/10/26/Fuck-you-nvidia.html
> There are Linux kernel APIs that we (and other Wayland compositors) use to get the job done. Among these are KMS, DRM, and GBM - respectively Kernel Mode Setting, Direct Rendering Manager, and Generic Buffer Management. Every GPU vendor but Nvidia supports these APIs.
Edit: I should mention, if your hardware doesn't support given software, just don't use that software. There's just no need to go in shouting about how terrible said software is.
tell that to DDV :)
That being said, you can still get the same experience as you are used to by dropping in your i3 config file. I'm not saying that you "Need to move! Using X still is evil!", I'm just saying dismissing Sway out of hand because it's "Not i3" isn't fair either.
why did ubuntu use wayland and then switch back to X?
i think this is a great piece of evidence in the case for all these open source guys to stop wasting their effort on open source projects. the amount of utility that is got per unit time and effort is pathetic. its thankless, hard work that in this case will basically be rejected by the very people it was designed for.
i think a better model is something like system76 where the core developers are paid and people get really good, well integrated hardware as well.
They're switching again to Wayland: [1]
[1]: https://discourse.ubuntu.com/t/trying-wayland-by-default-aga...
Nowadays I think even Microsoft is more friendly with its users than Linux desktop developers.
Just because something is a 'niche' use case doesn't mean its not important. Yes the average programmer is just fine under Wayland. Every other niche case Linux has been working to accommodate all these years isn't because, even if slight, Wayland causes issues.
I am also even less inclined to use it again after these comments.
Don't compare your detractors to anti-vaxxers!
> It has a real cost, you know, being a dick to maintainers.
Which way is it, chief?
And then there's this, from you, today:
> GNOME is a dumpster fire [1]
Can you say the same about Gnome maintainers? Do you think they're not offended by you calling their project a dumpster fire? You're being hypocritical and going to great lengths to spin a narrative to justify your abusive language.
I feel you on entitled and abusive users, but stooping to their level reflects poorly on you and to a lesser extent on the projects associated with you, including Wayland. You can choose to be better than that.
Honestly, your attitude in TFA and here is doing more harm than good. Have you considered taking a hiatus for a while to re-center yourself? Maybe find another outlet for your frustrations? Or maybe consider @titzer's suggestion [2]: delete the post and start over.
Bro what, are you kidding me?
When systemd got jammed down our throats all I felt was "well, I'm against it by principle, but I guess strictly speaking nothing is getting worse"...
If this half baked Wayland nonsense gets shoved down our throat, I am toast. I need good functioning color management and Wayland seems to say "well, nobody buys displays more than 100 dollars, so sRGB it is"
You should also call them nazis, you know, just to strengthen your argument.
> It has a real cost, you know, being a dick to maintainers. [...] We’re out here trying to make things better [...] We’ve sacrificed our spare time to build this for you for free.
Yes, but who are you addressing? There's a subtext here that discouraging behavior can be such a burden that it takes away resources from the project. Perhaps it takes such a toll that a maintainer just calls it quits on the whole thing. That makes sense when addressing your fans who are consuming your work but nonetheless burdening you. To a detractor, who isn't using Wayland and doesn't want Wayland to succeed, discouragement leading to burnout is not failure condition. This logical slip is probably the result of leaning too heavily on the vaccine metaphor.
Now playing Devil's advocate (contra this piece):
In the real world, anti-vaxxers benefit no matter what they believe. But that's not so in Wayland v. X11 duel, which is not only a genuine a matter of preference, but there are actually shades of a zero-sum relationship here. The idea of Wayland, like a vaccine, being good for you whether you know it or not doesn't hold up. If you're in the X11 camp and oppose Wayland, improvement to the Wayland ecosystem isn't bringing nice things like herd immunity. It's actually a threat if your vision is one where X11 remains entrenched for the foreseeable future. It would also be really easy for a detractor of Wayland to use this post for ammunition, for example labelling this as self-aggrandizement and maybe claiming that there's an attitude where Waylanders see themselves as saviors, rescuing others from a plight they don't even agree exists, and that it's an attitude indicative of the project as a whole.
The author is seriously upset, insists that Wayland works for almost everyone, and if you don't like Wayland - you don't have a clue, and f... you, and you will maintain Xorg yourself, and f... you. And f... you. Did I mention f... you? That's it.