How to Install Steam on Debian 13, 12 and 11

Install Steam on Debian 13, 12 and 11 using APT, Valve’s official repository or Flatpak. Includes Proton setup for Windows games.

Last updatedAuthorJoshua JamesRead time10 minGuide typeDebianDiscussion9 comments

Proton is the reason many Debian desktops can run a large part of a Windows-heavy Steam library without dual-booting. To install Steam on Debian cleanly, choose one package source first; APT-based installs also need 32-bit library support.

The Debian repository path now differs by release: Debian 13 (trixie) and Debian 12 (bookworm) use steam-installer from contrib, while Debian 11 (bullseye) uses steam:i386 from non-free. Valve’s APT repository works across those releases when you want Valve’s current launcher package, and Flatpak remains available for users who already prefer Flathub desktop apps.

Install Steam on Debian

Prepare Debian for Steam

Update Debian Before Installing Steam

Refresh APT first, then review any pending system upgrades before installing Steam’s graphics and runtime dependencies:

sudo apt update
sudo apt upgrade

Commands that change packages or system sources use sudo. If your account cannot run sudo commands yet, follow How to Add a User to Sudoers on Debian first.

Enable i386 Architecture for APT Steam Packages

The Debian repository and Valve repository methods need 32-bit runtime libraries on 64-bit Debian systems. Enable Debian multiarch before you install an APT Steam package. Flatpak users normally do not need to change Debian’s APT architectures for the install itself.

sudo dpkg --add-architecture i386
sudo apt update

Confirm that i386 is registered:

dpkg --print-foreign-architectures
i386

If this command returns no output, Steam package installs will fail or launch with missing 32-bit library errors.

Steam can install without proprietary graphics drivers, but gaming performance depends on working OpenGL and Vulkan drivers. NVIDIA users who need the proprietary stack can use How to Install NVIDIA Drivers on Debian. AMD and Intel systems normally use Debian’s Mesa packages.

Choose a Steam Installation Method on Debian

Use one main install method. The Debian package and Valve package both install a launcher that downloads the current Steam client during first run, while Flatpak installs the Flathub-packaged Steam app and runtime.

MethodSourceDebian ReleasesPackageBest Fit
Debian RepositoryDebian packagesDebian 13, 12, and 11steam-installer on 13/12, steam:i386 on 11Readers who prefer Debian-packaged dependencies and normal APT upgrades
Valve RepositoryValve APT repositoryDebian 13, 12, and 11steam-launcherReaders who want Valve’s current launcher package through APT
FlatpakFlathub community packageDebian desktops with Flatpak and Flathub configuredcom.valvesoftware.SteamExisting Flatpak users who accept community packaging and broad Steam permissions

Do not mix APT sources for Steam. Keep the Debian repository method separate from Valve’s repository, and do not combine Valve’s manual DEB822 source with an older extrepo Steam source. Duplicate sources are the main cause of Steam-related APT errors on Debian.

Valve’s Steam download page also offers a direct .deb launcher. Prefer the APT repository method for repeatable updates, an explicit signing key, and cleaner source removal.

The commands assume a 64-bit Debian desktop. They enable i386 as a companion architecture for Steam’s 32-bit runtime libraries, not as a separate 32-bit host install path. Flathub currently publishes the Steam Flatpak for x86_64.

Option 1: Install Steam from Debian Repository

The Debian repository method is the cleanest starting point when the required repository component is enabled. Debian 13 and 12 need contrib for steam-installer. Debian 11 needs non-free for steam:i386. The companion steam-devices package adds udev rules for Steam Input, controllers, VR devices, and Remote Play hardware access.

If the package is missing, enable the required Debian component first. Use How to Enable Contrib and Non-Free on Debian, then return here and rerun sudo apt update.

Install Steam on Debian 13 and Debian 12

On Debian 13 and Debian 12, install steam-installer with the device rules package:

sudo apt install steam-installer steam-devices

Verify the package source:

apt-cache policy steam-installer steam-devices

Relevant output includes the contrib source for steam-installer. Version numbers and the release placeholder change by Debian release:

steam-installer:
  Installed: 1:1.0.0.xx~ds-x
  Candidate: 1:1.0.0.xx~ds-x
  Version table:
 *** 1:1.0.0.xx~ds-x 500
        500 http://deb.debian.org/debian [your-release]/contrib amd64 Packages
        100 /var/lib/dpkg/status

