Skip to content

fix: add ~/.steam/debian-installation/ to Steam path detection#134

Open
fernandomema wants to merge 1 commit into
Selectively11:masterfrom
fernandomema:fix/debian-installation-steam-path
Open

fix: add ~/.steam/debian-installation/ to Steam path detection#134
fernandomema wants to merge 1 commit into
Selectively11:masterfrom
fernandomema:fix/debian-installation-steam-path

Conversation

@fernandomema

Copy link
Copy Markdown

Problem

DetectSteamPath() in src/platform/linux/cloud_intercept.cpp currently searches these directories (in order):

  1. ~/.local/share/Steam/
  2. ~/.var/app/com.valvesoftware.Steam/.local/share/Steam/
  3. ~/.steam/steam/

On Debian/Ubuntu systems (and derivatives like Linux Mint, Pop!_OS, etc.), the Steam package installs to ~/.steam/debian-installation/ by default. This path is not in the detection list.

When the path is not found, LoadAccountIdFromLoginUsers() fails to open loginusers.vdf, leaving accountId at 0. Every cloud hook then checks:

uint32_t accountId = CloudIntercept::GetAccountId();
if (accountId == 0) {
    return origFn(...);  // falls through to Steam's own cloud
}

This effectively disables CloudRedirect for all namespace apps — cloud RPCs pass straight through to Steam servers, which return Upload Access Denied for apps that the user doesn't own.

Fix

Add ~/.steam/debian-installation/ as a fallback between the Flatpak path and ~/.steam/steam/. The path is only used when the directory exists, so no change in behavior for other distros.

The detection order becomes:

  1. ~/.local/share/Steam/ (XDG default)
  2. ~/.var/app/com.valvesoftware.Steam/.local/share/Steam/ (Flatpak)
  3. ~/.steam/debian-installation/ (Debian/Ubuntu package)
  4. ~/.steam/steam/ (manual/other)

Testing

Confirmed on a Debian-based system where ~/.steam/debian-installation/ is the active Steam directory. After applying this fix, accountId bootstraps correctly from loginusers.vdf and CloudRedirect intercepts cloud RPCs as expected.

DetectSteamPath() currently searches:
  1. ~/.local/share/Steam/
  2. ~/.var/app/com.valvesoftware.Steam/.local/share/Steam/
  3. ~/.steam/steam/

On Debian/Ubuntu systems, Steam installs to ~/.steam/debian-installation/
by default. When this path is missing, accountId fails to bootstrap from
loginusers.vdf (returns 0), which causes every cloud hook to fall through
to the original Steam function — effectively disabling CloudRedirect for
all namespace apps.

Add ~/.steam/debian-installation/ as a fallback between the Flatpak path
and ~/.steam/steam/, and move the hardcoded default below all known
locations.
@fernandomema fernandomema force-pushed the fix/debian-installation-steam-path branch from 5dad27c to 2251593 Compare July 10, 2026 17:19
@Selectively11

Copy link
Copy Markdown
Owner

Oops. Thanks, will review/merge/release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants