Gaming for GNU (popularly known as “Linux” even though that is not the name of the OS) has undoubtedly grown significantly in recent years, and 2017 was no exception. For 2018, I think that the following things need to happen to increase the quality of GNU gaming even more.
Stop advocating Wayland over Xorg
Yes, I realize that many people believe Wayland is the definite way forward for many reasons, security of the desktop being among them. But I honestly do not think that Xorg is that big of an issue with the modern GNU desktop, and in fact, it is much better than what Wayland can offer, especially at the moment where the future of GNU gaming is critical and we are beginning to see wider adoption of GNU as a home and gaming OS.
Part of the problem with Wayland is the performance of games and desktops as a whole, and even the ability of some games to even work within Wayland is an issue. Xorg’s performance is just far and away better on many machines, and I’ve seen many games just crash outright when trying to run them under Wayland vs. Xorg — not a problem one wants to experience as a new user.
Furthermore, programs that depend on the transparency and client/server nature of Xorg will not work under Wayland, something else that can cause a negative opinion of the desktop. Unfortunately, even the distribution that most will be using — Ubuntu — has gone to Wayland as a default with the latest version, and it seems that its next version, a Long Term Support version which most people will use, will default to Wayland as well.
I would like to see either a radical retooling of Wayland to better support existing programs and run much more efficiently before it gets rolled out, or, preferably, just keep working on Xorg. I realize that there are some who would say it’s unfixable and unmaintainable, but I tend to think these are just excuses to change over to their preferred, inferior alternative Wayland.
Stop advocating “universal packages”
Advocating alternative packaging solutions for distributions such as snap and flatpak is a huge mistake and creates many more problems than they would solve. The packaging method is slow, fragmented from the base system so that access to the base system to become usable makes their supposed sandboxed “security” worthless, and does not take into account the many actual differences in the implementation and expectations of different distributions. The best way to package a program for GNU is to package it for its own system. While this may seem daunting for certain packages, especially binary, non-free packages (which should be avoided or at least minimized, anyway), it has been done quite successfully and easily for a long time, without the need for a Windows-like “universal package” installation method that wastes space and resources by installing everything redundantly for every single package.
Basically, maintainers matter. Trying to fit Steam and other non-free software into some alternative packaging solution is just silly and won’t fix anything, and, in fact, will add to the complexity and create more problems than it will fix. Given that Steam already creates its own micro-ecosystem of libraries (something that many people are trying to avoid by using native libraries instead, including the Arch distro which includes a “native” Steam launcher that depends on all the necessary libraries to make Steam run at a native level), sticking all that in its own little pocket just creates a mess.
The amount of sheer hatred for the systemd init system on desktops is something I will never understand. I get that systemd is probably not the most efficient or ideal tool for servers and other light systems, but for complex, multiuse desktops that require many daemons (services) to run without stepping on each others’ toes, plus an easier, more centralized method of base system configuration for common tasks, systemd absolutely outdoes every other alternative, and does so very well. The configuration of desktop PCs, especially for gaming, benefits immensely from systemd, with no drawbacks.
And yet there are GNU users who will tell you that systemd is the single worst thing that has ever happened to GNU; some of these users are long-time users like myself, but unlike me, cannot and will not embrace change, and some are newer users who are just hopping about the anti-systemd train because they think they should without being well-informed themselves. Many cite the notion that systemd isn’t simple and layered, and therefore isn’t UNIXlike, and yet the name GNU itself states that GNU’s Not UNIX, and such “rules” of simplicity over complexity really only serve GNU where they are needed.
Many of these same users also will not embrace pulseaudio, despite it having proven itself as a very capable and complete audio solution for the home desktop. When you fear what’s new, you often leave yourself in the past, clutching onto the old and broken. And yet many of these same people will be the first to embrace actually negative, broken new solutions such as Wayland and poorly done and badly implemented “universal package” solutions such as snap and flatpak. I don’t understand it.
GOG Retail Cards
Something that’s not exclusive to GNU, but I really want the game store site GOG to start selling their own retail level cards to allow people to buy games without having to deal with credit cards or other messy, non-private forms of payment. GOG supposedly supports some sort of third-party retail card, but not only would I rather have something officially released and supported by them, but they also don’t have any of those cards around here anywhere. It would create a very easy and solid method of purchasing DRM-free games for GNU via GOG by giving them an equivalent method of using Steam retail cards to buy games from them that are not necessarily DRM-free.
Also, GOG, please don’t sell yourself off to some terrible company like Humble Bundle sold itself to IGN. I don’t want to have to boycott you, too.
Removal of “universal controller configuration”
Over the last year or so, I’ve noticed a disturbing trend; games which support game controllers have been standardizing themselves to one single controller configuration, namely, the layout of the XBox 360 controller. How we, as GNU users, have allowed our controller configurations to be standardized to a controller for a locked-down, Microsoft-owned, non-free piece of hardware, I will never know. And worse, it seems that instead of allowing games to detect any controller and configure them from their raw input values, mapping each movement to whatever game function is necessary for that particular controller (because there are tons of controllers, many of which aren’t even close to the standard layout of the 360 controller), they now try to detect the controller and map them — many times very arbitrarily — to the 360 controller’s layout, and if it doesn’t detect the controller at all, many times you’re left with no controller support at all.
Given that even a few years back when we could map our controller as we wanted to in every single game that supported controllers, this is a huge step backward. It’s bad when I play a native game that supposedly supports a controller, but just because I’m not the “proud” owner of a 360 controller, I either am forced to play via keyboard (many times, very awkwardly in the case of certain games better geared towards playing on a controller) or manually mapping said keyboard inputs to a gamepad action via a nice program called antimicro. Either way is an unnecessary substitute for what should be a built-in option to use any controller one possesses and map them to whatever one wishes in that game. It’s a horrible trend, and it needs to die.
I’m sure I have more things I can complain about that I can’t really think of right now, but this is a good start. We have really begun wanting to support many things that are detrimental to the overall gaming experience in GNU (and not supporting things that vastly improve it!), and I really want to emphasize these things to people that maybe we could change things for the better. I want GNU to be insanely successful, and I would hope everyone else who uses it would, as well — but sometimes, I really wonder.