Steam is a gaming platform that allows game developers to sell their games and on the other hand, it provides a platform for gamers to buy games and socialize with other people who share the same interests. Steam supports nearly all operating systems, including Arch Linux and there are multiple ways to install Steam on Arch Linux.
Arch Linux is a general-purpose Linux distribution that comes with rolling updates which removes the hassle of its reinstallation for new versions. Playing games requires a GPU whose specifications primarily depend on the types of games you want to play.
In the past, Linux systems weren’t powerful enough to successfully run game launchers like Steam but now due to a number of improvements in Linux distributions like Arch Linux can run it smoothly. To install Steam on Arch Linux there are various ways and one of the easiest ones is by using its default package manager.
Like every other Linux distribution Arch Linux also has its default package installer which is pacman but to install Steam on Arch Linux though it requires the activation of multi-library. The multi-library on Arch Linux is required to install the 32-bit programs as Arch Linux itself is a 64-bit operating system. To enable multi-library, open up the pacman configuration file and uncomment the code line for multi-library:
Once you are done with the changes then simply just save the file and after that update the packages list for pacman by executing:
Now install Steam on Arch Linux through pacman using the S flag which synchronizes the packages as the application is installed from remote repositories:
Here the system will ask the GPU libraries you want to use with Steam on Arch Linux and here is a short description of each library:
- lib32-amdvlk: This is the open-source version of AMDVLK, the official Vulkan driver from AMD for Radeon GPUs.
- lib32-nvidia-utils: This is the library for the Vulkan driver from NVIDIA for GeForce GPUs.
- lib32-vulkan-intel: This is the library for the systems having intel-based graphic cards.
- lib32-vulkan-radeon: This is a community-developed Vulkan RADV driver for AMD GPUs that is part of the Mesa project which is a 3D graphics library.
- lib32-vulkan-swrast: Installing this library will allow working of vulkan based applications on the system that are not compatible will vulkan as it is a software rasterizier.
- lib32-vulkan-virtio: This is a Vulkan driver for virtual devices that use the virtio GPU.
Here, I have selected the intel GPU library as my system has intel-based GPU, you can select the relevant library as per your GPU specifications. Once the steam is installed, you can launch it by executing:
To Install Steam on Arch you can use Flatpak which is also a third-party package installer that accesses the Flathub repository for installing applications. You need to install it first since it is not included in Arch by default and to install it use:
After the successful installation of Flatpak Now install Steam using it on Arch Linux and for that execute:
Now launch the Steam application and enter your credentials for your Steam account:
Snap is a third-party package manager just like Flatpak which also comes with a command line version along with a GUI version. It is not pre-installed on Arch Linux so to install it you need git as it cannot be installed using pacman, so first you need to install git by executing:
Once git is installed clone the snap repository from git:
Now install the snap by using the make command as the make file is already present while cloning the repository:
Now enable the snap daemon service as it is responsible for managing the snap applications as it runs in the background, so for that execute:
After enabling the snap daemon service, a symbolic link is also created which makes the service accessible by the system.
Previously we created a directory for snap so to install any of the snap applications from any directory a symbolic link is to be created in that case execute:
After the successful installation of snap, now install this game launcher by executing:
Now after installation, if you see a message for a warning then see that warning by executing the snap warnings command, and if the warning is about snap app armor, then execute:
The app armor is a kernel enhancement that provides the mandatory access control for Arch Linux, so this service needs to be activated as it will restrict of system program and files, to launch Steam execute:
The purpose of a third-party package manager for any Linux distribution is that sometimes the packages are either not available in the official repository, or the version of that specific application is old. Yay is also a package manager that comes under the Arch User Helper Repository (AUR) which consists of scripts for applications that are mostly written by the users. The same is the case for snap and other third-party software installers as they are not pre-installed on Arch so to install yay on Arch create a clone of the git repository:
Now install yay AUR helper by using the make command as the make file is already present while cloning the repository:
To make yay accessible from any directory, create its symbolic link by using:
Once yay is installed in Arch Linux now install Steam and for that:
Here you can select the relevant GPU library for your system depending on the type of GPU:
Once the Steam game store a gaming platform is installed successfully, then just execute:
Note: If you install Steam on Arch Linux on using any of the above methods and run it just using the Steam command, it will launch:
However, when you log in to Steam with your account it will start to connect with the Steam server but might stuck there for a long time, and eventually you will get a pop-up of Force Quit:
This happens due to the GPU of the system as Steam is unable to run its interface, apart from that Steam may run but you won’t be able to see its homepage window. So, in that case you need to use the following command with the Steam launch command which will disable the GPU:
Linux operating systems are usually used in applications which include app development, programming, networking, and other similar applications. So, most game developers do not feel bothered to launch the game for the Linux platform. In that case, if you need to run a game that is only available on the Windows platform you can install protonup plugin for Steam.
The protonup is a tool that serves the purpose of managing the compatibility tools for steam and it provides a compatibility layer between the operating system and the game. So, install this protonup plugin in Arch Linux for Steam execute:
Once it is installed launch it and then install the latest version of protonup by clicking on the add version and then select the latest one:
Once you have installed the latest version then launch the Steam application on Arch Linux, from there go to its settings, and turn on steam play for all other files. Next, select the protonup version that you installed previously under the option of Run with other titles and close the steam settings:
Since steam can be installed using various methods so its removal method also differs and is based on the installation method. To completely remove a package from Arch Linux the -Rns flag is used so in case if it is installed using pacmnan then execute:
To remove steam if installed using Flatpak then just execute:
To remove steam if installed using snap then just execute:
To remove steam if installed using yay that is a AUR helper then just execute:
Note: If a package is installed through yay it can also be removed using pacman as well.
To install Steam on Arch Linux there are four ways for it which include using pacman, snap flatpak, and yay package manager. Moreover, to run Steam successfully on Arch Linux you have to disable GPU while executing the launch command. Since the number of games that support the Linux platform is quite low you can install protonup tool which can add a compatibility layer and as a result, you can play Windows-based games on Arch Linux as well.
I’m Aaliyan javaid, an electrical engineer and a passionate tech enthusiast. I have been working with embedded systems, programming, and Linux operating systems for over 2 years. I love to explore new technologies and share my knowledge and experience with others.