Running Raspberry Pi OS on a Steam Deck: My 20-Year Linux Experiment | Brav

Running Raspberry Pi OS on a Steam Deck: My 20-Year Linux Experiment


Table of Contents

TL;DR

  • I installed the 64-bit Raspberry Pi OS (Desktop) on my Steam Deck and upgraded it from Bullseye to Trixie.
  • I solved the stubborn portrait-mode screen rotation and got a dual-monitor setup via the official USB-C dock.
  • I fixed GUI crashes after the Bookworm upgrade and learned how to keep a 32-bit system working on the Deck’s x86_64 hardware.
  • I ran X-Moto, connected a Bose SoundLink via Bluetooth, and used raspi-config to toggle X11 ↔ Wayland.
  • My step-by-step guide will help you experiment with Raspberry Pi OS on any handheld gaming device.

Why This Matters

As a 20-year Linux hobbyist, I love pushing the limits of what hardware can do. The Steam Deck is a 16 GB, 2.8 GHz AMD APU handheld that ships with SteamOS (based on Debian Bullseye). It’s a perfect playground for Linux experiments because it runs on the same x86_64 architecture that powers my desktop PCs, yet it’s small enough to carry around. However, installing Raspberry Pi OS on it is not a plug-and-play affair. I encountered screen-rotation glitches, USB-C docking quirks, and a GUI that vanished after upgrading to Debian Trixie. This article is a personal war story that turns those pain points into reusable mental models and actionable steps.

Core Concepts

1. Raspberry Pi OS vs. Raspberry Pi Desktop

Raspberry Pi OS was originally built for ARM-based Pis, but the Raspberry Pi Desktop image is a 64-bit port that runs on any x86_64 machine. It ships with a Debian Trixie base, a GNOME-like desktop, and a full set of Raspberry Pi-specific tools. The same image works on my Steam Deck without the need for a separate kernel.

2. Debian Releases on the Deck

ParameterBullseyeBookwormTrixie
Release Year202120232025
Architecture Supportamd64, arm64, armhf, i386amd64, arm64, armhf, i386amd64, arm64, armhf, i386
Known IssuesNone on a fresh installUpgrades can break packagesGUI may crash on x86_64
Typical UseStable base OSLTS with newer featuresLatest features, but fragile

The table above is adapted from the official Debian release notes Debian Bullseye Release (2024), Debian Bookworm Release (2024), and Debian Trixie Release (2026). It shows why moving straight from Bullseye to Bookworm can leave you with broken packages, and why the Trixie upgrade on the Deck can drop the desktop environment.

3. Display Server: X11 vs. Wayland

The Deck runs a minimal X11 stack by default, but you can enable Wayland via raspi-config. The two have different capabilities when it comes to rotation and multi-monitor setups. X11’s xrandr is more battle-tested on the Deck, whereas Wayland is newer and may need manual configuration.

4. USB-C Docking

Valve’s official dock (sold separately) provides DisplayPort 1.4, HDMI 2.0, and a USB-C power-delivery passthrough. It also includes three USB-A 3.1 Gen 1 ports and Gigabit Ethernet. Dual-monitor support is advertised via MST, but power delivery can be insufficient when both monitors draw high current Valve Steam Deck Dock Specs (2024).

5. Audio

The Deck’s built-in speakers are fine for quick tests, but I prefer a Bluetooth speaker for better sound. I paired a Bose SoundLink and verified the connection via bluetoothctl.

How to Apply It

Below is a step-by-step walkthrough that covers installation, upgrades, screen rotation, docking, audio, and a demo game.

1. Prepare the Install Media

  1. Download the 64-bit Raspberry Pi Desktop image from the official Raspberry Pi OS site Raspberry Pi OS (2025). The file is about 1.9 GB.
  2. Write the image to a USB-SD card or a USB-C flash drive using dd or a GUI like Balena Etcher.

2. Boot the Deck with the New OS

  1. Turn off the Deck.
  2. Insert the bootable media.
  3. Power on while holding the Volume-Down button to enter the boot menu.
  4. Choose the USB-C drive and let the Deck boot into Raspberry Pi OS.

