Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Non-steam games launched via Proton seem not to inherit steam-runtime's LD_LIBRARY_PATH. #6475

Open
reavertm opened this issue Aug 30, 2019 · 0 comments
Labels
non-Steam application Shortcut added to Steam with the "Add a non-Steam Game..." option Proton Steam client

Comments

@reavertm
Copy link

reavertm commented Aug 30, 2019

Your system information

  • Steam client version (build number or date): Aug 28 2019 at 23:51:11, using Proton 4.11.3
  • Distribution (e.g. Ubuntu): Gentoo Linux
  • Opted into Steam client beta?: Yes
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

Non-steam games launched via Proton seem not to inherit steam-runtime's LD_LIBRARY_PATH (ot at least it looks like this), which prevents many of them from running due to unsatisfied wine libraries runtime link deps (to steam-runtime).

Steps for reproducing this issue:

(example with StarCraft remastered, some other executable did not fail in my case, I guess it's down to which .so's are provided by host system, in my case StartCraft installer failed on libldap_r*, your mileage my vary)

  1. Download StarCraft-Setup.exe from Blizzard's web page, add it as non-steam game and select Steam Play to force running it via Proton/wine.
  2. Enable PROTON_DUMP_DEBUG_COMMANDS=1 and PROTON_LOG=1
  3. Lunch it from Steam gui client. Nothing will happen but interesting things can be found in /tmp/proton_${USER} and ~/steam-*.log:

9355.206:0016:0019:err:module:load_so_dll failed to load .so lib "/home/maciek/.local/share/Steam/SteamApps/common/Proton 4.11/dist/bin/../lib64/wine/winebus.sys.so": libudev.so.0: cannot open shared object file: No such file or directory 9355.206:0016:0019:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\WineBus": c0000142 9355.207:000c:000d:fixme:service:scmdatabase_autostart_services Auto-start service L"WineBus" failed to start: 1114

Futhermore, generated /tmp/proton_${USER}/run and other scripts, lack LD_LIBRARY_PATH propagation ability that is required to run those scripts via steam-runtime:

LD_LIBRARY_PATH="/home/maciek/.local/share/Steam/SteamApps/common/Proton 4.11/dist/lib64/:/home/maciek/.local/share/Steam/SteamApps/common/Proton 4.11/dist/lib/::"

After manually fixing it to append/prepend instead of replace:
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/maciek/.local/share/Steam/SteamApps/common/Proton 4.11/dist/lib64/:/home/maciek/.local/share/Steam/SteamApps/common/Proton 4.11/dist/lib/::" and running 'run' via steam-runtime's run.sh manually, StarCraft installer actually works well and completes fine.

There are other issues still (Target" in imported non-steam game's Properties is cut on first whitespace if file path contains spaces like - Program Files, and appId propagation from game installer to game executable has to be done manually) but I guess those will warrant separate ticket.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
non-Steam application Shortcut added to Steam with the "Add a non-Steam Game..." option Proton Steam client
Projects
None yet
Development

No branches or pull requests

2 participants