Das Gaming Handheld SteamDeck wird mit einer neuen Version von SteamOS ausgeliefert, einer speziellen Linux-Distribution für Spielegeräte, an der Valve und Collabora seit mehreren Jahren gemeinsam arbeiten. SteamOS 3 basiert auf Arch Linux, einer Rolling-Release-Distribution, die die neueste Mesa-Version für Open-Source-Grafikbeschleunigung enthält und die auf Debian basierende Version SteamOS 2 ablöst, die für das frühere Steam Machine-Projekt verwendet wurde. SteamOS 3 ist noch nicht als eigenständige Distribution verfügbar, soll es aber in Kürze sein.
Ein Handheld-Gerät benötigt ein solides Update-Framework, daher bestand einer der wichtigsten Beiträge von Collabora zu SteamOS 3 darin, nahtlose System-Updates zu implementieren. Mit dem neuen "A/B"-Design gibt es jetzt zwei Betriebssystempartitionen mit zwei verschiedenen Versionen von SteamOS. Bei einem Upgrade wird ein neues Betriebssystem-Image auf die Partition geschrieben, die gerade nicht in Gebrauch ist, bevor das System neu gestartet wird. Ein spezielles Bootloader-Modul wählt dann automatisch das neuere Betriebssystem aus und bootet es. Wenn das Upgrade erfolgreich war, kann man das neue Betriebssystem weiter verwenden, und die vorherige Systempartition wird für das nächste Upgrade eingesetzt. Wenn die aktualisierte Version nicht erfolgreich bootet, fällt der Bootloader automatisch auf die vorherige Systempartition zurück.
Für Ihre Nicht-Gaming-Bedürfnisse ist auf dem Gerät KDE Plasma Desktop vorinstalliert, sodass man das Deck für Desktop-Aufgaben verwenden und vorhandenen Peripheriegeräte über den USB-C-Anschluss nutzen kann.
Bei normaler Nutzung ist die aktive Betriebssystempartition schreibgeschützt, um das Steam Deck so robust wie möglich zu machen. Im Gegensatz zu den meisten Spielekonsolen handelt es sich jedoch um ein vollständig offenes Gerät, das in einen Entwicklermodus umgeschaltet werden kann, in dem die Betriebssystempartition schreib- und lesbar ist und verändert werden kann. Der Paketmanager "pacman" von Arch Linux ist für die Verwendung im Entwicklermodus verfügbar.