If everything looks right, you’ll see the Raspberry Pi logo and a desktop prompt.

3. Verify the Architecture with Neofetch

Run:

neofetch

You should see output similar to:

OS: Debian 12 (Bookworm) x86_64
Kernel: 6.12-generic
CPU: AMD Ryzen (Zen 2) 8-core 2.8 GHz
RAM: 16 GB

The x86_64 tag confirms the Deck’s architecture Neofetch GitHub (2024).

4. Install raspi-config (if not already present)

sudo apt update && sudo apt install raspi-config -y

The Raspberry Pi tools come from the same repositories as on a Pi, but they work on the Deck as well.

5. Toggle Between X11 and Wayland

sudo raspi-config

Navigate to System Options → Desktop / Display Manager → choose X11 or Wayland. Reboot when prompted.

6. Fix Screen Rotation

The Deck’s screen defaults to portrait. To force landscape, add a rotation command to your session start-up.

  1. Open a terminal.

  2. Edit ~/.xinitrc (for X11) or create ~/.config/systemd/user/display-manager.service (for Wayland).

  3. Add the following line for X11:

    xrandr --output eDP-1 --rotate left
    
  4. Save and reboot.

The screen now stays in landscape after each boot. If you switch to Wayland, use the xrandr command inside ~/.config/wayland-session.

7. Set Up the USB-C Dock

  1. Plug the Deck into the official dock.
  2. Connect an HDMI monitor and a DisplayPort monitor.
  3. In the desktop, open Settings → Displays. You should see two screens.
  4. If one screen flickers, reduce the refresh rate to 60 Hz or enable MST manually via xrandr.

Note that the dock’s power delivery may not supply enough current for both monitors when the Deck is playing a graphically intense game. If you notice the Deck shutting down or the screen going black, try a dock with a higher wattage PSU.

8. Upgrade from Bullseye to Bookworm

  1. Open a terminal.

  2. Run:

    sudo apt full-upgrade
    
  3. If you see broken packages, fix them:

    sudo apt --fix-broken-install
    
  4. Remove unnecessary packages:

    sudo apt autoremove
    
  5. Reboot.

The upgrade process may leave you with a slightly slower boot, but the OS remains stable. Be aware that the Bookworm release Debian Bookworm Release (2024) still supports Debian Bullseye’s 32-bit packages, so you can keep a 32-bit system if needed.

9. Upgrade to Debian Trixie (Optional)

  1. Download the Debian Trixie ISO and write it to a USB.

  2. Boot the Deck from the ISO.

  3. Run sudo apt full-upgrade.

  4. If the GUI disappears, install the GNOME session:

    sudo apt install gnome-session
    
  5. Reboot. The desktop should reappear.

The Trixie upgrade often breaks the GUI on x86_64 hardware because the default session has moved to Wayland and some drivers are not compiled for the Deck’s GPU Debian Trixie Release (2026).

10. Install X-Moto and Play

  1. Install the game:

    sudo apt install x-moto
    
  2. Run x-moto from the terminal.

  3. You should see the 2-D motocross interface; the game runs smoothly on the Deck.

The game’s source is hosted on GitHub; its description can be found on Wikipedia X-Moto Wikipedia (2024).

  1. Turn on the speaker.
  2. In the Deck’s Settings → Bluetooth, pair the device.
  3. Once connected, run pavucontrol to set it as the default sink.
  4. Test with any audio app.

The pairing works fine, confirming that Bluetooth audio is supported on the Deck Bose SoundLink (2024).

Pitfalls & Edge Cases

IssueCauseFixNotes
Screen reverts to portrait after rebootConfiguration not savedAdd rotation command to ~/.xinitrc or Wayland serviceWorks on both display servers
Dual-monitor flickerMST handshake errorSet same refresh rate or disable MSTSome monitors require 60 Hz
GUI disappears after Trixie upgradeWayland incompatibilityInstall gnome-session or revert to X11Requires manual re-install
apt fails after Bookworm upgradeBroken dependenciesRun sudo apt –fix-broken-install and sudo apt autoremove1796 packages upgraded in my case
32-bit Pi OS not working on x86_64Architecture mismatchRe-install 64-bit image32-bit images are for ARM only
USB-C dock power insufficientHigh current drawUse dock with 45 W PSU or separate power supplyThe dock’s USB-C PD is 45 W

