Stop using useless arguments against Wayland

I often see people on the internet who like to complain about Wayland. I wouldn't normally have a problem with such an act, but the arguments that get used in these complaints are usually incorrect. I would put it down to simply being ignorant, but I've seen these pointless arguments so many times that I just can't see it as being such. These arguments usually boil down to the following: "$LD_PRELOAD" attacks, "My apps don't support it" (sigh), "It's not ready", and "The Nvidia support is bad".

In case you don't know what $LD_PRELOAD is, here's a quick summary: $LD_PRELOAD is an environment variable that dictates the directories in which library binaries (used by dynamically linked executables) are searched for. By prepending a directory, one can cause said directory to be the first place in which the library binary is searched for. With some clever programming, a malicious actor could create a copy of the library in which a commonly called function is replaced with the execution of some sort of malware; done without needing to modify system directories. TL;DR: it's an environment variable that allows malicious code to run without needing access to system directories via loading a different binary than it normally would.

Anyhow, this is apparently an argument that people like to use against Wayland. They claim that Wayland's security model is entirely defeated by the fact that security can be bypassed in other ways. This is so utterly terrible of an argument that I'm not even sure why I have to write about it. It boils down to "Your security measures are pointless because you can bypass them in other ways", which once again is a terrible argument to make. It's like saying that you should disable Windows Defender because there are rootkits that can get around it. It's an argument that holds no real weight in terms of Wayland. Sure, $LD_PRELOAD may be a security issue in some cases, but that is at no fault of Wayland's.

I can't believe that I'm really addressing this, but here we are. So what if "Your apps don't work"? How is that a fault of Wayland's? Unsurprisingly, the people that I see who say this are users of Nazi software, so that really takes any credit away from their statements. But hey! Xwayland exists! You can run an X11 server inside of Wayland for those apps that remain that still do not work under Wayland, so the point is baseless regardless. The only exception to this is window managers (and therefore desktop environments, but that's on the devs of those DEs to do things properly), which I do agree can be a hassle. However, there are alternatives! I myself use the Sway window manager, which is a replacement for the X11 window manager by the name of i3. If you are one of the many people who don't use i3 or Sway, you may find yourself out of luck. However, all hope is not lost. There are projects such as Wayfire, which is a window manager that is immensely configurable and extendable. If that's not up your alley, then maybe give an existing Wayland window manager a try. You might just like one of them. "My apps don't work" is not a fault of Wayland's, but even so, there are many solutions to the issue that some things may not work as intended.

Is it not? Many people seem to think that Wayland is a protocol that just recently came out, but that is not the case. Wayland v1.0.0 was released on October 22nd, 2012; this means that Wayland is over a decade old. In that time, it has matured immensely, and both Ubuntu and Fedora ship Wayland as the default display protocol. That should be enough to prove Wayland's reliablity.

Yes, it is. It's terrible, and has been for a while. That being said, that is at no fault of Wayland's. Nvidia's driver support outside of Windows has built up a reputation for being terrible; it gets called "NoVideo" for a reason. Saying that Wayland is bad because of the fact that the official proprietary drivers have terrible support for it is nonsensical. Doing so is like saying that the Linux kernel is bad software because of the fact that Riot's Vanguard anticheat software does not provide a kernel module for it. The nouveau project provides libre drivers for many Nvidia graphics cards, and its Wayland support has, in my experience, been quite satisfactory. That means that even if you use an Nvidia graphics card, Wayland support is there through the nouveau driver.

While there are some problems with Wayland (as there are with everything), it is by no means an inferior protocol to X11. The arguments made by the people on the internet who have nothing better to do don't hold up, and many of the problems that Wayland used to have have been solved in various ways by things such as Xwayland. X11 has been around since 1987; it's time to move on.

March 2023 (c) 2023 Eris A