Valve Engineer Mike Blumenkrantz Hoping To Accelerate Wayland Protocol Development
Valve Engineer Mike Blumenkrantz Hoping To Accelerate Wayland Protocol Development


Valve Engineer Mike Blumenkrantz Hoping To Accelerate Wayland Protocol Development
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".
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 devs have been working hard to hammer out those troublesome edge cases. There's a lot less of them than there was a year or two ago.
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.
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.
Really? It was very noticable to me when I didn't have screen tairing anymore
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.
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 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...
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.
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.
It's just that there are lots of stuff that don't really work (out of the box) with Wayland systems, an example being getting an IME with ibus/fcitx5 to work in browsers.
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.
All I know is that there are VNC and RDP solutions for Plasma and VNC solutions for Wayland in general.
You can autostart anything on any distro by putting the command in a startup script.
What does Xfce call itself if it starts supporting Wayland? Wfce?
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.
Just please get us proper color management. Creators need accuracy & HDR is still a mess.
They could start by making the Steam client be able to run in native Wayland
Or be 64 bit now that it’s 2024.
Wait does that mean I can only have up to 4 billion games on my client before the game list overflows and I start losing games at the end of the list?
SteamLink not allowing me to stream just my desktop (rather than a specific game) on Wayland is really the only thing keeping me on X11 at the moment. I use that feature almost nightly to keep watching something from my PC while I cook dinner
I love wayland. I'm 100% on it since the KDE 6.0 Beta end of 2023. Back then i wanted to try the HDR of my new monitor. I can't remember the last time I had a problem of any kind or thought “That worked under X”.
Multi-Monitor setup with different resolutions and refresh-rates. wayland does not care. it just works. And this is to a big part a gaming machine btw.
I made a gradual switch from windows to Arch starting in may. At first I had some issues but since nvidia 555.x drivers launched everything just works. Gsync/VRR? No issues. HDR? No issues. Three monitors, some rotated, with different refresh rates one of them ultra wide? No issues at all. It's amazing.
Made the full switch about 1,5 months back and deleted all windows partitions two weeks ago. Works for gaming, work and casual browsing without flaw and I'm glad I made the switch.
My very first experience with Linux last year was switching from X to Wayland to get my touchpad to work properly. The only thing I've noticed that doesn't work on Wayland is that mouse following cat.
I haven't switched to Wayland yet cuz I'm stuck with a GT 710, which only supports the 470 series driver, which... Doesn't really run Wayland. Hopefully some day, I'll get my hands on a Radeon GPU and then fully migrate to Wayland, cuz my laptop already rocks it with Sway and, no complains at all
(I know about it having EGLStreams support which only GNOME uses, but it has no GBM support, which... well, all other compositors uses)
I see everyone say this about scaling but I still have tons of issues with it in Wayland. If I scale my 4K 150% to be the same as my 1440p ultra wide monitor in screen height so I can drag across without any borders. It for some reason sets my in game resolution to 5k x 2k instead of 1440p like it should be. Also if the screens go to sleep the windows sizing are all worst of wrong and fucked when awoken. In general just strange and not there yet imo
Edit. Steam doesn’t get scaled either.
Steam is not Wayland compatible. The games you are playing are most likely not Wayland compatible. This is not a Wayland issue.
This was my exact issue. I had a 5k2k screen and a 1440p and it choked. Electron apps (eg VS Code) were blurry.
mtp as in media transfer protocol? i fail to see what this has to do with the display server. and what do you mean with web transparency? never heard that term and google does not give any infos. If you mean something like network transparency, wayland can do that with e.g. waypipe (https://gitlab.freedesktop.org/mstoeckl/waypipe). but not tested myself tbh.
Yo, try it on nvidia...or try some older programs, try playing games. Wayland is already good, but if it keeps being developed at this speed, then its 10 or more years left for this things to work yet.
I play games all the time. Actually that is what i do the most lately. Either via Lutris or Steam. Sometime with Gamescope (for HDR) or just normal. I had not even one single problem. Including older programs, emulators, etc.
And yeah, this is a full AMD system, so quite possible that this makes the difference. But as far i read, nVidia gets better constantly too.
I want to work at Valve
I do love how they just kind of like picked up Linux and dragged it into mainstream gaming lol. Hopefully they're doing the same thing to Wayland now.
Yeah. They've done a good job. Strategically its so that Steam can't easily be crushed under Microsoft's enormous boot. So it's a good forward-thinking commitment that everyone can benefit from. (Everyone except Microsoft, I suppose.)
How would y'all feel if Valve started selling PCs with their flavor of Linux on it?
Steam Deck?
No "if", no "would", we are millions of gamers using our (portable) PC with SteamOS running on it for few years now already.
As others have pointed out already, the SteamDeck is exactly that. I even travel with it, use desktop mode with my BT mouse&keyboard with a USB-to-HDMI adapter and work on large screen and do my presentations with video projectors.
If they were to sell a desktop too... well I have a Corsair ONE already, naming a gaming desktop (2080Ti) with a very small footprint and relatively silent. It is not easily upgradable due to how compact it is (but can be done) so if I were to have an equivalent of it from Steam and they were to keep on contributing to FLOSS it would probably be an even easier buy because I trust their RMA and I imagine I wouldn't pay a "Windows tax" with it as it would "only" come with SteamOS.
TL;DR: I'd prepare my credit card.
Didn't work out that well last time. But Valve got a lot better with Hardware since then.
I had an alienware Steam Machine and it was perfectly fine.
I think the criticisms of the Steam Machine suffered from what I would call the Verge Syndrome, which is only being able to comprehend things in a binary of instant success or failure, with no in between and no comprehension of other definitions of success.
Steam Machines were a low risk initiative that were fine for what the were. They did not have a ring of death, they didn't have a blue screen, the OS itself was not glitchy, they didn't lose money, and they didn't fail any stated goals. They got the Proton ecosystem up and running, and got the ball rolling on hardware partnerships, which led to the smash success of the Steam Deck which would not have been otherwise possible.
After the deck, I'd trust it to be quality
Cheap ARM Linux laptops with all the gamez, GPIO, RJ-45, interfaces and space for 2-3 SSDs plz. And battery that holds 4 days (without gamez). And a choice between amoled and e-ink display options.
Having typed that, I suppose I won't live to see that. Still, something like RPi or OPi, but with 2 M.2 interfaces, would be sufficient to assemble a convenient enough laptop. EDIT: and upgradeable memory
I love to check on crowdsupply what people can make, take a peek at this pc and laptop section:
I can't remember the last time I bought a PC. I just incrementally upgrade over the years. I would be disappointed if they came out with a PC that only ran with their flavor though.
Even the Steam Deck isn't locked to their flavor, so I highly doubt a full pc would be.
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.
French 🫵
I'd be fine with switching over to Valve's crazy high-speed frog version of Wayland if it came down to it lol
That's how you get fragmentation and instability. Then something is changed it needs to be implemented and then tested by all the desktops. If you move to fast you get ahead of development and testing which is very bad
The thing to keep in mind is that it is a protocol. When something is merged all downstream projects must implement it.
Ok but now I want a life size sentry
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
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!”
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'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.
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.
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
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.
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.
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.
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.
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.
I don't know how or why, but I get absolutely atrocious stuttering while playing games on X11 that simply doesn't occur with Wayland, so X is just not an option for me.
Wayland cuts out the need for a display server. It also has the benefit of being designed for hardware made in this century