Hey guys, what are the pros and cons to wayland if I intend to use my PC for gaming + others?
Comparisons to X?
General impressions?
Your advice on if I should use it or stick with X?
My PC parts are arriving soon, and while Ive been a linux user since 2016 its the first time I intend to fully main drive linux, so I guess im just looking for as much information as I can get on it.
Feel free to post links to articles or anything that will answer if you prefer, we’re on a link aggregator after all ;) and I dont mind reading.
Thanks in advance :)
Really, what it should come down to as an individual is that all of the x11 devs left to work on Wayland because x11 is unmaintainable.
Use Wayland if it works for you, if you find something that doesn’t work, go back to x11 and find the issue tracker and switch back if you care for the benefits later.
The benefits:
- A better security model
- More efficient rendering
- Better animations
- Better support for multi displays (mixed refresh rate/dpi)
- HDR (soon)
- Better color management (soon)
The only problems I have currently is sway doesn’t support single window capture and the XWayland clipboard isn’t great.
Many users seem to think that the only problem is nvidia, but it’s not true, app compatibility is still a very noticeable problem sometimes.
For example, as far as I know there are still no on-screen keyboards, except for those integrated into desktops, if they have them at all.The pros and cons boil down to wayland has no awesomewm-like window manager and Xorg has, well, awesomewm…
I personally love Wayland for my system. I use Sway for mine and with support for VRR with my monitor, a lot of the vsync problems people talk about goes away (at least for me). I will say, some things that rely on Xorg screen sharing (Like Discord) will only share Xwayland windows. This is fixed in most applications, but not all. Also screen recording in general is a bit lacking. My main pro for Wayland is I use multiple monitors, and unlike Xorg which caps the refresh rate for the full desktop to the lowest (which for me is 75hz), Wayland allows different refresh rates per monitor, which means if I drag a vsync game over to a different monitor, the fps cap changes.
Wayland is also vastly improved by moving over to PipeWire instead of Pulseaudio. I’ve never had a singular problem with PipeWire and it’s drop-in pretty much. I recommend that as well. PipeWire is compatible with applications that use PulseAudio so you shouldn’t even notice a difference at worst, and will notice an improvement in sound latency most likely.
I think the main drawback about Waypand right now is people have VASTLY different experiences. Which is why I say just try it out. Most big DEs like KDE and GNOME have Wayland sessions that you can choose if you just install the wayland parts. Worst case scenario you go “This sucks” and go back. Wayland is only getting better, though, and I find that a lot of the problems I had even just 6 months ago are pretty much gone. Check in often and just keep your Xorg stuff laying around. That’s the beauty of Linux.
Wayland fixes a number of bugs and fundamental issues in X.Org. It is also much more actively developed, and it seems likely that over time new hardware will stop working with X.Org due to bugs nobody is interested in fixing (this is already the case for the Apple M1/M2 GPU drivers).
On the other hand, Wayland also introduces a number of additional bugs. However, some distros like Fedora have enabled it by default for years. In practice, most of the bugs relate to at least one of Nvidia’s drivers, DPI scaling, and DEs with less mature support. If you’re using an AMD GPU, 1080p display, and GNOME, you’ll likely have few issues and possibly even a better experience compared to X.Org.
One pro of Wayland is better multi-monitor. X11 can’t really handle mixed refresh rates, nor multi-monitor VRR, and per-monitor DPI scaling isn’t easily done. Of course, Nvidia doesn’t support Wayland VRR yet, nor does GNOME, but Plasma or wlroots on AMD should work. Wlroots btw is the Wayland compositor library e.g. Sway and Hyprland is based on.
Forced vsync has been a problem for gaming on Wayland, though that’s in the process of changing due to the tearing protocol, at least on Plasma and wlroots, doesn’t seem like GNOME has picked it up yet.
This (multi-monitor support) is exactly why I switched to sway from i3wm, and haven’t looked back.
Not a gamer, so I can’t speak to that aspect, but for everything I do there’s not much difference.
I do use a Dvorak_ES layout and it works perfectly fine in both Sway and Hyprland. I assume Colemark would too.
@SrEstegosaurio I use colemak from bigbagtrix that applies it via setxkbmap. Tried that on fedora sway spin, wouldnt work erroring cos it needed X11. Maybe should try out in other WMs like you said or try using kmonad.
xkb layout options are set in the sway configuration file in the
input
section: https://wiki.archlinux.org/title/sway#Keymap
A few gaming related downsides for me:
There’s no way to disable the compositor, so if you play any windowed games, you’ll have some extra input lag. It shouldn’t matter if you play fullscreen games though.
Missing Xorg tools like xinput or xrandr. Maybe I’m too finicky, but sometimes I can’t find the exact mouse speed I want through the settings GUI (for example, in KDE Plasma there are 11 steps from slowest to fastest), and through xinput commands I can just type any speed I want, which is very useful if one step feels too slow but the next one feels too fast.
I also want to increase the screen’s gamma level sometimes and I haven’t found any way to do that at all on Wayland.
There’s no way to disable the compositor, so if you play any windowed games, you’ll have some extra input lag.
The reason compositors historically increase input lag so much is due to design flaws in Xorg. With VRR Wayland has comparable input lag to Xorg with no compositor, and it’s only slightly worse than Xorg without VRR. In the best case scenario Wayland can have better input lag than uncomposited Xorg: there’s a reason the Steam Deck uses Wayland in game mode.
I think as of recently Wayland with compositing might actually have better input lag than Xorg without compositing, but I haven’t seen any thorough benchmarks in the past few months.
This is something that I am sure will be solved eventually, but one of the major weaknesses of Wayland is the lack of lightweight standalone compositors.
For example, if I want a lightweight stacking window manager on X, I can choose between Openbox, Fluxbox, FVWM, IceWM, Pekwm, JWM, Window Maker, hell even twm if I were a masochist. I have tried out all of these at one point or another and they all have something to offer users. But using Wayland, there’s, uhh, labwc, and that’s it? Maybe I could try using kwin standalone?
The situation for tiling window managers is similar, with Sway being the only one that feels mature.
I plan on migrating from Openbox to labwc at some point in the future, once it’s ready. labwc itself is really good, but some of the other programs I need to recreate my setup aren’t there yet. Someday…
But using Wayland, there’s, uhh, labwc, and that’s it? Maybe I could try using kwin standalone?
There is a big list here (Although a lot of them are not mature).
Wayfire and hikari also comes to mind.