Head to https://squarespace.com/thelinuxexperiment to save 10% off your first purchase of a website or domain using code thelinuxexperiment Grab a brand new laptop or desktop running Linux: https://www.tuxedocomputers.com/en# š SUPPORT THE CHANNEL: Get access to a weekly podcast, vote on the next t...
šļø LINUX AND OPEN SOURCE NEWS PODCAST:
Listen to the latest Linux and open source news, with more in depth coverage, and ad-free! https://podcast.thelinuxexp.com
00:00 Intro
00:39 Sponsor: 10% off your first website
01:36 X11 vs Wayland
04:47 What's missing from Wayland itself
06:22 Desktop Environment support
09:07 Wayland & GPUs
10:50 Gaming on Wayland
13:01 Apps & Wayland
14:52 Parting Thoughts
16:39 Sponsor: Get a PC made to run Linux
17:57 Support the channel
So, up until recently, all Linux desktops used the X Server, also called X.org or X11. It's a venerable piece of software, that predates even the first release of the Linux kernel, by almost a decade, and X11 is virtually unmaintained now.
And so that's why Wayland was started in 2008. In terms of advantages, it eliminates screen tearing, it lets you have multiple monitors with different refresh rates and different scaling factors, and it's more secure.
The Wayland protocol still lacks network transparency: Wayland doesn't support running a program on a computer, and displaying it on another. Some stuff also isn't supported yet, on Wayland OR on X11, for example HDR.
Support for fractional scaling has just recently been added, and isn't fully supported by all major Linux desktops and toolkits just yet. Wayland also doesn't support global shortcuts by default, but it's fixed through a desktop portal.
And we need to look at desktop environments and window managers. GNOME is probably the one with the more robust Wayland support available right now: not the most feature complete, but the most robust.
On KDE, Wayland support is a bit less solid, in my experience, Plasma 6 should be THE release with good Wayland support.
As per other desktop environments: Cinnamon is just beginning, MATE hasn't started, but XFCE has published a roadmap of the things that already work, and the things that need to be worked on. Pantheon, the desktop for elementary OS, has an experiment wayland session that is, for now, not really usable, and Deepin doesn't seem to have any plans yet.
You can use Sway, which is basically i3 but made for Wayland, with support for i3 config files, you have hyprland, based on the wlroots implementation, that seems to be the fastest moving tiling window manager for Wayland.
If you use open source drivers, like the mesa drivers for Intel and AMD GPUs, or the Nouveau driver for nvidia, you're all good. These support everything you need, and work well with Wayland, just as well as on X.Org. But then, there are the proprietary nvidia drivers.
And to be fair, they do work with Wayland. it took a long while, but it works, I've been using them on hybrid graphics laptops on GNOME and KDE, and on a desktop running Fedora for a long while, and it works. But it's also not the best experience.
And since we're talking about GPUs, let's talk about gaming. Gaming on Wayland basically relies on X.org, with something called XWayland: it's and X11 server running inside of Wayland.
There is a small performance impact depending on the game. It's not huge, but it's there, so if you're struggling to keep a smooth 60FPS, Xorg will be better. This is notably true with Nvidia drivers, which don't handle XWayland very well.
For now, Wayland enforces Vsync everywhere, unless your monitor has adaptive sync, so stuff like Gsync of freesync. If you don't have that, then Vsync is, for now, mandatory.
And finally, we have application support. All the latest Kirigami apps for KDE, or QT 5 and Qt 6 apps, or Libadwaita apps will handle Wayland well, and all the portals they need to interact well with other apps, screen sharing, and the like. Electron apps using a recent version of electron will also support Wayland, but a lot of electron apps still use an old version that doesn't support it properly.
And older apps using GTK 2, or older versions of Qt also won't support Wayland. Some web browsers also don't run natively with Wayland.
I discovered few issues with Wayland: My wallpaper often doesn't scale correctly and apps like discord or chromium take 99% of the screen when theye are maximized.