Is Wayland any good?

Ive pretty much always stuck to Xorg but am considering Wayland on my new Pc for KDE. Is it any better than Xorg? (I don’t use anything wine related I heard it has issues with wine)

I use it with Fedora. It had major issues at the beginning when it shipped a couple of years ago or so. There’s little reason to switch to Xorg anymore for me currently. Not for VMs, games (Proton and Wine) or anything. I had multi monitor issues like a year ago, needed to switch temporarily to fix, but to be fair, the setup was sketchy as heck. There are probably compatibility issues (XWayland) here and there, but I’ve yet to run into them.

I don’t know if it was placebo for me, but it’s noticeably more snappy than Xorg about pretty much everything. Quicker start up etc. Just keep in mind that It’s not a magic pill by any means, it only really affects the desktop experience.

4 Likes

When my gaming is in VM’s only I will only run wayland.

I’ll comment on this for @washthemhands87 … This is true but with a caveat… a ton of scientific, engineering and medical software still relies on X and therefore better to run it until it supports Wayland natively

Examples:
MATLAB
Commercial xray software (dental and skeletal)
Keysight ADS
Cadence
Altium Designer
Etc

Wayland is alright now but I still consider it beta software

I use Wayland on my Fedora laptop, a POWER-9 workstation and my NAS (the GUI does not get a lot of use on that one). I also use it on Ubuntu 18.04 (with the hardware enablement updates). None of those us Nvidia cards.

I think Wayland works great and produces a nicer desktop experience. X-Wayland provides backward compatibility for all X applications. I haven’t ever seen a reason to run X.org instead for the last several years.

The main thing I notice with Wayland (in native programs) is the lack of UI flicker compared to X.

Especially if you are coming from Mac OS X / macOS, using X can be somewhat jarring as there can be flicker or UI lag when resizing windows. By this I mean when you resize a window and the window’s contents are a frame behind the window border. As I recall, OS X had mandatory double-buffering on all windows, and it seems as though Wayland is achieving something similar with its every-frame-is-perfect design.

Would not most of that still run fine under XWayland?
(For the unfamiliar, XWayland is an X server running on top of the Wayland compositor for backward compatibility.)


Off-topic: @zlynx please drop by the Power/PowerPC/OpenPOWER thread if you have any interesting stories about POWER9 :slight_smile:

2 Likes

You might want to remove Altium Designer from your list - its Windows only.

I should have mentioned it uses wine but runs really really good in wine

Not always. Some calls haven’t been implemented yet and some funny UI things can occur. Like for example Matlab loses some of its UI abilities that it normally has under X in xwayland

Does Wayland offer anything resembling X’s networking features yet?

And I do specifically mean streaming specific windows across the network, once you get used to that having to stream the entire desktop just feels very clunky and just limiting.

Not going to happen anytime soon since even currently screen capturing is borked.

I am planning to implement PipeWire support at some point, but it’s a lot of work since it also requires significant GUI changes, a lot of the features that we have with X11 will probably be lost, OpenGL recording is still a problem and I’m not even sure whether PipeWire will solve the problem for all distros and desktop environments that use Wayland right now.

A lot of people are still using outdated systems, as a result it usually takes years before I can roll out new features to everyone. E.g. I know that about two years ago 30% of SSR users were still running the 32-bit version, despite the fact that almost any CPU sold during the last 10 years is 64-bit. Which is why I spent time implementing SIMD optimizations for 32-bit …

So supporting the latest new APIs isn’t a super high priority for me, I prefer to focus on stability. Even with PipeWire support I will likely continue to recommend X11 for stability reasons for a long time.

I also have to figure out how I can add support for PipeWire without pulling in another dependency that X11 users don’t need. So it will get there eventually, but for now X11 is the way to go.

1 Like

Heh, that doesn’t look very inspiring. Guess Xorg is nog going anywhere anytime soon…

Is that what people mean by network transparency in modern times?

This has been the most confusing thing for me; I can find dozens of comments across YouTube, Reddit, forums, etc. from users touting the wonders of X11’s network transparency, but when I start watching presentations given by Xorg developers or ex-Xorg developers they talk about how X11 is currently a whole mess of abandoned or obsolete protocols and hacked-together workarounds that almost no one can maintain.

The sense I have gotten is that X11 over the network was supposed to function like a remote graphics/UI toolkit, where only the draw commands like, “button at (x,y)” or “line n px wide from (x,y) to (x,y)” would be sent over the network; yet modern UI toolkits do their own drawing and send the whole window as an uncompressed bitmap.

This sounds like it could be worse than VNC for latency, but also worse over low bandwidth connections since X11 has no compression support. Is the experience really better?

You don’t usually run the X protocol over the network by itself, if only becuse it’s rather insecure, you’d pipe it through something else (ssh usually), and that something else can add the compression as well.

The advantage is that you can send individual windows transparently over the network. This is great since it allows you to use whatever you are used to for managing windows instead of having to deal with the oddities of whatever system the host runs on. This also means you can “run” X11 applications on Windows, transparently, if so desired.
Purely from a functionality standpoint VNC and RDP are big steps backwards from X11 (obviously they have other advantages, or they wouldn’t be used).

Now whether the protocol is any good is an entirely different matter and there most likely is room for improvement, though my general impression is that a lot of the “the old thing sucks” projects suffer from severe NIH.

That’s not to say there is no room for improvement, of course, but very often it would have been well more sensible to improve upon what there already was rather than throw everything away and make all the same mistakes again. The argument that it would be faster to start over, which is often used in such projects, very often turns out to not hold water in practice either (which Wayland proves quite well given how long they’ve been working on it by now)