These edge cases are common when mixing Raspberry Pi OS with a non-ARM handheld. The key is to keep configuration files under version control (e.g., in a Git repo) so you can roll back.

Quick FAQ

Q1. How do I set the screen to landscape? A1. Run xrandr –output eDP-1 –rotate left in a startup script.

Q2. Why does the screen revert to portrait after reboot? A2. The rotation command was not saved. Add it to ~/.xinitrc or Wayland session.

Q3. Why does the second monitor fail? A3. The dock’s MST handshake sometimes fails. Try a lower refresh rate or a different monitor.

Q4. What causes the GUI to vanish after Trixie? A4. The new release defaults to Wayland, which isn’t fully supported on the Deck’s GPU. Re-install gnome-session or switch back to X11.

Q5. How to upgrade from a 32-bit Pi OS to a 64-bit version? A5. Download the 64-bit Raspberry Pi Desktop image and flash a fresh install.

Q6. Are there limitations running Pi OS on the Deck? A6. ARM-specific drivers (e.g., for the Pi camera) are missing, but most desktop packages work.

Q7. Can I charge the Deck through the dock while playing? A7. Yes, the dock’s USB-C PD passes through 45 W, but heavy use may deplete the battery.

Conclusion

Running Raspberry Pi OS on a Steam Deck is a rewarding experiment that turns a handheld into a portable desktop. By following the steps above, you can:

  • Keep a stable Debian Bullseye base while experimenting with newer releases.
  • Force landscape mode reliably.
  • Use dual monitors via the official dock.
  • Run open-source games like X-Moto.
  • Pair Bluetooth speakers for a better audio experience.

If you’re a Linux hobbyist, Raspberry Pi enthusiast, or a handheld gamer, this setup gives you the best of both worlds. For system administrators and developers, the ability to test x86_64 builds on a handheld platform opens up a new playground.

Next Steps: Build a Git repo for your dotfiles, test with other Debian derivatives (Kali, Ubuntu), or try installing a different distribution that supports ARM and x86_64 simultaneously.


References

Last updated: March 26, 2026

Recommended Articles

Graphene OS: The Ultimate Privacy & Security Upgrade for Your Pixel | Brav

Graphene OS: The Ultimate Privacy & Security Upgrade for Your Pixel

Discover how Graphene OS transforms a Pixel into a privacy-first device: locked bootloader, auto-reboot, sandboxed Google Play, and more. Secure your phone today.
Systems That Let Your Business Run Without You: A Practical Guide for Small Business Owners | Brav

Systems That Let Your Business Run Without You: A Practical Guide for Small Business Owners

Learn how to build a system that runs your business without you, with step-by-step guidance on SOPs, delegation, automation, and brand building.
I Built a Raspberry Pi Wi-Fi Packet Capture Device with PoE, Multi-Adapter Support, and a Web UI | Brav

I Built a Raspberry Pi Wi-Fi Packet Capture Device with PoE, Multi-Adapter Support, and a Web UI

Learn how to turn a Raspberry Pi into a headless Wi-Fi packet capture device with PoE, multi-adapter support, a Flask web UI, and VPN access. Step-by-step guide.
Authentic Root Beer at Home: Steam-Distilled Saffron Secrets | Brav

Authentic Root Beer at Home: Steam-Distilled Saffron Secrets

Discover how to brew authentic homemade root beer using steam-distilled saffron from sassafras root. Step-by-step guide, safety tips, and flavor tweaks for DIY soda lovers.
The Vending Bench: Training AI to Run Real Businesses | Brav

The Vending Bench: Training AI to Run Real Businesses

Learn how the Vending Bench and Project Vend expose AI's strengths and pitfalls in running real businesses, with actionable guidance for researchers and leaders.
Mastering agents.md: Build Long-Running AI Sessions That Never Forget | Brav

Mastering agents.md: Build Long-Running AI Sessions That Never Forget

Learn how to design lightweight root agents.md files and use JIT context indexing to keep AI agent sessions long, token-efficient, and on-track.