Install Steam on Debian 11

Debian 11 does not use the steam-installer package name. Install the older Debian steam:i386 package from non-free instead:

sudo apt install steam:i386 steam-devices

Confirm the Debian 11 package source:

apt-cache policy steam:i386 steam-devices

Relevant output includes the non-free source for steam:i386. Version numbers can change as Debian updates the package:

steam:i386:
  Installed: 1.0.0.xx-1
  Candidate: 1.0.0.xx-1
  Version table:
 *** 1.0.0.xx-1 500
        500 http://deb.debian.org/debian bullseye/non-free i386 Packages
        100 /var/lib/dpkg/status

For Debian 13 and 12, avoid starting with sudo apt install steam. That package name exists as an i386 transitional package, while steam-installer is the clearer package name for the desktop client on current Debian releases.

Option 2: Install Steam from Valve Repository on Debian

Valve’s APT repository uses the codename-neutral stable suite. Keep that value as written; do not replace it with trixie, bookworm, or bullseye. The DEB822 source file keeps the key and source easy to audit and remove.

Install Valve Repository Tools

Install HTTPS certificate support and curl before downloading Valve’s repository key. The curl command in Linux downloads the key file in the next step:

sudo apt install ca-certificates curl

Add the Steam GPG Key

Download Valve’s current binary OpenPGP keyring to the system keyrings directory:

sudo curl -fsSLo /usr/share/keyrings/steam.gpg https://repo.steampowered.com/steam/archive/stable/steam.gpg

Add the Steam DEB822 Source

Create the APT source file for Valve’s stable Steam repository:

printf '%s\n' \
'Types: deb' \
'URIs: https://repo.steampowered.com/steam/' \
'Suites: stable' \
'Components: steam' \
'Architectures: amd64 i386' \
'Signed-By: /usr/share/keyrings/steam.gpg' \
| sudo tee /etc/apt/sources.list.d/steam.sources > /dev/null

Refresh APT and Confirm the Steam Candidate

Refresh package metadata, then confirm steam-launcher comes from Valve’s repository:

sudo apt update
apt-cache policy steam-launcher

Relevant output includes Valve’s stable/steam package source. The launcher version changes when Valve publishes updates:

steam-launcher:
  Installed: (none)
  Candidate: 1:1.0.0.xx
  Version table:
     1:1.0.0.xx 500
        500 https://repo.steampowered.com/steam stable/steam amd64 Packages

Install Steam Launcher from Valve

Install Valve’s launcher package. APT pulls the required 32-bit libraries from Debian and the launcher from Valve:

sudo apt install steam-launcher

Remove Package-Created Legacy Steam Sources

The current steam-launcher package installs legacy steam-stable.list and steam-beta.list files as package conffiles. Because this method uses steam.sources, remove the legacy files after installation to avoid duplicate-source warnings:

sudo rm -f /etc/apt/sources.list.d/steam-stable.list /etc/apt/sources.list.d/steam-beta.list
sudo apt update

If a future steam-launcher upgrade asks whether to restore those package conffiles, keep the local deletion and leave steam.sources as the active repository definition.

Option 3: Install Steam via Flatpak on Debian

The Flathub package is useful when you already run desktop apps through Flatpak. Flathub currently labels Steam as unverified, potentially unsafe, and a community package that is not officially supported by Valve. Choose the Debian or Valve APT method when you want dependencies handled by Debian packages or a launcher package from Valve’s repository.

Flatpak installation requires Flatpak and the Flathub remote first. If your Debian system is not configured for Flatpak yet, follow How to Install Flatpak on Debian, then return here.

Install the Steam Flatpak from Flathub:

sudo flatpak install flathub com.valvesoftware.Steam

Verify the app ID is installed. The grep command in Linux filters the list to the exact Steam Flatpak ID:

flatpak list --app --columns=application | grep -Fx com.valvesoftware.Steam
com.valvesoftware.Steam

Launch the Flatpak build from a terminal with:

flatpak run com.valvesoftware.Steam

Launch Steam on Debian

Steam completes its per-user setup the first time you open it. The launcher downloads the current client runtime, then asks you to sign in or create a Steam account.

Launch Steam from Terminal on Debian

