This post is roughly 20 months old. Originally published on May 1, 2023 and last updated on May 2, 2023.
When I received my Steam Deck Purchase Information email I wasn’t playing games all that often; mostly online racing games with friends once a week. I didn’t think I’d get much use out of a handheld console. I also had an inventory of PC parts available that could be used to build a dedicated Steam Box. So on July 18th 2022, I declined spending £569 on a Steam Deck and set about building a Steam Box instead. Here’s how I got on and what I learned.
I recently discussed why I cancelled my Steam Deck pre-order on the Linux Matters podcast. You can hear that discussion with my friends Alan and Mark in Linux Matters: Lawful evil monitor alignment (Episode 2).
At the time I had an inventory of parts that weren’t being used and on the second desk in my office I had an ultra-wide monitor, keyboard, mouse and more controllers than I know what to do with. From the parts I had available I selected the following:
I had all the parts I needed to build a Steam Box, except for the case and power supply, so I bought a Fractal Design Node 202 (without PSU) for £65 on eBay and a CORSAIR SF750 80 PLUS Platinum SFX Power Supply for £145 on Amazon.
The Node 202 is a compact chassis (10.2 litres) that can house a capable gaming build, but has several specific considerations to keep in mind.
The case is designed for 2-slot graphics cards, which means that larger triple-slot cards may not fit. The maximum supported dimensions are:
The Radeon™ RX 5700 XT GAMING OC 8G I have is too big to fit in the Node 202 case, but I was able to remove the shroud and fans, which allowed me to fit the GPU in the case with 2x 120mm Noctua case fans mounted on the bottom panel of the case to provide cooling.
Deshrouded Gigabyte RX 5700XT Gaming OC
The Node 202 riser card interface is PCI Express 3.0 x16 and there is limited space for a CPU cooler. This is why I went with the 5700G APU I had on hand, instead of the 5900X that I also had in my supplies.
The Node 202 also has limited space for cable management. The modular design of the Corsair SF750 power supply along with its easy-to-route cables helped to keep the cables tidy and prevented them from blocking airflow.
Partially Built Steam Box
Initially, I installed HoloISO, which gets lots of attention but switched to ChimeraOS on a recommendation from my friend Jorge Casto. ChimeraOS is excellent! 🧑🍳🤌
“ChimeraOS is an operating system that provides an out of the box couch gaming experience. After installation, boot directly into Steam Big Picture and start playing your favorite games.
If you want Steam in your living room, you want ChimeraOS” - ChimeraOS Team
If you’re building a Steam Box, I highly recommend ChimeraOS. One of the key advantages of ChimeraOS is its use of atomic updates. Atomic updates ensure that updates are applied as a single, cohesive unit, which reduces the likelihood of update failures and ensures that the system is always in a consistent state. In contrast, HoloISO uses the regular Arch Linux update mechanism, which applies updates individually and can potentially lead to update failures. In pursuit of a true console-like experience, ChimeraOS gets it right and even supports rolling back updates should anything go wrong.
ChimeraOS is a very well-thought-out implementation of a console-like operating system when compared to HoloISO. Here’s a summary of how ChimeraOS, SteamOS and HoloISO compare:
ChimeraOS | SteamOS 3.x | HoloISO | |
---|---|---|---|
Based on | Arch Linux | Arch Linux | SteamOS 3.x/Arch Linux |
Desktop | Gnome | KDE Plasma | KDE Plasma |
Atomic updates | ✔️ | ✔️ | ❌ |
Read-write root filesystem | ❌ | ❌ | ✔️ |
Custom partitioning | ❌ | ❌ | ✔️ |
General hardware support | ✔️ | ❌ | ✔️ |
Up-to-date base packages | ✔️ | ❌ | ❌ |
Remote app installation | ✔️ | ❌ | ❌ |
Built-in EGS & GOG support | ✔️ | ❌ | ❌ |
Built-in emulation support | ✔️ | ❌ | ❌ |
Additional game tweaks | ✔️ | ❌ | ❌ |
Additional artwork | ✔️ | ❌ | ❌ |
Built-in GE Proton | ✔️ | ❌ | ❌ |
Full source publicly hosted | ✔️ | ❌ | ❌ |
Forkable infrastructure | ✔️ | ❌ | ❌ |
Table taken from the ChimeraOS Wiki
I’ve been using ChimeraOS for nearly a year and I’m extremely happy with it. I installed ChimeraOS 33 when I built the Steam Box and it has updated itself, without issue, to ChimeraOS 41 (at the time of writing). New releases are made every 4 to 6 weeks. Some of the ChimeraOS features that I love are:
Having a dedicated “games console” has resulted in me playing more games, but more importantly, playing more games with my family. The three of us sit together to play through games, often with my daughter on controls and my wife and I problem-solving and making suggestions. As a family, we’ve revisited Spyro™ Reignited Trilogy something my wife and I played through together on the original PlayStation last-century! 😱 My daughter and I are most of the way through the Monkey Island Collection and we’ve discovered we love co-op games like Unravel Two and It Takes Two. We’ve also purchased some “mobile” games we play on tablets and NVIDIA SHIELD such as Riptide GP2, Riptide GP Renegade and Horizon Chase Turbo. Yes, we like racing games 🏁
My daughter has access to (mostly) the same games her friends play on Xbox and PlayStation. She doesn’t feel like our Steam Box is “different” from her friend’s consoles. When they visit each other they broadly play the same selection of titles, except for platform exclusives of course. When Stray and Five Nights at Freddys became the games to play among her circle of friends, they were a click away and worked perfectly. Thanks to the Steam Deck, ChimeraOS is just a games console and not a “PC” to her. She doesn’t have to worry about updates, drivers, or anything else. She just turns it on and plays games.
ChimeraOS powered Steam Box in action - before I figured out how to enable ultra-wide resolution
I’ve found ChimeraOS offers much better game compatibility than I’ve been able to achieve by simply installing Steam on Ubuntu. For example, Forza Horizon 4 and Forza Horizon 5 both run beautifully on the ChimeraOS powered Steam Box; something that eluded me on Ubuntu. The Steam Box is connected to a 3440x1440 ultra-wide monitor and configuring each game to use “Native” resolution via the game properties unlocks a gorgeous ultra-wide gaming experience. There is no going back from this once you’ve experienced it, especially for split screen local multiplayer games.
Several of my friends have Steam Decks and love them. They use them as both a handheld console and docked under the TV for family gaming. So, I could be using a Steam Deck to facilitate our family gaming requirements, but I don’t think I would have arrived at the idea of using a Steam Deck in this way without first experiencing the benefits of the Steam Box. I am considering getting a Steam Deck or similar handheld gaming-orientated PC and it would certainly be nice to use something more power efficient than the 270W total system power consumption the Steam Box requires. You can hear more about how my friend Mark has switched to Steam Deck as his primary gaming device in Linux Matters: Mastodon on My Résumé (Episode 1).
Since I first built the Steam Box I’ve upgraded the GPU to a Fighter AMD Radeon™ RX 6700 XT 12GB GDDR6. At the time of writing, this is the most powerful Radeon GPU that comfortably fits in the Node 202 case and still leaves room for the additional case fans I installed. This GPU is a great match for the ultra-wide monitor and all the games I’ve tried can run at 3440x1440 with high presets (or better) at upwards of 60fps. When I first built the Steam Box, ChimeraOS worked best with Radeon GPUs, if you wanted to enable the Steam Deck UI (gamepadui). Support for Intel and NVIDIA GPUs is improving, but I’ve stayed with AMD Radeon because that’s been proven to be the most compatible option.
I’ve also added a second SSD; the Crucial P3 4TB M.2 PCIe Gen3. I used the ChimerOS web UI to prepare the drive and it now automatically shows up in the Steam UI as a Steam Library location.
The Steam Box has a permanent home in my office, but originally I’d planned to put it in the lounge under the TV. I have an original Steam Link, so now I’m thinking that I’ll put the Steam Link under the TV to replace the NVIDIA SHIELD. I have some older GPD devices that are designed for gaming, so I think I’ll put ChimeraOS on those to see how they perform as dedicated handheld game consoles. Could they be used as Steam Link clients too?
ChimeraOS also supports installing software via Flathub. I’d like to get a browser installed that can be used for streaming services like Netflix and Disney+ so we can use the Steam Box for watching TV too.
I’ll report back on all of this in a future post. Like 👍️ and Subscribe ❤️
The tinkerer, maker and developer in me wants to try NixOS as games console solution but I’m starting to think that other than the learning opportunity there is no real value in doing so, considering what an excellent job ChimeraOS does.
And here we are at the conclusion with barely a mention of Linux 🐧 ChimeraOS and the Steam Deck are excellent examples of Linux devices done right; all the Linux-y stuff is just implementation detail. Even I don’t think of our Steam Box as being a Linux-y thing; I just pick up a controller, wake up the console and start playing contemporary games or my favourite retro classics 🕹️ without any fuss.