Gone are the days when gaming was a weakness for Linux. Today, thanks largely to Steam, users can enjoy thousands of quality commercial games on an open-source operating system.
In this comprehensive guide, I‘ll show Linux enthusiasts how to get the best gaming experience possible on Ubuntu-based distributions.
A Brief History of Steam on Linux
Valve introduced a limited beta of Steam for Linux in 2012. In the early days, lack of games and graphics driver issues resulted in low adoption.
Fast forward to 2023, and the Steam Store now officially supports over 7000 Linux-compatible games spanning AAA blockbusters, indie darlings, strategy franchises, RPGs and more. Enthusiast sites like GamingOnLinux track this growth month-to-month:

Additionally, significant improvements in open source graphics drivers by projects like Mesa have enabled near-native gaming performance for most modern titles.
As a result, the Steam Hardware Survey indicates Linux gaming adoption has doubled since 2016:

The trajectory is clearly positive for Linux gaming, thanks to Valve‘s early investment. Now let‘s get Steam running on your Ubuntu desktop!
System Requirements
I recommend a mid-range gaming desktop built with the following modern components:
- Discrete Nvidia RTX 3060 or Radeon RX 6600 GPU: Delivers 60+ FPS in 1080p across popular eSports and AAA titles
- AMD Ryzen 5 5600X or Intel Core i5-12400: Latest 6-core CPUs optimal for high refresh rate gaming
- 16GB DDR4 RAM @ 3200 MHz: Ensures consistently smooth performance thanks to ample memory
- PCIe Gen 4 NVMe SSD: Rapid storage for quick game launch and level load times
- 600W 80+ Gold PSU: Efficient and reliable power delivery for maximum stability
This builds should handle the latest games like Cyberpunk 2077 and Elden Ring at High-to-Ultra settings.
You can get by with older/weaker hardware, but expect to compromise on resolution, fidelity and frame rates.
Step 1: Enable 32-bit Architecture
On 64-bit Ubuntu, run:
sudo dpkg --add-architecture i386
sudo apt update
This enables support for installing 32-bit Steam client and game packages in 64-bit environments.
Step 2: Install Packages
Essential dependencies:
sudo apt install libgl1-mesa-glx:i386 libgl1:i386 libglu1:i386
Audio, video and input libraries:
sudo apt install libasound2:i386 libsdl2-2.0-0:i386 libv4l-0:i386 libpulse0:i386 libudev1:i386
Step 3: Add Steam Repository
wget -qO- https://repo.steampowered.com/steam/pubkey.gpg | sudo apt-key add -
echo ‘deb [arch=i386,amd64] https://repo.steampowered.com/steam/ stable main‘ | sudo tee /etc/apt/sources.list.d/steam.list
sudo apt update
This enables package downloads from Valve‘s official Ubuntu repo.
Step 4: Install Latest Steam Package
sudo apt install steam-installer
Steam deb packages may occasionally receive compatibility fixes and upgrades, so it‘s ideal to install from the repo versus manual downloads.
Once installed system-wide, launch Steam from the applications menu or terminal.
Step 5: Create/Login to Steam Account
First-time users will need to create a Steam account. This grants access to community discussion boards for game tech support:

Veteran PC gamers can simply login via existing credentials, granting instant access to their library.
Step 6: Install Graphics Drivers
At this point, I highly recommend installing the proprietary Nvidia or AMD graphics drivers appropriate for your GPU:
sudo ubuntu-drivers autoinstall
Though open source Mesa drivers have improved vastly, proprietary graphics drivers still deliver 5-20% extra gaming performance depending on your hardware.
This is because vendors like Nvidia optimize drivers specifically for consumer graphics workloads.
For example, this Ubuntu 18.04 gaming benchmark compares proprietary vs Mesa – Nvidia wins thanks to higher frame rates across the board:

So don‘t leave free performance on the table!
Step 7: Enable ACO Shader Compiler
ACO is an experimental Mesa shader compiler optimized for AMD GPUs like the RX 6600. It can provide double digit FPS gains in Vulkan games like DOOM Eternal and Strange Brigade:

To enable system-wide:
export RADV_PERFTEST=aco
Step 8: Install MSI Utilities and GameMode tools
To maximize Linux gaming performance across various titles, install these optional utilities:
MangoHud/GOverlay
git clone https://github.com/flightlessmango/MangoHud.git
cd MangoHud && ./mangohud-setup.sh install
MangoHud and GOverlay shows real-time FPS counter, frame times, CPU/GPU temps, RAM usage etc while gaming – crucial insights for optimization.
GameMode
sudo apt install libgtk-3-dev meson
git clone https://github.com/FeralInteractive/gamemode.git
cd gamemode && meson build && ninja -C build install
Gamemode auto-tunes Linux system settings during gameplay for lower latency and higher FPS.
Step 9: Install Linux Games
Now browse Steam‘s library and install favorites like:
- Counter-Strike: Global Offensive
- Dota 2
- Elden Ring
- Oxygen Not Included
- Factorio
- Risk of Rain 2
- Saturnalia
- Teardown
- Victoria 3
Be sure to check each game‘s store page for confirmed Linux compatibility. Look out for this penguin icon:
Step 10: Enable Steam Play Proton
Proton is Valve‘s Wine-derivative compatibility tool that lets you play thousands of Windows games on Linux seamlessly:

Enabled via Steam settings:

Popular Proton-compatible titles absent from Linux like Valorant, Genshin Impact, Escape from Tarkov etc now playable on open ecosystems.
Yes, some anti-cheat solutions still block Proton, but the catalog expands daily thanks to community reports and Valve whack-a-mole.
So don‘t hesitate to try your favorite Windows games on Linux!
Optimize Control Setup
While most controllers like Xbox, PlayStation and Nintendo Switch Pro adapters work automatically, you may need to manually map keys for specialty gamepads.
I suggest Lizard Mode configurator for the seamless setup experience analogous to Xbox Accessories app on Windows.
Supports per-game keybindings, advanced rumble, RGB lighting and stick sensitivity tuning. Exactly what hardcore Linux gamers demand!
For competitive multiplayer titles, mouse polling rate tweaks can provide an edge. Piper lets your configure mouse settings like CPI, angle snapping, polling etc:

Now you never have to compromise or quit games just switch to Linux!
Bonus: Try SteamOS Holo ISO
Want a console-like gaming experience tailored for Steam? Checkout SteamOS Holo, an actively updated Arch Linux distro focused purely on framerate-friendly optimizations:

Benefits include:
- Latest Mesa drivers – Bleeding edge OpenGL/Vulkan optimizations
- Zen kernel – Lower latency for competitive online games
- GameMode – Enabled system-wide for higher FPS
- Proton GE – Compatibility layer for newest Windows games
- Holofans Auto-Optimizer – Easy setup wizard for best performance
Dual boot SteamOS for a lean Windows alternative when gaming is your priority.
Or replace Windows outright if you primarily enjoy single player experiences!
And with that, you now have Steam fully ready for duty on Ubuntu Linux along with expert recommendations to extract the maximum frames per second across hundreds of native titles + thousands more Proton games!
See you on the battlefield, summoners rift or Azeroth – happy gaming!