For Debian repository and Valve repository installs, start Steam with:

steam

For the Flatpak method, use the Flatpak app ID instead:

flatpak run com.valvesoftware.Steam

Launch Steam from Debian Applications Menu

You can also open Steam from your desktop environment’s application menu:

  1. Open the Activities, Applications, or launcher menu for your desktop environment.
  2. Search for Steam.
  3. Select the Steam icon to start the client.

Complete Steam First-time Setup

During the first launch, Steam downloads its runtime environment and updates the client. Let this finish before installing games or changing compatibility settings.

After the update completes, sign in with your Steam account. The client then opens the Store and Library views normally.

Enable Proton and Steam Play for Windows Games on Debian

To play Windows games on Debian, open Steam > Settings > Compatibility, enable Steam Play for supported titles, and choose the Proton version you want Steam to use for other titles. Windows games then appear in your library beside native Linux games.

Proton support varies by game, anti-cheat system, launcher, and graphics driver. Check ProtonDB before buying a Windows-only title specifically for Debian.

SteamCMD is separate from the desktop Steam client. It is the steamcmd:i386 package used mostly for dedicated game servers, so do not use SteamCMD queries or package names when your goal is the graphical Steam client.

Manage Steam on Debian

Update Steam on Debian

Steam updates the user-facing client when it launches. The package manager still updates the launcher, udev rules, and supporting package metadata.

For Debian 13 and Debian 12 repository installs, update the Debian packages with:

sudo apt update
sudo apt install --only-upgrade steam-installer steam-devices

For Debian 11 repository installs, update the older package name instead:

sudo apt update
sudo apt install --only-upgrade steam:i386 steam-devices

For Valve repository installs, update steam-launcher through APT:

sudo apt update
sudo apt install --only-upgrade steam-launcher

If duplicate Steam source warnings return after a Valve package upgrade, remove the package-created legacy .list files again and keep steam.sources.

For Flatpak installs, update the Flatpak wrapper and runtimes with:

sudo flatpak update com.valvesoftware.Steam

Remove Steam from Debian

Remove the package that matches your installation method. Keeping the commands separate prevents a Debian 11 package name from being confused with the Debian 13 and 12 package name.

For Debian 13 and Debian 12 repository installs:

sudo apt remove steam-installer steam-devices

For Debian 11 repository installs:

sudo apt remove steam:i386 steam-devices

For Valve repository installs, purge steam-launcher so package-owned legacy source-list conffiles are removed where present:

sudo apt purge steam-launcher

Then remove Valve repository files if you used the Valve APT method or previously used extrepo for Steam:

sudo rm -f /etc/apt/sources.list.d/steam.sources /etc/apt/sources.list.d/steam-stable.list /etc/apt/sources.list.d/steam-beta.list /etc/apt/sources.list.d/extrepo_steam.sources
sudo rm -f /usr/share/keyrings/steam.gpg /var/lib/extrepo/keys/steam.asc
sudo apt update

Preview orphaned dependencies after the package is gone:

sudo apt autoremove --dry-run

If the preview only lists packages you no longer need, run the cleanup interactively:

sudo apt autoremove

Check that no Steam Debian package remains installed. This command should return no ii lines when package removal is complete:

dpkg -l steam-launcher steam-installer steam steam:i386 steam-devices 2>/dev/null | grep '^ii' || true

Remove Steam Flatpak

For Flatpak installations, remove the Steam app first:

sudo flatpak uninstall com.valvesoftware.Steam

Verify the Flatpak app ID no longer appears:

flatpak list --app --columns=application | grep -Fx com.valvesoftware.Steam || echo "NOT_INSTALLED"
NOT_INSTALLED

Then remove unused runtimes only after reviewing the list Flatpak shows:

sudo flatpak uninstall --unused

Remove Steam User Data and Games

Steam user data can include downloaded games, screenshots, save data, controller profiles, and local configuration. Keep these directories if you plan to reinstall Steam later.

The next command permanently deletes Steam data for the current user. Back up any saves or screenshots you need before running it.

List the Steam data directories present for the current user before deleting them:

for path in "$HOME/.steam" "$HOME/.local/share/Steam" "$HOME/.var/app/com.valvesoftware.Steam"; do
    [ -e "$path" ] && printf '%s\n' "$path"
