For Linux Enthusiasts Especially, The Steam Deck Is An Incredible & Fun Device
Over the past nearly 18 years of running Phoronix, I have come across many interesting Linux-based products from Linux embedded in motherboards for instant-on use to the BlackDog USB port pen drive Linux servers to solar-powered super-computers in trash cans. The most fun and promising Linux-powered gaming device for the masses though is launching today: Valve's Steam Deck. I've been fortunate to be testing out this Arch Linux derived handheld game console the past month and it has been working out very well -- both as a portable Steam gaming device but making it even more compelling from the Linux enthusiast angle is its "developer mode" that effectively turns it into a general Linux handheld and also being free to load your own Linux distribution of choice.
If you haven't been living under a rock, the Steam Deck really not need an introduction. But otherwise long story short it is the much anticipated Valve handheld gaming computer that features a 7-inch 1280 x 800 display, gaming-optimized controls, 16GB of LPDDR5 memory, 64GB to 512GB of storage depending on model, and is powered by a custom AMD APU. The AMD APU is made up of four Zen 2 cores (8 threads) and an AMD RDNA2 GPU with 8 compute units.
Valve kindly provided Phoronix with a review sample of the Steam Deck for which I've been testing the past several weeks. In this article are my initial impressions so far, but long story short this an excellent device when it comes to the hardware build quality, Linux-based, and the level of openness of the platform. And, yes, it works great for running games.
On the software side, the Steam Deck is using SteamOS 3.0 that in turn is based on Arch Linux. SteamOS 3.0 is a complete overhaul compared to Valve's prior SteamOS work that is based on Debian GNU/Linux. SteamOS 3.0 with Arch Linux is much more fast-moving and has been seeing near-daily updates in preparation for launch.
By default the Steam Deck boots directly into Steam with its optimized full-screen interface. It works well and allows quick and easy access to your Steam game library. This UI looks nice and works efficiently, including when connected to a larger external display via USB-C. But for many Phoronix readers equally exciting is the easy access to the "developer mode". Simply hit the Steam button, navigate to the system settings, and toggle the "developer mode" option. After doing so, when clicking on the power button, there is then a "switch to desktop" option. This exits the Steam mode with its custom compositor and fires up a KDE Plasma desktop.
I've spent much time playing in the developer mode over the past month to tinker with the system. At least from my perspective, this easy developer mode access and the Steam Deck is being so open is what hugely excites me. When in the developer desktop mode, you have free reign of the system. You can basically do whatever you want to the Arch Linux based install -- by default root is mounted read-only as the SteamOS updates are distributed as immutable snapshots, but if desired it can be made read-write.
Even if wanting to keep the SteamOS root file-system in read-only mode, there is the "-r" argument for Arch's Pacman to specify an alternative root. I was using this to specify read-write mounts including on external storage. After using Pacman's "-r" option and adjusting the PATH, etc, the installed packages were happily running while keeping to using SteamOS immutable snapshots. It was magical being able to easily install a compiler toolchain and other software on this handheld gaming-focused computer and the level of openness was superb. For conventional end-users, Valve is encouraging those that want to use the desktop mode to make use of Flatpaks for easy app distributions/deployment. Those were working fine too, but many Linux enthusiasts will prefer Pacman and fun within Konsole. I also got OpenSSH working on the Steam Deck too.
As of writing, SteamOS 3.0 in its rolling state is relying on a patched Linux 5.13 based kernel (presumably in short order they will be updating that especially with more of their enablement code being upstreamed), and was shipping a Mesa 22.0-devel Git snapshot for the OpenGL and Vulkan graphics drivers for the RDNA2 graphics. KDE Plasma 5.23.5 was the desktop by default in the developer mode as of testing.