I personally think it is a very bad idea to “speed run development” of protocols. This will only lead to broken designs which will then cause each desktop top do things differently.
Wayland protocol development is slow and heavily debated in order to make sure everyone is happy implementing them. You want all desktop to use the same spec and this could lead to additional desktop specific protocols which would totally break compatibility.
In short, this is a really bad idea and should be rejected by everyone
That depends on how you speed it up. For example, the Covid vaccines were “accelerated” compared to normal vaccines but they did that by spending additional money to run the steps of the process in parallel. Normally they don’t do that because if one of the steps fail they have to go back and those parallel processes are wasted. For the Covid vaccines, the financial waste was deemed worth it to get the speed up of parallelization.
The thing is Wayland needs consensus. You need the desktop developers to all agree to implement it. Asking KDE and Gnome developers to work together is like asking my cousin to agree with his ex wife. It takes the stars aligning and blessing to make it happen.
I personally think it is a very bad idea to “speed run development” of protocols.
Stalling the development of protocols for nearly a decade is bad, too.
They should talk and meet somewhere between “Just develop in production!” and “I personally dislike it for non-technical reasons, so I will block it for everyone!”
The problem is that you could end up with protocols that certain desktops don’t want to implement.
That already happens constantly and I’d consider this the consequence of it, rather than the cause. You can only issue so many vetoes before people no longer want to deal with you and would rather move on.
The recent week of Wayland news (including the proposal from a few hours ago to restate NACK policies) is starting to feel like the final attempt to right things before a hard fork of Wayland. I’ve been following wayland-protocols/devel/etc from the outside for a year or two and the vibes have been trending that way for a while.
Wayland development is crazy. The features it needs to include are those that Mac OS and Windows support. The debate should be around implementation, not the necessity. I’m still on Xorg in 2024 because of idiosyncrasies in Wayland that I don’t want to deal with, particularly regarding HiDPI and screen sharing. I personally wish Wayland were developed by the Pipewire team. Maybe something would get done.
I personally think it is a very bad idea to “speed run development” of protocols. This will only lead to broken designs which will then cause each desktop top do things differently.
and thus we have slow development which has resulted in absent designs, which has caused each desktop to do things differently to fill the gaps
I’ve been waiting for HDR and color management for like 5 years now and it feels like progress is dead in the water and now we’ve ended up with two custom implementations between KDE and gamescope. Heck, Kodi has supported HDR for ages when running direct to FB.
I know it’s tricky but geez, by the time they release an actual protocol extension we’ll already have half a dozen implementations that will have to be retooled to the standard, or worse yet we’ll have a standard plus a bunch of fiddly incompatible implementations.
HDR is a little more standardized as there was a meeting sponsored by Red hat to work it out
Eventually gnome will get support and maybe some others after that
Accelerating wayland développement would mean forking it. As it is right now there’s a lot of yapping in their git for every decision, small or big.
I’d be fine with switching over to Valve’s crazy high-speed frog version of Wayland if it came down to it lol
Wayland is a protocol used by each desktop that supports it. It often moves slowly because each desktop works together and discusses each change. If valve forked it, they would just have a protocol nobody is using. If people started using it, it would just slow down again for the same reason.
If noone used it that wouldn’t matter. Experimentally implemented features on a separate branch can still be useful as proof of concept to whoever is taking their time to discuss where Wayland has to go. Of course the usefulness depends on how well the Valve devs understand the needs of the desktops.
Accelerating wayland développement would mean forking it.
You mean feurking
Can anyone explain why Wayland exists or who cares about it? X has been around forever, it sucks but it works and everything supports it. Alternatives like NeWS came around that were radically better, but were too soon or relied too much on corporate support, so they faded. The GNU project originally intended to write its own thing, but settled for using X. Now there’s Wayland though, which seems like a slight improvement over X, but mostly kind of a lateral move.
If you’re going to replace X, why not do something a lot better? If not actual NeWS, then something that incorporates some of its ideas. I think Squeak was like that but I don’t know much about it.
Likewise, there are plenty of definitions of “better” that make Wayland a lot better. It’s just that it’s a lot of work to make something better, especially for some interpretations of “better”.
I was responding to someone who saw no need for Wayland to exist, not advocating for everyone to use it
X has been around forever, it sucks
That right there. X11 was released in the mid-80s and has become an unmaintainable patchwork of additions. Nobody wants to develop or maintain the code because changing one thing breaks five others.
Wayland also takes advantage of 3D acceleration, since each window is a plane rendered in 3D space. There’s no longer a choice between massive input lag with a compositor and massive screen tearing without.
I mean, the extension system means we could easily fix it, just deprecate the old paths, use the legacy xlib to set up extensions and write a lighter stack from there. A new input path too and you’re on your way.
It makes things a bit more complicated, but it’s also exactly how x86 managed to stay relevant all these decades, the old macro instructions are all slow microcode and you only use the safe stuff that’s hyper-optimized.
Meanwhile you get the one thing X has: It works.
I mean, the extension system means we could easily fix it
If that’s the case, then why not do it? Apparently the people who actually worked on X11 had a different idea, and so they decide not to do it themselves - but the code is right there for those who do think that that’s a good approach.
Meanwhile you get the one thing X has: It works.
You mean I’ve been doing everything, from work through CGI to gaming (with 120 FPS mind you) on a display that doesn’t work?
Wayland has many issues, sure, but it’s not even close to the point where “it works” can be used to distinguish it from other display protocols. We (and by we I mean anyone willing to dedicate their life to it) could do a lot to bring X11 up to modern expectations, but it’s just not worth the effort. X11 will outlive the cockroaches, but claiming that Wayland is not a functional display protocol is incorrect and uninformed.
X11 […] has become an unmaintainable patchwork of additions.
Wayland will be an unmaintainable patchwork of protocols, once it will have the same functionality as X11 has.
From what I can see it mostly does ease of development better; it’s a completely new and rather lean codebase, and it’s seen as an investment in compatibility with graphical applications.
Also, it has lock screens.
X cannot do lock screens; it can have an app being full screen and pray to some collection of deities that nothing will come in front of it or that the fake lock screen won’t draw far too small, but it cannot natively do secure lockscreens that are guaranteed to work.
So there, it does something much better: security.
I have been using X11 since 1996, and I never felt that it was very good. Sure, at the start it was better the then state-of-the-art desktop (Windows 95), mostly thanks to Linux, but that advantage went away in 2001 when OS/X was released. And even Windows went past it at some point, perhaps around Windows 7 or 8.
Wayland took a long time to get there, but it definitely is there today.
You answered your question of why Wayland exists right after asking it. X sucks. Wayland is a very significant improvement, I’m not sure why you think it’s a lateral move.
Also, X works for some cases, but not all, just lime Wayland. Using multiple refresh rates doesnt work well, HDR has no hope of ever working, and fractional scaling is horrible. Wayland has initial support for HDR and great support for the other two.
But Wayland is waaay better than X in basically everything? Performance and security are simply in another league entirely. And these 2 are the most important factors.
The rest of the “features” will be eventually there. In fact, mostly are there already. I’ve been using Wayland 2 years without issues. The important thing is that now the sofware is solid, the code is clean and the performance is amazing. Growing from there will be so much better than from X11.
You cannot even record single windows without having your DE patching that in for you.
The screen capture protocol was merged a month ago. Support will come soon. wayvnc, grim (and by extension grimshot) already have support for it. No compositors have implemented it afaik, but wlroots is very close to it.
Wayland 1.0 was released in 2012.
Now, 12 years later, it still is not production ready. I lost hopes long ago and rather stick to a security flawed but stable X11.
I am very glad with the proposal of the Frog protocol, as Wayland was dead before it could even walk.
I’ll just link another user’s response to a similar question, as I don’t think I could ever say it better myself: https://corndog.social/comment/3216441
Now, 12 years later, it still is not production ready.
I use it on both my laptop and my desktop computer. It got better during the last 1-2 years.
While my laptop (13" 1080p screen) is pretty much fine running with Hyprland on an integrated Intel GPU, my desktop computer with a 28" 4K screen scaling is messed up completely and needs tweaking, sometimes down to a per-program base. Sometimes the font is gigantic sometimes I need a microscope to see anything. That was definitely better on X11.
On my desktop I run labwc, that does not come with own functionality regarding this: I just recently got whole-screen video recording and now have to wait likely another year or two for single-window recording. (There is a protocol for this, that took two years to be merged, which is just ridiculous for such a low-level base functionality that should be implemented from the beginning on.)
Other than that, all my common programs are running okay with Wayland.
I love how people are complaining about Wayland not being ready or being unstable (whatever that even means, because it’s a protocol), while it’s the default on both GNOME and Plasma now, which combined probably run on more than 50% of Linux desktops these days.
And not only that, but Cinnamon, Xfce and others want to follow, so very clearly people who know a fair bit about desktops seem to disagree with Wayland being “not ready”.
I think it kills the community. Making a Wayland window manager is so much harder to do than an X one. This monolithic solution solves the problems of Gnome, and KDE developers but less people want to be involved in windowing systems. I’m just being sad for X11, because, although it had nonsense features, it made linux desktop applications compatible with every desktop and we had huge variety of wms, compositors, desktop environments. Personally I’m still on X because of bspwm, but eventually there will be wayland-only features which will slowly kill X.
I think this is intentional. Call me paranoid.
Elaboration: we have seen in the past how RedHat’s and others’ policies would always not reach some part of Linux users, and those users still wouldn’t feel as second class citizens - it was just a matter of choice and configuration to avoid PulseAudio, systemd, Gnome 3, one can go on. That was mostly connected to escaping major environments and same applications working the same with all of them. Wayland, while not outright making Gnome the only thing to work, creates a barrier and doesn’t make that a firm given anymore.
It won’t be too long until using Linux without Wayland will cut you off from many things developed with corporate input - and that’s developers’ time paid as opposed to donated for or volunteered, so much more effort.
Now, there was a time when there weren’t that much corporate input and still things would get done. But it will be hard to fall back to it, when the whole environment, one can say, ecosystem, is so complex and corporate-dependent.
I would say this is the time of all those corps whose investment into Linux was so nice in 00s and 10s reaping what they sowed. This wasn’t all for free or to profit on paid support. And people who thought that it’s GPL that was such a nice license that “forced” corps to participate in FOSS projects they benefit from, with those projects remaining FOSS, are going to have to face reality.
Fat years are ending, so they are going to capitalize on their investments.
This has already happened with the Web 10 or more years ago, when Facebook, Google and others have suddenly gone Hitler, while now they are in terminal stages of enshittification.
Same process.
You can disagree, no need to insult me.
Now instead of having Wayland covering everything, applications try to cover every desktops. In the good old times, it worked everywhere.
Why does flameshot need to handle different wayland desktops separately? Because simply the protocol doesn’t do it’s job. It doesn’t cover everything. It’s indeed not ready.
It won’t need to for much longer. The protocol for screen capture was merged weeks ago.
well, yes, but for e.g. I wrote a software piece that happened to be only a hotkey daemon. And I could write it with X. Now, hotkey daemons are no longer a separate thing unless the compositor exposes a grab API. Which never going to be in Wayland protocol, because they consider this client server architecture a problem.
Ironically enough just 2 days ago I posted this https://lemmy.ml/post/20691536/13906950 namely how the 1st thing I do after installing NVIDIA drivers on Debian is disabling Wayland to rely on X11 simply because it doesn’t work.
Sadly that’s relevant here precisely because if we are talking about Valve it’s about gaming, if it’s about gaming one simply can’t ignore the state of NVIDIA drivers.
So… it might run on 50% on Linux desktops but on mine, which I also game on, it never worked once I had drivers for gaming installed. Consequently I understand “how people are complaining” because that’s exactly my experience.
That’s NVIDIA’s fault for refusing to adopt the agreed upon methods for rendering graphics on Linux. They tried to force EGLStreams on everybody for almost a decade while knowing GBM was better.
Absolutely, I’m not blaming any Wayland implementation about this, just giving my current situation as an example.
I do so because I imagine it’s a popular setup (according to https://www.tomshardware.com/news/amd-vs-nvidia-which-more-popular-linux based on ProtonDB data, more than 60% Linux gamers had an NVIDIA GPU) and thus might prevent adoption.
I hope NVIDIA will fix that. Maybe a push from Valve would help.
I just yesterday tried Wayland under Arch with a 1070 after a long time. Single WQHD monitor though. Although X11 is really performant, Wayland was more smooth regarding KDE desktop effects. Witcher 3 (via Heroic) showed fewer microstutters and I will try some more proton games and other applications over the weekend.
I recently had to downgrade nvidia drivers from 560 to 550 because wakeup from sleep and hibernate would coredump. I read that this is fixed with 560 but only under Wayland. The developers definitely progressed on the nvidia front.
That I can understand, however I want to piont out that this is an Nvidia problem entirely. Wayland works perfectly fine under 2/3 hardware vendors.
Luckily, they finally open-sourced their shit so going forward, this will probably change. But chances are only from the 2000 series on, so it might take an upgrade for many folks…
Agreed, cf https://www.tomshardware.com/news/amd-vs-nvidia-which-more-popular-linux and I do hope to have the choice soon.
Great, can you clarify your setup then? I might be able to learn from it.
Wayland was subject to “first mover disadvantage” for a long time. Why be the first to switch and have to solve all the problems? Instead be last and everyone else will do the hard work for you.
But without big players moving to it those issues never get fixed. And users rightly should not be forced to migrate to a broken system that isn’t ready. People just want a system that works right?
Eventually someone had to decide it was ‘good enough’ and try an industry wide push to move away from a hybrid approach that wastes developer time and confuses users.
When people say its not ready, it’s normally some specific use case that worked in X11. So, they’re not wrong, but not right either.
The change was 95% unnoticed for me. I looked at the session one day and thought “oh yeah, I have been using Wayland”. I don’t mess with many games or AI GPU stuff though, so it may be that more complex use cases result in a worse experience.
Okay, is there a vnc server for wayland which can be autostarted and runs as a service? I havent found one and been looking for one for ages.
I daily drive Wayland and I just have to ask, why is the clipboard and associated tooling so much worse‽ I just want input leap and neovim to both be able to properly read from and write to my clipboard. Input leap never can, and neovim has like a 50% shot at doing what I expect. Also I understand we’re moving away from x11 in general but why is there no replacement for x11 forwarding over ssh?? I know I’m a niche user, but it drives me crazy.
why is there no replacement for x11 forwarding over ssh??
There kind of is. The project you’re looking for is waypipe.
Knowing how these things tend to go, I predict you’ll try to use it for your use case and it just won’t work for whatever stupid reason. But I successfully used it to tunnel an app from my Debian machine at home to a Windows machine under WSL.
Wayland is ready, ‘nobody’ else is ready to use Wayland. And by nobody, I mean any software packages that are doing anything at all out of the ordinary. Text expanders are a hot mess, remote control apps or dodgy, OBS screen capture is dodgy. We’re still playing catch up, support for Wayland in applications is honestly quite lacking.