Void Linux is a weird Linux distribution. You expect it to be similar to other Linux distributions, but then it just does things a lot differently. Another weird thing with Void Linux is it solves problems other Linux distributions still have to solve after decades, but then it adds its own set of extremely weird problems. A good example of such is getting Steam to work properly. As a result of supporting 32bit only CPUs, Void Linux expects you to install the 32bit libraries on your own if you use a 64bit CPU. On top of that, while the steam package is handled decent enough to not notice any problems, the dependencies are not, and so I want to help with installing Steam on Void Linux alongside helping out with games and how to handle their respective errors.
First of all, we need extra repositories to get Steam. Void Linux separates it is nonfree & multilib packages, so we need to install those repositories. Wait, installing a repository? Yep, as these repositories are officially maintained by Void Linux, they come in as packages in the official repository, so getting those repositories is as easy as entering the following command:
# xbps-install -S void-repo-nonfree void-repo-multilib void-repo-multilib-nonfree
With that, you will need the 32bit libraries, which may depend on what graphics hardware you use. If it is nvidia with the closed-source drivers, then you are likely to need to install the following packages:
# xbps-install -S libgcc-32bit libstdc++-32bit libdrm-32bit libglvnd-32bit vulkan-loader vulkan-loader-32bit nvidia-libs-32bit
For users of Intel or AMD graphics, the dependencies are the same, but instead of nvidia-libs-lib32, the package is called mesa-dri-lib32:
# xbps-install -S libgcc-32bit libstdc++-32bit libdrm-32bit libglvnd-32bit vulkan-loader vulkan-loader-32bit mesa-dri-32bit
On top of that, you will likely need to have the dbus service enabled, which you can do in Void Linux via the following command:
# ln -s /etc/sv/dbus/ /var/service
Some games also depend on mono, so install that too:
# xbps-install -S mono
Finally, Steam can be installed now:
# xbps-install -S steam
If you needed to enable dbus, then reboot your system.
Logging in, you will probably want to change two settings in Steam for an easier Linux gaming experience. To the top left corner, click on Steam, then on Settings. Once your in the settings, go to Downloads, and scroll down to enable the setting Allow background processing of Vulkan shaders. Then, go to Compatibility, and Enable Steam Play for all other titles. Optimally, you can try to instal ProtonGE if you are a nerd, if not, restart Steam.
Sounds easy right? No.
Because if you ever try to play a game, there is a very good chance that it will not run. That is what I meant by Steam not pulling the dependencies correctly, if I am not wrong, on AMD or Intel. To solve this install the related mesa-vulkan drivers...
# xbps-install -S mesa-vulkan-intel mesa-vulkan-intel-32bit
For Intel users, and...
# xbps-install -S mesa-vulkan-radeon mesa-vulkan-radeon-32bit
For AMD users.
With all of that, Steam should work just fine now :)
However, some games might not work well enough, so let us go over some of them.
Gamemode is supposedly improving the performance (sometimes) by selecting the appropriate power / frequency govenor:
# xbps-install -S gamemode libgamemode-32bit
Add your user to to the group:
# usermod -aG gamemode <user>
And set the launch option for each game:
gamemoderun %command%
MangoHud allows you to display the frames per second with additional information:
# xbps-install -S MangoHud MangoHud-32bit
Copy the file over:
$ cp /usr/share/doc/mangohud/MangoHud.conf.example ~/.config/MangoHud/MangoHud.conf
And set the launch option for each game:
mangohud %command%
If you like to use both MangoHud and gamemode, just use %command% once.
While I am not the greatest Brawlhalla player, every shortcoming in delay is noticeable, and after testing out different launch options, I came to the conclusion of the following launch options:
-vulkan -unlockfps -setfps 1000 -triplebuffer
Inside the game, most settings should be set by your likings. My personal recommendations is to set the background to Blur High Background High as well as changing some controls if you use a keyboard. Make sure to disable Pick Up with Quick Attack and make sure to enable Prioritize neutral over side as well as to set to bind w to Aim Up only. In the long term, it will allow you to do combos you otherwise could have not made with these settings like for example an X-Pivot.
Personal preference, but make sure to disable Motion Blur & Bloom. Also, make sure to set the FOV to 90 unless you have a good reason not to. This games runs pretty alright, major bugs have been already solved and most bugs also apply to other platforms too.
Make sure you set these options, otherwise your experience switching workplaces will be awful:
%command% -noborder -windowed -novid +m_rawinput 1