done
rm -rf ~/.steam ~/.local/share/Steam ~/.var/app/com.valvesoftware.Steam

Troubleshoot Steam on Debian

Most Steam failures on Debian come from repository overlap, disabled package components, missing 32-bit libraries, or graphics drivers that are not exposing OpenGL and Vulkan correctly.

Check Which Steam Method Is Installed

Start by checking which package or Flatpak method is present:

apt-cache policy steam-launcher steam-installer steam:i386
flatpak list --app --columns=application | grep -Fx com.valvesoftware.Steam

steam-launcher points to Valve’s repository, steam-installer points to the Debian 13 or Debian 12 repository path, steam:i386 points to the Debian 11 repository path, and com.valvesoftware.Steam confirms the Flatpak install.

Conflicting values set for option Signed-By

This error usually means an older extrepo Steam source overlaps with the manual Valve source:

Error: Conflicting values set for option Signed-By regarding source http://repo.steampowered.com/steam/ stable: /var/lib/extrepo/keys/steam.asc != /usr/share/keyrings/steam.gpg
Error: The list of sources could not be read.

Keep the DEB822 Valve source and remove the extrepo Steam source:

sudo extrepo disable steam 2>/dev/null || true
sudo rm -f /etc/apt/sources.list.d/extrepo_steam.sources /var/lib/extrepo/keys/steam.asc
sudo apt update

For broader background on extrepo itself, see How to Manage Third-Party APT Repos on Debian with extrepo. For Steam, the manual Valve repository avoids extrepo’s separate key path and duplicate-source risk.

steam-installer or steam Has No Installation Candidate

A missing candidate usually means the required component is not enabled, or the package name does not match your Debian release.

Package steam-installer is not available, but is referred to by another package.
E: Package 'steam-installer' has no installation candidate

Check all relevant package names before changing methods:

apt-cache policy steam-installer steam:i386 steam-devices
  • On Debian 13 and Debian 12, use steam-installer after enabling contrib.
  • On Debian 11, use steam:i386 after enabling non-free.
  • If both package names still show Candidate: (none), revisit your Debian component configuration before adding another Steam source.

Duplicate Steam Repository Warnings During apt update

If you installed steam-launcher from Valve after creating steam.sources, APT may warn that the same repository is configured in both DEB822 and legacy list files:

