protonscr

xdg-open profile-lock loop with Brave browser corrupts Steam IPC, forcing instant achievement unlocks across multiple games

steamopen
ValveSoftware/steam-for-linux#13466 · opened 2026-07-30 by CharlesMacDonald96 · updated 2026-07-30 · 0 comments · github
CCharlesMacDonald96 2026-07-30 github

Linux System Information

  • OS: NixOS 26.05 (Yarara) (64 bit)
  • Kernel Version: 6.18.39
  • Desktop Environment / Window Manager: XFCE4 / Xfwm4
  • Display Server: X11 (X.Org Foundation 12101024)
  • Graphics Driver: NVIDIA 580.173.02 (GTX 1060 6GB)
  • Browser: Brave Browser (Chromium-based)
  • Steam Runtime Version: steam-runtime_1.0.20260618.246542
  • Steam Client Version: 1785187029

Description of the Issue

An environmental conflict during an external link handoff (xdg-open) causes an active Chromium-based browser (Brave) to fork multiple locked instances on NixOS. This completely blocks the Steam client's parent process thread, corrupts internal IPC messaging sockets, and puts the Steam client into a state where launching any game instantly triggers and flags all achievements as unlocked.

Steps to Reproduce

  1. Ensure Brave browser is already running on NixOS under XFCE4 / X11.
  2. Inside the Steam client, click an external URL handoff link (specifically tested using a custom Steam Workshop link from a friend to view outside the client).
  3. The URL handoff fails to connect to the existing Brave instance. Instead, it attempts to launch a separate binary instance inside Steam's FHS/runtime environment, triggering a profile conflict (SingletonLock).
  4. Brave throws exactly 6 simultaneous "Something went wrong with your brave profile" window errors, hanging the xdg-open calling thread.
  5. While these error windows are open, launch any game from your library.
  6. Result: The game initializes the Steamworks stats API while Steam's background messaging pipes are completely choked/corrupted by the stuck handoff. The local API returns a fault state that is incorrectly interpreted as a universal "True" flag, immediately flushing a massive waterfall of achievement notifications to the desktop daemon (dbus) all at once.
  7. Launch a second, completely different game. The issue cascades and repeats, proving the memory/IPC corruption is persistent across the client session until a full system reboot kills the dead threads.

Expected Behavior

Steam's background service (steamwebhelper) should cleanly time out or gracefully handle blocked xdg-open calls without letting a localized socket hang corrupt the game-facing Steamworks API memory space.

Additional Notes

A full system reboot completely resolved the issue, clearing the stuck background processes, freeing the locked file descriptors, and returning the Steam client to normal operation.

Computer Information:
Manufacturer: Micro-Star International Co., Ltd.
Model: MPG Z390 GAMING PLUS (MS-7B51)
Form Factor: Desktop
No Touch Input Detected

Processor Information:
CPU Vendor: GenuineIntel
CPU Brand: Intel(R) Core(TM) i5-9600KF CPU @ 3.70GHz
CPU Family: 0x6
CPU Model: 0x9e
CPU Stepping: 0xd
CPU Type: 0x0
Speed: 4600 MHz
6 logical processors
6 physical processors
Hyper-threading: Unsupported
FCMOV: Supported
SSE2: Supported
SSE3: Supported
SSSE3: Supported
SSE4a: Unsupported
SSE41: Supported
SSE42: Supported
AES: Supported
AVX: Supported
AVX2: Supported
AVX512F: Unsupported
AVX512PF: Unsupported
AVX512ER: Unsupported
AVX512CD: Unsupported
AVX512VNNI: Unsupported
SHA: Unsupported
CMPXCHG16B: Supported
LAHF/SAHF: Supported
PrefetchW: Unsupported
BMI1: Supported
BMI2: Supported
F16C: Supported
FMA: Supported

Operating System:
NixOS 26.05 (Yarara) (64 bit)
Kernel Name: Linux
Kernel Version: 6.18.39
X Server Vendor: The X.Org Foundation
X Server Release: 12101024
X Window Manager: Xfwm4
Steam Runtime Version: steam-runtime_1.0.20260618.246542

Client Information:
Version: 1785187029
Browser GPU Acceleration Status: Enabled
Browser Canvas: Enabled
Browser Canvas out-of-process rasterization: Enabled
Browser Direct Rendering Display Compositor: Disabled
Browser Compositing: Enabled
Browser Multiple Raster Threads: Enabled
Browser OpenGL: Enabled
Browser Rasterization: Enabled
Browser Raw Draw: Disabled
Browser Skia Graphite: Disabled
Browser Video Decode: Enabled
Browser Video Encode: Disabled
Browser Vulkan: Disabled
Browser WebGL: Enabled
Browser WebGL2: Enabled
Browser WebGPU: Disabled
Browser WebNN: Disabled

Video Card:
Driver: NVIDIA Corporation NVIDIA GeForce GTX 1060 6GB/PCIe/SSE2
Driver Version: 4.6.0 NVIDIA 580.173.02
OpenGL Version: 4.6
Desktop Color Depth: 24 bits per pixel
Monitor Refresh Rate: 60 Hz
VendorID: 0x10de
DeviceID: 0x1c03
Revision Not Detected
Number of Monitors: 2
Number of Logical Video Cards: 1
Primary Display Resolution: 1920 x 1080
Desktop Resolution: 3840 x 1080
Primary Display Size: 34.65" x 19.29" (39.65" diag), 88.0cm x 49.0cm (100.7cm diag)
Primary Bus: PCI Express 16x
Primary VRAM: 6144 MB

Sound card:
Audio device: USB Mixer

Memory:
RAM: 32032 Mb

VR Hardware:
VR Headset: None detected
No VR configuration with trackers detected
Most number of trackers in a session: 0

Miscellaneous:
UI Language: English
LANG: en_US.UTF-8
Total Hard Disk Space Available: 537578 MB
Largest Free Hard Disk Block: 70793 MB

Storage:
Number of SSDs: 1
SSD sizes: 2000G
Number of HDDs: 0
Number of removable drives: 0

Nothing extracted yet.