It was an exciting time for Linux gaming. Gabe Newell complained of Windows 8 and its’ awful representation of being a desktop-tablet hybrid, along with their walled garden that is the Windows Store. So Valve decided to take matters into their own hands by using the power of Linux, and in so doing, created SteamOS — a Debian-based distribution that launches Steam Big Picture Mode on startup, thereby preventing the need for a mouse and keyboard.
Needless to say, I think we’re all aware that Valve’s partnership with various distributors like Dell and iBuyPower to get SteamOS on their machines — dubbed the Steam machines — had been met with a lot of skepticism and therefore launched poorly. Not only was the selection of games limited — due to the need for Steam games to be natively built for Linux in order to work with SteamOS — but console gamers reasoned, “Why should I have to pay nearly twice the money on this, when I can get a traditional console for a lot less?”
Then there was the nightmare that was installing SteamOS, for creating your own Steam machine. Ekianjo had penned his frustrations with SteamOS a few years back, and much of his thoughts I concur with — getting partitions to work along nicely, getting Wi-Fi drivers to work, outdated video drivers, a bunch of other junk I don’t need to fill you up on.
I know I’ve already offended a few die-hards out there. But there’s a huge plus to all this that I haven’t covered.
As poor as the sales of the Steam machines were (some manufacturers of whom later ditched SteamOS in favor of Windows), and as irritable as getting SteamOS to work properly was, look at where we are now. Of the nearly 80,000 titles out there on Steam right now, over 15,000 of them are natively available for Linux — that’s about 20%. It may not sound like a lot, but that percentage increases thanks to the advents of Proton.
If we go to ProtonDB — the unofficial database of reports of games running via Proton — over 10,000 additional Windows/Mac games have been verified to work. That percentage hops to 33%, a third of the entire Steam catalog.
If Valve hadn’t taken the initiative with Linux gaming and SteamOS, where would we be? We’ve come a long way since 2013.
GamerOS is based on Arch. No need to worry if you’re not familiar with Arch — everything is done behind the scenes. All you get is the Steam Big Picture mode after installation; it’s just like SteamOS, but far superior.
The hardware requirements for GamerOS is as follows:
- A dedicated physical computer (dual booting not supported, virtual machines not supported)
- 4GB or more RAM
- A single 20GB or larger storage device
- A single connected TV or monitor with a resolution of 720p, 1080p, or 2160p
- A keyboard and wired internet connection are required for installation and first boot only
I’m glad to announce I had zero installation problems installing GamerOS. The ISO, for GamerOS 18 in particular (and the one I used for reviewing), is just shy of 600 MB and ships with the following:
- Kernel 5.6.15
- Mesa 20.0.7
- NVIDIA 440.82 driver
- steamos-compositor-plus 1.5.1
- steam-tweaks 0.3.3
- steam-buddy 0.6.1
- retroarch 1.8.8
The installer uses a text-based interface, and you have the choice of what drive you want to install the OS on. Other than that, there’s no other interaction with the user. It downloads and installs some stuff, including the Mesa/NVIDIA drivers, then five minutes later, done.
You’ll need to have a wired Internet connection to proceed with installation. I found it strange you can’t use Wi-Fi, but I imagine later on it’s something the developer will integrate support for.
The simplicity of the installer comes at the expense of partitioning options. In other words, you won’t be able to dual-boot with GamerOS on the same drive that you have another distro installed on, as GamerOS will format whatever drive is selected during installation. Thankfully, since I have two drives, I’m still able to dual-boot with Salient OS.
If you’ve used SteamOS, or Steam Big Picture mode (BPM) for that matter, this is the interface you’ll see after restarting the machine. Wi-Fi was working out of the box so I could login to my Steam account. Gamepad support also worked as intended — I had to navigate to the Bluetooth settings with my keyboard to pair my DS4, but I could have also just used my wired Switch Pro controller.
A big plus here is the installer takes care of downloading and installing the graphics drivers for your hardware setup, including the NVIDIA drivers, so you don’t need to set that up afterwards. Just install, login to your Steam account, and start playing.
Updates to GamerOS come in about once a month. These updates will take care of upgrading your graphics drivers and kernel, as well as Steam Tweaks, Steam Buddy, etc.
Games download, install, and run just as if you were doing the same on a standard Linux distro. Proton works out of the box, as do the games that run with it. A list of games that are certified to work with GamerOS, whether natively or through Proton, can be found on their Steam curator page.
You can play music from the Steam client itself: just place the files somewhere on the drive (preferably in the home folder), add the directory containing the music in Settings, then play it from your library.
Additional shortcuts can be added to your library by going to Settings. You can use the following, for example:
- Dolphin emulator
It honestly feels a bit strange navigating Steam Big Picture mode with a controller. I guess I’m so used to using Steam with a keyboard and mouse that being able to access my catalog or settings by other means is something I haven’t been accustomed to. But I think this will be a big appeal to console gamers who have never really gamed on a PC before.
One thing that is lacking here is desktop functionality. While this is possible with SteamOS, GamerOS is designed strictly for living room setup, so all you can use is Steam Big Picture mode. However, by having a keyboard connected, users can access the terminal with CTRL + ALT + F3.
GamerOS doesn’t use pacman as the package manager. Instead, it’s using its own called frzr. Per the Github page:
frzr is a deployment and automatic update mechanism for operating systems. It deploys pre-built systems via read-only btrfs subvolumes, thus ensuring safe and atomic updates that never interrupt the user.
So you won’t exactly be able to install the same sort of software that you could typically get with pacman.
Now here’s the caveat. Let’s say I wanted to play a game that only works with a Proton fork, such as Proton GE (Injustice 2 being a good example). There’s no way to add Proton GE in BPM. And since you don’t have access to a desktop, you can’t launch a web browser and download it. I had to switch back to Salient OS, download Proton GE, navigate to the appropriate directory on the GamerOS drive, and put it there.
I suppose I could also access the terminal, download Proton GE with wget, extract and copy it to the appropriate directory. I could also install Firefox as a Flatpak (more on Flatpak support later), download Proton GE with that, and extract from the terminal. Still, I think it would be more convenient if we could have an option to download Proton GE, maybe through Steam Buddy, or have it pre-installed in future releases. (More on Steam Buddy later.)
Another minor issue is I have to re-pair my DS4 every time I start GamerOS. It won’t connect simply by pressing the PS button; I have to put the controller in pairing mode by holding SHARE + PS, go to the Bluetooth settings, and connect from there. I’m not sure if this is an issue with the Steam client itself, or just GamerOS as a whole.
This is the really cool thing with GamerOS. Steam Buddy allows the user to emulate older-generation consoles thanks to RetroArch, as well as run certain Flatpak applications, such as Kodi, SuperTuxKart, Minecraft, and Spotify.
The following consoles are supported so far, more of which will be added over time:
- Atari 2600
- Game Boy
- Game Boy Advance
- Game Boy Color
- Game Gear
- Genesis/Mega Drive
- Master System
- Neo Geo (requires BIOS file)
- Nintendo 64
- PlayStation (requires BIOS file)
- PlayStation 2
- Saturn (BIOS file optional)
- Super Nintendo
Flatpak support is currently as follows:
ROMs can be added through Steam Buddy and launched directly from Steam BPM, as well as installed Flatpaks.
How exactly does it work? Using another device on the same network, users can open a web browser, enter the local IP address of their GamerOS PC or gameros.local, and a list will be presented of consoles/Flatpaks to choose from. (No, you can’t do this on GamerOS itself.)
So let’s say you wanted to play Super Smash Bros. Melee. Select GameCube from the list, enter in the name of the game, select or upload an icon that BPM will present to you once added, then upload the ISO to the GamerOS PC. Now just select the game from the installed list of applications in BPM, and it will run with RetroArch.
I have to say, this is incredible. No external emulators have to be launched, just run the game from BPM. Then you can exit the game from the BPM overlay or Steam Buddy. Major thumbs up here; you not only have access to your Steam catalog, you can also play your old-school games as if it were a part of the console. As corny as it’s going to sound, it’s a beautiful thing having access to different generations of games on one machine, with little to no additional configuration needed. Just having the artwork banner in BPM… makes you feel like you actually own a GameCube again.
One might argue, “Well, you can get the same sort of transparency with other emulation devices, such as the Odroid-GO Advance.” And yes, I concur. But I think what sets GamerOS apart is that this is done directly through Steam, so you have access to the Steam overlay while playing. I dunno, I just find it nostalgic for some reason.
But that’s not all. You can use your external device like a remote for GamerOS. You can tell it to restart Steam, exit the game or application you’re using, and even toggle MangoHUD to see how much your hardware is being pushed. (Certain games won’t allow MangoHUD though for some reason.) You can also allow GamerOS to act as an FTP or SSH server, to allow easy file transfer.
Want to use another Flatpak that’s not available in Steam Buddy? Installing other Flatpaks is possible by adding a PNG or JPEG icon of 460×215 or 920×430 pixels and placing it in:
Then, name the file to the app ID of the application you want to use. I wanted to try and see if I could get Discord running, so I duplicated a banner that was already in the folder, changed the artwork a bit, and named the file:
Next, I went to Steam Buddy, and I was able to install Discord. I restarted Steam, tried launching the application from BPM, and it worked just fine.
The default controls may be a bit wonky for some when playing a game via an emulator. I probably could have just reconfigured the buttons in BPM, but instead I launched RetroArch and configured the buttons from there.
One thing I’d like to see is cheat support — though, I’ve no idea how it can be incorporated. Another feature, in regards to PSX titles, could be support for games that aren’t in the CHD format; I’m having issues installing the necessary tools to convert the discs into a different format.
There’s some really odd behavior with my mouse cursor when running certain Flatpaks. It’s really sluggish, and sometimes it’ll disappear. Certain context menus can’t be accessed. For instance, with Firefox, clicking the hamburger icon in the top-right just turns the screen white until I click again.
It’d be nice if we could get Lutris available as a working Flatpak here — that way, we can have access to our library of games on clients other than Steam, such as the Epic Games Store.
It’s Worth A Shot
My experience with GamerOS has been very pleasant. Installation was quick and painless; the ability to launch ROMs from the BPM interface is amazing, and the fact that we can use certain Flatpaks almost makes me feel like I’m using an actual desktop. Of course I’ll still need to use a standard desktop distro for content creation, like having to write this review, but it’s a distro that I’ll be dual-booting with for quite a while. I’m comfortable enough to disconnect all my peripherals from this machine, bring it over to a friend’s house, grab some controllers, and game on in the living room. It’s SteamOS re-imagined.
So for a quick summary, the good:
- A much more up-to-date version of SteamOS, with updates coming in about once a month
- Easy and swift installation
- No need to install or configure graphics drivers post-installation
- Out of the box gamepad support
- Out of the box support for emulators up until the GameCube/PS2 era
- Steam Buddy allows the user to control GamerOS from another device, including the ability to activate MangoHUD or toggle the compositor used, as well as install Flatpaks
- It’s a great way to introduce someone to Linux, as updates are done behind the scenes to make GamerOS as seamless of an experience as possible
- Not aimed for productivity use, as there’s no option to switch to a desktop, nor can multitasking be accomplished (i.e. you can’t play a game and ALT + TAB to another application)
- Strange mouse cursor issues with Flatpaks
- Controls for emulated games may be a bit off, though they can be fixed
- Bluetooth controllers have to be re-paired on every startup
- Need a wired Internet connection for installation; some folks may not have this
- The simplicity of the installer leaves little to no options in terms of configuration
- Certain shortcuts, when removed, will reappear after restarting Steam
And my wishlist:
- Add cheat support for emulators
- Add Lutris as a workable Flatpak
- Add .bin/.cue support for PSX titles
- Include Proton GE in future releases