SteamOS works on Desktop!

Except if Valve don’t subsidize lower console prices with game sales revenue, no one will buy it because the price will be unattractive compared to the competition. Why do you think the PlayStation 5 has the price it has? They make the profit margin to pay for the price on the games. Same for Nintendo. And people already complain about the price of both.

Remember–Steam and Valve is competing with Playstation and Nintendo with this product.

Odds are, given the economic situation…a big old price “adjustment” on Steam is coming.

I could confirm that SteamOS works fine on Framework Desktop.

Important notices:

  1. The SteamOS installer will wipe the disk nvme0n1. There is no easy way to specify a disk manually. If you are installing SteamOS on the second NVMe disk, physically remove the first NVMe disk (which typically has your main OS), or you risk accidentally wiping it. After SteamOS is installed, it’s safe to insert the first disk back.

  2. After installation and the first reboot, the initial setup flow runs (set time zone, configure internet connection, etc.). In my case, the wired connection using the built-in Ethernet can’t reach the internet. But you can connect to Wi-Fi or use any common USB dongle with an Ethernet adapter. After SteamOS connects to the internet, it will download updates, and the built-in Ethernet will work properly.

  3. Framework Desktop, by default, runs in “balanced” power mode. To automatically switch it to “performance“ (which makes more sense for plugged-in game console-type usage), I have added a simple systemd service that runs after the system starts to set power mode to “performance“ and GPU performance to “high“ (so it will keep 2900MHz freq all the time).

    • Launch SteamOS, “Power” → “Switch to Desktop Mode”.
    • Open “Konsole“.
    • You may need to set a password for the deck user once (type passwd and input some password).
    • Then copy and paste into Konsole:
    sudo tee /etc/systemd/system/performance-mode.service << ‘EOF’
    [Unit]
    Description=Set performance mode on boot
    After=local-fs.target systemd-modules-load.service
    Wants=systemd-modules-load.service
    
    [Service]
    Type=oneshot
    RemainAfterExit=yes
    ExecStartPre=/bin/sleep 10
    
    ExecStart=/bin/bash -c ‘echo performance > /sys/firmware/acpi/platform_profile’
    ExecStart=/bin/bash -c ‘echo performance | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor > /dev/null’
    ExecStart=/bin/bash -c ‘echo high > /sys/class/drm/card0/device/power_dpm_force_performance_level’
    
    ExecStop=/bin/bash -c ‘echo balanced > /sys/firmware/acpi/platform_profile’
    ExecStop=/bin/bash -c ‘echo powersave | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor > /dev/null’
    ExecStop=/bin/bash -c ‘echo auto > /sys/class/drm/card0/device/power_dpm_force_performance_level’
    
    [Install]
    WantedBy=multi-user.target
    EOF
    
    sudo systemctl daemon-reload
    sudo systemctl restart performance-mode.service
    systemctl status performance-mode.service
    

Direct link to SteamOS image: https://steamdeck-images.steamos.cloud/steamdeck/20251027.1000/steamdeck-repair-main-20251027.1000-3.8.0.img.zip

1 Like