W: Target Packages (steam/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/steam-stable.list:1 and /etc/apt/sources.list.d/steam.sources

Remove the package-created legacy files and keep steam.sources:

sudo rm -f /etc/apt/sources.list.d/steam-stable.list /etc/apt/sources.list.d/steam-beta.list
sudo apt update

Steam Input Devices Warning Appears

If Steam reports missing device rules, controller support, Steam Input, Remote Play, or VR hardware access may not work correctly:

steam input devices udev rules don't seem to be installed

Install Debian’s device rules package, then reconnect the controller or restart Steam:

sudo apt install steam-devices

On Debian 13 and Debian 12, steam-devices is available from the main repository. On Debian 11, it comes from non-free, so the component must be enabled.

Steam Fails to Launch or Shows a Black Screen

Graphics driver issues are the usual cause when Steam opens to a black window or closes immediately. First, confirm Debian can see the GPU:

lspci | grep -Ei 'vga|3d|display'

Example output may show integrated and discrete GPUs:

00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 630
01:00.0 VGA compatible controller: NVIDIA Corporation GA106 [GeForce RTX 3060]

For NVIDIA systems, confirm the proprietary driver is active:

nvidia-smi

Working output starts with an NVIDIA-SMI status table. If the command is missing or reports that it cannot communicate with the driver, install or repair the NVIDIA driver using How to Install NVIDIA Drivers on Debian.

For AMD and Intel systems, check the OpenGL renderer. Install mesa-utils first if glxinfo is missing:

sudo apt install mesa-utils
glxinfo | grep 'OpenGL renderer'
OpenGL renderer string: Mesa Intel(R) UHD Graphics 630 (CFL GT2)

Missing Steam 32-bit Libraries on Debian

Errors mentioning missing 32-bit libraries usually mean i386 was not enabled before Steam was installed, or the matching 32-bit graphics libraries are missing:

You are missing the following 32-bit libraries, and Steam may not run:
libGL.so.1
libdrm.so.2

APT dependency errors can name the same missing setup through steam-libs-i386. The exact version string varies by Debian release:

steam-installer : Depends: steam-libs-i386 (= 1:1.0.0.xx~ds-x) but it is not installable

Both errors point to the same checks: i386 must be enabled, the required Debian component must be active for your release, and your source file must not restrict package indexes to amd64 only.

Confirm i386 is active:

dpkg --print-foreign-architectures
i386

If i386 does not appear, add it, refresh APT, and reinstall the Steam package that matches your method:

sudo dpkg --add-architecture i386
sudo apt update

For Debian 13 or Debian 12 repository installs, reinstall the Debian packages:

sudo apt install --reinstall steam-installer steam-devices

For Valve repository installs, reinstall steam-launcher:

sudo apt install --reinstall steam-launcher

For Debian 11 repository installs, reinstall the i386 Steam package and device rules:

sudo apt install --reinstall steam:i386 steam-devices

For NVIDIA systems, missing 32-bit OpenGL libraries can still trigger libGL.so.1 errors even when i386 is enabled. Install the matching 32-bit NVIDIA driver libraries from Debian’s NVIDIA driver stack:

sudo apt install nvidia-driver-libs:i386

Reboot after changing NVIDIA driver libraries so the 64-bit and 32-bit driver stack loads consistently.

Games Fail When the Steam Library Is Under /usr

Steam’s pressure-vessel runtime reserves parts of /usr for its own container environment. If a game library lives under a path such as /usr/games/steam/, games can fail without a clear launcher error. Check ~/.local/share/Steam/logs/console-linux.txt for Not sharing path STEAM_COMPAT_DATA_PATH paired with "/usr" is reserved by the container framework.

Move the library to a normal user-owned location outside /usr:

  1. Open Steam > Settings > Storage.
  2. Add a library folder under your home directory or another mounted game drive.
  3. Move affected games from Properties > Installed Files > Move Install Folder.

For the Flatpak package, a library on another drive may also need an explicit filesystem permission. Replace the path with your actual Steam library location. The override is intentionally user-scoped because Flatpak stores per-user permissions separately from the system install:

flatpak override --user --filesystem=/path/to/Steam/Library com.valvesoftware.Steam

Conclusion

Steam on Debian is ready through Debian’s packages, Valve’s APT repository, or the Flathub wrapper, with i386 and source cleanup handled for the APT paths. For the next pass on gaming performance, tune proprietary graphics with NVIDIA drivers on Debian, try lower-latency kernel options from Liquorix on Debian, or handle non-Steam Windows apps through Wine on Debian.

Share this guide

Help another Linux user troubleshoot faster

Share this guide with someone troubleshooting Linux systems or saving it for later.

Follow LinuxCapable

Want more LinuxCapable guides in Google?

Add LinuxCapable as a preferred source so Google can show more of our fresh Linux tutorials in Top Stories and From your sources when relevant.

Add LinuxCapable as a preferred source on Google
Search LinuxCapable

Need another guide?

Search LinuxCapable for package installs, commands, troubleshooting, and follow-up guides related to what you just read.

Found this guide useful?

Support LinuxCapable to keep tutorials free and up to date.

Buy me a coffeeBuy me a coffee

9 thoughts on “How to Install Steam on Debian 13, 12 and 11”

  1. Just installed Debian 13.2 on a 64-bit Intel machine. Installed Nvidia driver for RTX-3050 from Debian repo. Tried to install Steam per this web page. Got the following error when I got to the step:

    sudo apt update

    Error: conflicting values set for option Signed-By regarding source
    http://repo.steampowered.com/ steam
    stable: /var/lib/extrepo/steam/keys.asc != /usr/share/keyrings/steam.gpg

    The apt update command went ahead and downloaded and installed a bunch of stuff. Then I tried to start ‘steam’ and it wanted to update a lot more stuff, but at the end of these updates I got another error message:

    Error: you are missing the following 32bit libraries, and steam may not run:
    libGL.so.1

    and a few lines down from that we see:

    dlmopen steamui.so failed: libGL.so.1: wrong ELF class: ELFCLASS64

    and ‘steam’ fails to start.

    Reply
    • Eventually I fixed this step of the process by renaming (effectively deleting) this file:
      /etc/apt/sources.list.d/extrepo_steam.sources
      to:
      /etc/apt/sources.list.d/extrepo_steam.sources.X

      I then did ‘sudo apt update’ and it completed without error.

      However, I then downloaded a game (“Age Of Mythlogy”) and tried to run it, but got a new set of errors. I will make a separate post about this.

      Reply
      • Sorry for missing your first message, Steve. Good troubleshooting on both issues. The Signed-By conflict looks like it happened because both the extrepo method and manual Steam repository method were used on your system. Extrepo stores the GPG key at /var/lib/extrepo/steam/keys.asc, while the manual method uses /usr/share/keyrings/steam.gpg. If that was the case, your fix of removing extrepo_steam.sources was exactly right. Can you confirm whether both methods were used? That would help verify the cause.

        For the missing 32-bit libGL.so.1 error, this happens when NVIDIA’s 32-bit OpenGL libraries are not installed alongside the 64-bit driver. On Debian 13 with an RTX 3050, install the 32-bit driver libraries meta-package:

        sudo apt install nvidia-driver-libs:i386

        This package pulls in libgl1-nvidia-glvnd-glx:i386 and all other 32-bit GL dependencies Steam needs. After installation, reboot and try launching Steam again. The “wrong ELF class: ELFCLASS64” error confirms Steam found only the 64-bit library when it needed the 32-bit version. Looking forward to your follow-up post about the Age of Mythology errors.

        Reply
        • Hi Joshua – sorry for the long delay. Looks like you have removed the instructions for using the Debian ‘extrepo’ method of getting Steam from the official Steam repos? Also, just FYI, the text near the top mentions “Ubuntu” several times when I think you meant “Debian”. But – I dunno – can Debian “apt” install packages from Ubuntu repos? (maybe  – Ubuntu is based on Debian, isn’t it?)

          I do not remember using the “manual method” to install Steam via the Steam repos. I think I did a clean install. I have been using “Clonezilla” quite a bit, to image my Debian disks, so I can easily go back a step or two if something does not work. Thus I have an image of the system right after completing the initial installation of Debian and applying all the updates. I think I used that to start from.

          I am currently going through this exact same procedure on a new machine which I just built, (and which should handle most any modern game) so I will make certain I do *not* even attempt the manual method, and I will try out the modified method I present here and see if I wind up with those same three files needing to be deleted…
          ——————–
          I previously used that ‘extrepo’ method successfully after making one small change to the procedure on your page. On my initial attempt, I followed the procedure on the page down to the point:

          $ sudo apt install extrepo -y
          $ sudo extrepo enable steam

          and then, to check for success I did:

          $ apt-cache policy steam-launcher
          E: Conflicting values set for option Signed-By
             regarding source http://repo.steampowered.com/steam/
             stable: /var/lib/extrepo/keys/steam.asc != /usr/share/keyrings/steam.gpg
          E: The list of sources could not be read.

          To fix this I effectively deleted the following file by renaming it:

          /etc/apt/sources.list.d/extrepo_steam.sources.X

          Then the “apt-cache” check was successful:

          apt-cache policy steam-launcher
          steam-launcher:
            Installed: 1:1.0.0.85
            Candidate: 1:1.0.0.85
            Version table:
          *** 1:1.0.0.85 500
                  500 https://repo.steampowered.com/steam stable/steam amd64 Packages
                  100 /var/lib/dpkg/status
          N: Ignoring file ‘extrepo_steam.sources.X’ in directory ‘/etc/apt/sources.list.d/’
          as it has an invalid filename extension

          Next I installed the i386 Nvidia libraries:

          sudo apt install nvidia-driver-libs:i386

          which completed without error. Then, per instructions here on your page, I disabled two more files under /etc/apt/sources.list.d/:

          /etc/apt/sources.list.d$ ls -Fla
          total 20
          drwxr-xr-x 2 root root 4096 Jan 23 14:46 ./
          drwxr-xr-x 9 root root 4096 Jan 23 13:46 ../
          -rw-r–r– 1 root root  163 Jan 23 14:01 extrepo_steam.sources.X
          -rw-r–r– 1 root root  296 Sep 30 08:27 steam-beta.list.X
          -rw-r–r– 1 root root  228 Sep 30 08:27 steam-stable.list.X

          After this I was able to start ‘steam’ which then downloaded 400+MB of updates
          and installed them without error. I was then able to login to Steam and authenticate
          as usual and I then saw my Library contents as expected.

          At this point I was sure everything would work, so I downloaded “Age of Mythology – Extended Edition” to my new Steam installation on Debian. To my dismay, AOM *still* would not start up! I then looked at some logs, did some searches, and discovered to my aghast amazement that you cannot save your Linux Steam games on any path that contains the character string “/usr”. (!) Guess where I had mine stored? Long story but on my system I thought putting my Steam library under “/usr/games” would be “The Right Thing To Do” – but alas! In log file

          ~/.local/share/Steam/logs/console-linux.txt

          I found errors like this:

          [2026-01-23 21:40:51] Couldn’t write /usr/.steam_exec_test.sh: Permission denied
          [2026-01-23 21:40:51] Couldn’t write /debian_data/.steam_exec_test.sh: Permission denied

          and like this:

          [2026-01-23 22:36:50] pressure-vessel-wrap[29528]: W: Not sharing path
          STEAM_COMPAT_DATA_PATH=”/usr/games/steam/steamapps/compatdata/266840″
          with container because “/usr” is reserved by the container framework

          So I moved my Steam library from “/usr/games” to under my “/home” directory, and then, finally AOM started up and actually worked! I chose AOM for this test because I thought it had the best chance of actually running on an 18 year old motherboard with 8GB of RAM and an RTX-3050 graphics card with 2GB VRAM. Other more modern titles like “Stellaris” or “Manor Lords” will download and install without error, but they will not start up. Sadly, there are no error or even log messages that I can find to indicate if the problem is system RAM or video RAM or something else. I will perhaps find out if it is “something else” because I am now going to install Steam on another Debian machine I just built which should be able to run any modern game.

          I like the Debian ‘extrepo’ method because it allows me to have the latest version of Steam from the official Valve repos without having to handle GPG keys and such. Hopefully with these mods (and CHECK ME on these!) you can put back the former “Option 2: Install via Extrepo” procedure on this page.

          Thanks again for your very valuable help! This is the best “Linux procedures” web site I have found!

          Reply
          • Steve, thank you for everything in this follow-up. First, my apologies about the confusion with extrepo. During a recent update I accidentally replaced the Debian article content with the Ubuntu guide, which explains both the missing extrepo instructions and the “Ubuntu” references you spotted. That has been corrected, and extrepo is now documented as Option 2 in the guide.

            The Signed-By conflict you encountered is exactly what the article now warns about. When both extrepo and the manual Steam repository method exist on the same system, they configure different GPG key paths for the same repository. Your fix of renaming extrepo_steam.sources was the right approach, and I have added a prominent warning blockquote advising readers to choose only one installation method.

            Your discovery about the /usr/ path restriction is excellent debugging. Steam’s pressure-vessel container framework reserves the /usr hierarchy for its own runtime libraries, so any Steam library path containing /usr (like /usr/games/steam/) will fail silently when launching games. This is a documented Steam limitation, though not widely publicized. Moving your library to /home or another non-reserved path was the correct solution.

            Regarding your proposed extrepo workflow modifications: the approach you describe should work, but the three files you disabled (extrepo_steam.sources, steam-beta.list, steam-stable.list) suggest both methods were indeed used at some point on that system. The .list files are created by Steam’s installer during first launch, not by extrepo. For a completely clean extrepo-only installation, those files should not appear initially. If you are starting fresh on the new machine, the guide’s Option 2 (extrepo) should work without needing to disable any files afterward.

            Looking forward to hearing how the new build handles modern titles. Thanks again for the detailed feedback and the kind words about the site.

  2. Joshua,

    In “Option 1: Install Steam with the Default Repository”

    To install the steam-installer package, the user needs to have the *contrib* repository in his/her sources.list file. I am mentionning this because I will most likely be installing steam onto a friend’s computer.

    More info:
    https://packages.debian.org/bookworm/steam-installer

    Gérard

    Reply
Before commenting, please review our Comments Policy.
Formatting tips for your comment

You can use basic HTML to format your comment. Useful tags currently allowed in published comments:

You type Result
<code>command</code> command
<strong>bold</strong> bold
<em>italic</em> italic
<blockquote>quote</blockquote> quote block

Got a Question or Feedback?

We read and reply to every comment - let us know how we can help or improve this guide.

Verify before posting: