Three signs that Wayland is becoming the favored way to get a GUI on Linux
theregister.com
theregister.com
[1] https://gist.github.com/probonopd/9feb7c20257af5dd915e3a9f2d...
Unlike Windows and macOS, where you link agaisnt the system toolkits, so when Microsoft/Apple want to change their protocol, they update these toolkits.
Any protocol that wasn't X on Linux is always going to be a pain to replace, the biggest issue with Wayland adoption is that it isn't X, yet X is not appropriate for how modern graphics works (why Android does not use it, and uses a system similar to Wayland).
Edit: To add on, regarding things like emulated input etc, on other operating systems there are usually standardised protocols for doing this, where on X it just allowed anything (you don't want windows reading the input sent to other windows, think banking). So new protocols have to be invented here, and then support added for them, in many cases the protocol also works on X with an updated window manager/compositor.
The experience is very straightforward, you run the application and it show up as a regular window. There's no tinkering or setup required.
I run Steam and many games. Only ONE game natively runs on Wayland (factorio), the others all use XWayland and work fine.
It's not just a matter of "getting the wrinkles ironed out".
Wayland is more about just getting surfaces from A => B and management of those surfaces, it doesn't really do anything shockingly different from how something like macOS does it.
The tiling WM ecosystem in particular is thriving on Wayland with sway and hyprland, and I personally haven't had any issues with screen recording with OBS (I use hyprland).
Most of the stuff said in the list you linked is "said-X11-only software is not compatible with Wayland" but nothing is said about alternatives : for example instead of redshift I use gammastep.
For example, I wanted to create a tool to use my old smartphone as a trackpad. After a short time I realized my approach won't work on wayland. I started delving in the available options, /dev/uinput, libevdev etc., and realized it will be to much pain. No (generic) accessibility¹ support means no generic way to do that, and just for my setup it is too much work.
So I dropped that. Then I have a set of tools I use for quite some time, amongst which are AnyDesk, TeamViewer, Blue Recorder, Steam. These either don't work, work only with wlroots, or work via the X11 shim.
¹ for me just a nuisance, for all the people who really need accessibility support, well ...
Depends.
Screen tearing gets worse at higher refresh rates and resolutions under Xorg.
Additionally fractional scaling and mixed DPI's are something Xorg was having great difficulty supporting.
It also gets quite slow (high CPU and especially memory transfers) at high refresh rates and resolutions; I mean, you benefit from this without noticing.
You'll notice a loss in functionality (like screen recording) much more than you'll see a benefit like "this will actually work at 8k 120Hz"; but it's not true that there's no gains.
Wayland is fine, it fixes a lot of legacy that holds the ecosystem back, people don't like it overwhelmingly because changing esoteric and hacky software that is core to basically everything will be difficult and take time.
It might shock you to know though that GNOME and Fedora users are already using Wayland on the popular distros, the transition was completely seamless for those users.
On the other hand, my points still stand I think. And regarding esoteric and hacky software: I don't think accessibility as a base functionality should require hacky and esoteric stuff, it should be a first class citizen in a 2023 window manager (?).
And I also want to remind how Linux (and, ironically, Microsoft) grew so strong: they are really, really careful with deprecating old stuff. As hacky that stuff may be. Up for debate if this is net good, sure.
It should be, but linux is built by hobbyists in their free time — it is hard enough to get to a working state, let alone adding accessibility, even if it is the first on the list.
No, it gets better, the same as aliasing does with higher resolution. That, and VRR hardware in the monitor, are the correct way to fix tearing in this day and age. V-sync is kludgey false dharma.
> It might shock you to know though that GNOME and Fedora users are already using Wayland on the popular distros, the transition was completely seamless for those users.
Sure, but it might shock you how much smoother your desktop can be if you disable compositing (on X, anyway). Many never have, and you can't in GNOME (of course). ;D I'm not sure if Wayland supports that in itself, however.
It's only a wlroots protocol for now, and I won't deny that this is definitely one of the fields that still need some more refinement/stabilisation.
Inertia to change, marketing, and making good business deals and have almost always been the more important factors for adoption of any technology in the past decades.
There's plenty of formats that are more than 3x8 bit.
There's also been a lot of work recently in getting HDR through (also this requires work in other parts of the Linux graphics stack too).
I don't understand the criticism Wayland gets. If you don't like it just don't use it. X.org is fine. Wait for it to get the features/quality you expect.
Wayland people _are_ the X.org people. You can't force them to continue developing a technology they don't believe it and not moving forward.
Wayland has caused me no other issues, and while Xorg does hold a special place in my heart, it made me chuckle a bit when I realized I'd become the equivalent of the old-timer still skeptical that ext4 is ready for primetime.
Nvidia has been plumbing support for the APIs Wayland display servers typically use into their driver, not the other way around.
IMO this, on its own, means that pushing Wayland is intentional sabotage of "desktop Linux", because the fragmentation could be deadly for the ecosystem. It's fine, if perhaps short-sighted, for the big corps and desktops that do the pushing, of course, because they're fine with supporting just a single "compositor".
"It removes fragmentation, could be deadly for the ecosystem"
> wayland
"It adds fragmentation, could be deadly for the ecosystem"
Both are now the standard on the most of the biggest linux distributions, so maybe it's not that big of a deal?
Come on, literally noone outside the 3% cares at all about linux desktop.
I care. Wayland doesn't help.
Most Wayland servers also support X11, by the way (usually through XWayland, which is part of Xorg).
Window managers is a Xism that some DEs brought into the Wayland world (e.g kde) where some have not (e.g gnome).
It’s worth noting that a Wayland display server has to implement far less than an X server and as the article mentions there are things like wlroots that do a large chunk of it for you.
That's why I said "most" and "usually". That said, while it's certainly possible, I haven't seen any implementation that did it yet.
> Window managers is a Xism that some DEs brought into the Wayland world (e.g kde)
KDE does not separate its window manager from its compositor (KWin) at all. What it separates is its shell (Plasma). In the GNOME world, mobile shell (phosh) and phoc are separated in similar way.
I especially enjoy Hyprland's implementation of special workspaces, which allows me to hide specific application windows and summon them on-demand with a keybinding.
My Hyprland config is here for anyone interested: https://github.com/heywoodlh/nixos-configs/blob/master/roles...
https://github.com/solarkraft/awesome-wlroots#compositors
Among non-tiling ones are: hopalong, labwc, laikawm, tinybox, waybox, wayfire.
Note that the XFree86 developers themselves have abandoned XFree86 development.
[1] https://www.reddit.com/r/kde/comments/1335gj5/mouse_feels_la... [2] https://www.reddit.com/r/wayland/comments/wj7jji/mouse_lag_o...
For what it’s worth, KDE is quite behind in terms of wayland. It has gotten a lot better, but it is not a good fit for evaluating wayland itself.
For me it's a non starter if that's not fixed.
I have a nvidia gpu, so probably it's a nonstarter fullstop, damn nvidia
Used by the kernel. When you are using proprietary nvidia drivers you literally binary patch your xserver executable. That will obviously not work with other executables.
official support is the way to go for me, so i’m back on X for the time being
I'm using a ryzen laptop with external display via the nvidia GPU. All good!