flathub / flathub/com.valvesoftware.Steam

Native games crash in scout-on-soldier since client 1788291500 (libshared-library-guard / ${LIB} LD_AUDIT, every binary fails to load libc)

Open
#1,567 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
421
Forks
78
PR merge metrics
No merged PRs in 30d

Description

**Game information**

Northgard (AppID 466560) — native Linux build (Harelang / SDL2). **No Wine, no Proton** (verified: the process chain is `sh → ./linux/hl`; no `wine64`/`proton` appears anywhere in the launch log). Fails 100% of launches since the Sep 1 client update.

**Distribution name and version where applicable**

```text
Bluefin 44.20260901 (Fedora 44, Silverblue-based), glibc 2.43
GPU: NVIDIA GeForce RTX 3070, driver nvidia-610-57-04
```

**Flatpak info**

```text
Flatpak 1.18.0
GL drivers: nvidia-610-57-04, default, host
App: com.valvesoftware.Steam/x86_64/stable (commit 1ea2cc…, installed Mar 27 2026, unchanged since)
```

**Problem description**

Since the **Sep 1, 14:09 Steam client auto-update (build `1788291500`, previously `1785799196`)**, every launch of this native, non-Proton game crashes within ~2 s and exits -1. It was working fine **up to Aug 30, 2026** (playable save files dated Aug 26 / 28 / 30); every launch after Sep 1 dies. **No `dnf`/`rpm` activity, and no glibc/flatpak change, in that window** — the only userland change is the client update.

**Decisive A/B on the same machine, same day, same flatpak:**

- **CS2 (AppID 730), sniper runtime → runs normally** (19:10, loads all its `linuxsteamrt64` libs).
- **Northgard (466560), scout-on-soldier → total failure.**
- Both `soldier` and `sniper` pressure-vessel are the **same version: `0.20260805.0`**; the *working* steamrt is `0.20260728.0`. So this is **not** a PV version or system-wide issue — it is specific to the **nested scout-on-soldier topology**.

**Observed failure (100% reproducible — *every* binary in the sandbox fails to load libc; not just the game):**

```text
steam-runtime-launcher-interface-0: error while loading shared libraries: libc.so.6: cannot open shared object file
** ERROR ** Missing library libc.so.6
** ERROR ** Missing library libm.so.6
** ERROR ** Missing library libpthread.so.0
** ERROR ** Missing library librt.so.1
** ERROR ** Missing library libdl.so.2
** ERROR ** Missing library libcap.so.2
** ERROR ** Missing library libX11.so.6 / libXext.so.6 / libXxf86vm.so.1 / libwayland-client.so.0
sh: error while loading shared libraries: libc.so.6: cannot open shared object file
./linux/hl: error while loading shared libraries: libm.so.6: cannot open shared object file
```

and, immediately before the flood, the distinctive line:

```text
ERROR: ld.so: object '/tmp/pressure-vessel-libs-pfGDHB/${LIB}/libshared-library-guard.so'
cannot be loaded as audit interface: cannot open shared object file; ignored.
```

**Analysis (hypothesis, *not yet tested* here — flagged for maintainers):**

- `${LIB}` is a pressure-vessel arch-substitution token; here it is left **literal/unresolved** in the nested path, so that `LD_AUDIT` module path doesn't exist.
- `libshared-library-guard.so` + `freedesktop-sdk.ld.so.blockedlist` are **flatpak / freedesktop-SDK** components (flatpak-injected `LD_AUDIT`), shipped in the Steam flatpak bundle since Mar 27 — i.e. this mechanism is a **flatpak-specific** topology problem, not a Valve-client-only one.
- The `scout` runtime here is the *legacy* `steam-runtime` (not PV); it resolves its `LD_LIBRARY_PATH` via `steam-runtime-identify-library-abi` and **bundles no libc**, so it depends on the host parent resolving libs. The failure is that this nested chain ends up with no resolvable libc.
- **Known candidate workaround** from the related threads: launch option `LD_AUDIT= %command%` — **untested here**; a maintainer may want to try it. If it fixes this, that confirms the guard/`LD_AUDIT` path is the cause.

**System already ruled out (verified healthy):** disk space, NVIDIA driver, user-namespaces, `bwrap`. The `steamrt`/webhelper path (older PV `0.20260728.0`) runs fine.

**Related threads (to avoid duplicate work):**

- #1512 — the **Wine/Proton-preloader** variant of `SHARED_LIBRARY_GUARD`; this is **native, no Wine**, so likely a *different* mechanism (and why that fix didn't cover it).
- #1392 — native game, but reported as *inconsistent/intermittent*; this is a **total, 100% collapse**.
- #1361 — `LD_AUDIT` / libtcmalloc workaround breaking (same env area).
- Valve `steam-for-linux#12698` — origin of the issue; closed "not planned"; documents the `LD_AUDIT=` clearing workaround.

**Repro steps**

Steam flatpak, Fedora-based, native (non-Proton) game routed through scout-on-soldier → launch after client `1788291500` → dies in `<3 s` with the libc flood + `${LIB}` audit line. A sniper-routed game (CS2) launches fine on the same install.

**Attached log snippet** — `console-linux.txt:26126–26201` (the audit line + `launcher-interface` libc failure + the Missing-library flood). Extract yourself with:

```bash
sed -n '26120,26210p' \
~/.var/app/com.valvesoftware.Steam/.local/share/Steam/logs/console-linux.txt \
> northgard_console-linux.txt
```
[northgard_console-linux.txt](https://github.com/user-attachments/files/31765671/northgard_console-linux.txt)

**Does this issue reproduce with native Steam**

Have not tested. (I've only tested inside the Steam *flatpak*; native / non-flatpak Steam on this machine has not been verified.)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by extracting console-linux.txt lines 26120–26210 and reproducing the native Northgard launch through scout-on-soldier after client build 1788291500. Compare the `${LIB}` LD_AUDIT failure with the documented `LD_AUDIT= %command%` workaround and the working CS2 sniper path. Done means confirming or rejecting the audit-path cause and identifying the affected launch component or a reproducible fix.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, shell
Domain
infrastructure, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.