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 shortcuts that use proton do not update dependent compatibility tools when starting #7664

Open
Treverr opened this issue Feb 19, 2021 · 27 comments
Assignees
Labels
non-Steam application Shortcut added to Steam with the "Add a non-Steam Game..." option Proton Steam client

Comments

@Treverr
Copy link

Treverr commented Feb 19, 2021

Your system information

  • Steam client version (build number or date): Built 2/12/2021 23:22:26
  • Distribution (e.g. Ubuntu): Ubuntu 18.04
  • Opted into Steam client beta?: [Yes/No] No
  • Have you checked for system updates?: [Yes/No] Yes

Please describe your issue in as much detail as possible:

When adding a non-steam game it fails to launch.

Steps for reproducing this issue:

  1. Add TS4.exe as a non-steam game
  2. Attempt to launch
  3. Failed to launch

error.log:

(steam:23529): Gtk-WARNING **: 16:01:08.472: gtk_disable_setlocale() must be called before gtk_init()

(steam:23529): GLib-CRITICAL **: 16:01:08.472: unquote_string_inplace: assertion 'err == NULL || *err == NULL' failed

(steam:23529): Gtk-WARNING **: 16:01:08.554: gtk_disable_setlocale() must be called before gtk_init()

(steam:23529): GLib-CRITICAL **: 16:01:08.554: unquote_string_inplace: assertion 'err == NULL || *err == NULL' failed
Installing breakpad exception handler for appid(steam)/version(1613176728)
[0218/160114.609695:ERROR:frame_sink_video_capturer_impl.cc(206)] Invalid resolutions constraints: 0x0 must not be greater than 0x0; and also within media::limits.
GameAction [AppID 3407705798, ActionID 2] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 3407705798, ActionID 2] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 3407705798, ActionID 2] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 3407705798, ActionID 2] : LaunchApp continues with user response "CreatingProcess"
src/clientdll/compatmanager.cpp (740) : Assertion Failed: CCompatManager::GetCompatibilityToolCommandLineInternal: tool 0 "" not found for appID -887261498
src/clientdll/compatmanager.cpp (740) : Assertion Failed: CCompatManager::GetCompatibilityToolCommandLineInternal: tool 0 "" not found for appID -887261498
GameAction [AppID 3407705798, ActionID 2] : LaunchApp failed with AppError_51 with ""
GameAction [AppID 3407705798, ActionID 2] : LaunchApp changed task to Failed with ""

(steam:23529): Gtk-WARNING **: 16:03:27.670: gtk_disable_setlocale() must be called before gtk_init()

(steam:23529): GLib-CRITICAL **: 16:03:27.671: unquote_string_inplace: assertion 'err == NULL || *err == NULL' failed

(steam:23529): Gtk-WARNING **: 16:03:27.802: gtk_disable_setlocale() must be called before gtk_init()

(steam:23529): GLib-CRITICAL **: 16:03:27.802: unquote_string_inplace: assertion 'err == NULL || *err == NULL' failed

Crash logs:
assert_20210218163323_28.dmp.zip

@Treverr
Copy link
Author

Treverr commented Feb 21, 2021

FYI: This happens on 20.04 as well clean install. This game plays fine with Wine / Lutris though..

@TTimo
Copy link
Collaborator

TTimo commented Feb 22, 2021

Did you edit the properties for the game and configure it to use some version of Proton? The latest/default one should be fine, but you don't mention having done that step.

@Treverr
Copy link
Author

Treverr commented Feb 22, 2021

I have tried it both ways. I set it to each of them in 5.x and experimental and no luck. Still failed to open. Same errors, though.

@TTimo
Copy link
Collaborator

TTimo commented Feb 23, 2021

Do you have steam games that use Proton, do they work? Let's make sure that part is working fine before looking at non steam games.

@Treverr
Copy link
Author

Treverr commented Feb 25, 2021

I do have 1, Airport CEO, it wasn't working but it seems to work ok now after I recently did a fresh install.

@TTimo TTimo changed the title Assertion Failed: CCompatManager::GetCompatibilityToolCommandLineInternal "The Sims 4" fails to launch when added as a non steam game Feb 25, 2021
@TTimo
Copy link
Collaborator

TTimo commented Feb 25, 2021

Sims 4 is available on the Steam store. I'm guessing you have a non Steam version of it, and you can't switch to using the Steam version instead?

@kisak-valve
Copy link
Member

Hello @Treverr, have you configured the non-steam game to use a compatibility tool in the per-game properties or in the global Steam settings? If you have changed the per-game settings, what is it set to? (Right click on the non-steam game in Steam's Library view -> Properties -> Compatibility on the sidebar.)

@Treverr
Copy link
Author

Treverr commented Feb 25, 2021

@TTimo - correct I have a non steam version of it

@kisak-valve Yes, I have. I have configured it both in the global settings and then also tried to set it on the game specifically. I have tried experimental and then all the 5.x releases, and they all do the same thing.

@TTimo
Copy link
Collaborator

TTimo commented Feb 26, 2021

@Treverr please provide pressure vessel logs (https://github.com/ValveSoftware/steam-runtime/blob/master/doc/reporting-steamlinuxruntime-bugs.md#essential-information) and proton logs (https://github.com/ValveSoftware/Proton#runtime-config-options) if you still experience problems.

Based on you having at least some proton steam games working, I suspect this is going to be a Proton issue rather than pressure vessel, possibly specific to TS4 .. we'll see.

@Treverr
Copy link
Author

Treverr commented Mar 1, 2021

I enabled PRESSURE_VESSEL_VERBOSE=1 PROTON_LOG=1 %command% but I get no logs out from those options. Am I doing something wrong?

@Treverr
Copy link
Author

Treverr commented Mar 1, 2021

I tried running it via the "older" method doing

PRESSURE_VESSEL_VERBOSE=1 steam 2>&1 | tee ~/pressure-vessel.log

And all it gave me was:

Running Steam on ubuntu 20.04 64-bit
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Steam client's requirements are satisfied
/home/trever/.steam/debian-installation/ubuntu12_32/steam -nominidumps -nobreakpad

@kisak-valve
Copy link
Member

Hello @Treverr, did you close Steam before running it from a terminal? That looks like it saw that Steam is already running and quit.

@Treverr
Copy link
Author

Treverr commented Mar 1, 2021

Sorry that was my mistake, it wasn't completely closed.

Logs are:

STEAM_RUNTIME_HEAVY: ./steam-runtime-heavy
[2021-03-01 15:25:43] Startup - updater built Feb 12 2021 23:21:33
[2021-03-01 15:25:44] Using the following download hosts for Public, Realm steamglobal
[2021-03-01 15:25:44] 1. https://cdn.cloudflare.steamstatic.com, /client/, Realm 'steamglobal', weight was 100, source = 'update_hosts_cached.vdf'
[2021-03-01 15:25:44] 2. https://cdn.akamai.steamstatic.com, /client/, Realm 'steamglobal', weight was 100, source = 'update_hosts_cached.vdf'
[2021-03-01 15:25:44] 3. http://media.steampowered.com, /client/, Realm 'steamglobal', weight was 1, source = 'baked in'
[2021-03-01 15:25:44] Verifying installation...
[2021-03-01 15:25:44] Verification complete

@kisak-valve
Copy link
Member

Is the distro-modified Steam package intercepting stderr and putting it somewhere like ~/.steam/error.log?

@Treverr
Copy link
Author

Treverr commented Mar 1, 2021

Not seeing ~/.steam/error.log file here. But I do have dumps in /tmp/dumps I ran it again got a little more but still nothing that seems super useful to me:

trever@server:~$ cat pressure-vessel.log 
Running Steam on ubuntu 20.04 64-bit
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Steam client's requirements are satisfied
/home/trever/.steam/debian-installation/ubuntu12_32/steam -nominidumps -nobreakpad
STEAM_RUNTIME_HEAVY: ./steam-runtime-heavy
[2021-03-01 15:29:07] Startup - updater built Feb 12 2021 23:21:33
Looks like steam didn't shutdown cleanly, scheduling immediate update check
[2021-03-01 15:29:07] Using the following download hosts for Public, Realm steamglobal
[2021-03-01 15:29:07] 1. https://cdn.akamai.steamstatic.com, /client/, Realm 'steamglobal', weight was 100, source = 'update_hosts_cached.vdf'
[2021-03-01 15:29:07] 2. https://cdn.cloudflare.steamstatic.com, /client/, Realm 'steamglobal', weight was 100, source = 'update_hosts_cached.vdf'
[2021-03-01 15:29:07] 3. http://media.steampowered.com, /client/, Realm 'steamglobal', weight was 1, source = 'baked in'
[2021-03-01 15:29:07] Checking for update on startup
[2021-03-01 15:29:07] Checking for available updates...
[2021-03-01 15:29:07] Downloading manifest: https://cdn.akamai.steamstatic.com/client/steam_client_ubuntu12
[2021-03-01 15:29:08] Download skipped: /client/steam_client_ubuntu12 version 1613176728, installed version 1613176728, downloaded version 0
[2021-03-01 15:29:08] Nothing to do
[2021-03-01 15:29:08] Verifying installation...
[2021-03-01 15:29:08] Performing checksum verification of executable files
[2021-03-01 15:29:08] Verification complete

There are no proton logs outputting to my home dir either, just that pressure one. Would the dumps be helpful?

@Treverr
Copy link
Author

Treverr commented Mar 9, 2021

Hello. Any ideas on what the next step might be?

@kisak-valve
Copy link
Member

Shortcut launch failed (non-steam game)

Issue transferred from #7772.
@pseregiet posted on 2021-04-29T11:11:32:

Your system information

  • Steam client version (build number or date): Apr 12 2021 at 18:51:43
  • Distribution (e.g. Ubuntu): Arch
  • Opted into Steam client beta?: No
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

I play few games outside of steam with proton. I know this might not be a very common use-case, but hey, it works. At least it did until today. For no apparent reason some of my shortcuts (i.e "Add a non-steam game to library") stopped working. I get an error message "Steam - Shortcut launch failed. Failed to launch Name Of The Game". I was using steam beta (must have opted-in way back when because I didn't even remember that). Tried regular Steam, still the same problem. Tried to create another shortcut, still the same problem. Interestingly enough, another shortcut for a different game works just fine. Here's what I see in the terminal when I press Play on such a shortcut:

GameAction [AppID 2532115102, ActionID 9] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 2532115102, ActionID 9] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 2532115102, ActionID 9] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 2532115102, ActionID 9] : LaunchApp continues with user response "CreatingProcess"
src/clientdll/compatmanager.cpp (740) : Assertion Failed: CCompatManager::GetCompatibilityToolCommandLineInternal: tool 0 "" not found for appID -1762852194
src/clientdll/compatmanager.cpp (740) : Assertion Failed: CCompatManager::GetCompatibilityToolCommandLineInternal: tool 0 "" not found for appID -1762852194
GameAction [AppID 2532115102, ActionID 9] : LaunchApp failed with AppError_51 with ""
GameAction [AppID 2532115102, ActionID 9] : LaunchApp changed task to Failed with ""

Negative appID seems strange, doesn't it ? Looking at the compatdata directory I see that the failing game got an appID 2332010280. At first I thought it must be a problem with an int overflow, but the other game that doesn't fail to launch has an even bigger ID...

Steps for reproducing this issue:

  1. Add non-steam game to your library
  2. Try to run it
  3. Get this error

EDIT: I figured out a "fix". If you go to the Compatibility tab for the affected shortcut and uncheck "force a specific version" and then try to launch the game, it won't give you this error. Although the game won't launch either. Then you can go back, select the proton version you want and the game works again.

@kisak-valve kisak-valve changed the title "The Sims 4" fails to launch when added as a non steam game Proton non-steam game fails with CCompatManager::GetCompatibilityToolCommandLineInternal: tool 0 "" not found Apr 29, 2021
@TTimo TTimo self-assigned this May 7, 2021
@TTimo
Copy link
Collaborator

TTimo commented May 11, 2021

This happens because non-steam shortcuts do not support dependencies on compatibility tools, so the shortcuts are being started without any dependency checks and then fail.

The steam client will provide more detailed error information when this and similar situations happen moving forward.

Until the steam client supports dependencies for non-steam shortcuts, a workaround is to start a steam game that uses steamplay configured with the same proton version as your non-steam shortcut, or to manually install the needed compatibility tools ("Proton 6.3" and "SteamLinuxRuntime - soldier" for instance).

@TTimo TTimo changed the title Proton non-steam game fails with CCompatManager::GetCompatibilityToolCommandLineInternal: tool 0 "" not found non-steam shortcuts that use proton do not update dependent compatibility tools when starting May 11, 2021
@IanTrudel
Copy link

I'm also having this issue. None of the non-steam games are launching now. The last time I remember it was working was around 5 months ago. Running either non-steam Windows games with Proton or Linux games would work anymore.

@PacaPop
Copy link

PacaPop commented Dec 18, 2021

Same issue here. Can't launch any non-steam game. Ubuntu 20.04.

@sh1sh1n11
Copy link

This started happening to me today. The non-steam windows games were playing fine through Proton. Then I tried installing the Epic Games Launcher. At first it created an AppID and everything in the .local/share/steam/steamapps/compatdata folder, it launched just fine also. Then when I quit it and tried to re-launch it, it failed. So I tried to remove the app, including the proton prefix associated with the specific appid in the compatdata folder. That is when everything stopped working. Including the previously working non-steam windows games.

@ghost
Copy link

ghost commented Mar 13, 2022

Just got this issue today, how do I fix this?

@moll
Copy link

moll commented Apr 2, 2022

I'd like to add that I'm seeing the same behavior on non-Proton shortcuts with the Mar 31, 2022 Steam Beta build. Took a random Linux executable from /usr/bin offered by "Add a Game" (Evince, in this case) and upon hitting "Play" it gets stuck at "Updating Document Viewer", showing "Ready to launch" and a checkbox next to#SteamUI_JoinDialog_LaunchGameReady.

If it's relevant, "Clearing Download Cache" from Steam's settings had no effect.

@moll
Copy link

moll commented Apr 2, 2022

I managed to track down the issue of not being able to launch any non-Steam program, incl. native binaries from /usr/bin down to missing Proton v5.13 in my case. I've no idea why v5.13 was relevant in launching a generic Linux binary and as far as I can tell, of the two Proton-using games I had installed, neither used Proton v5.13.

I found out about Proton v5.13 being the issue from ~/.local/share/Steam/logs/content_log.txt printing out the following as I was launching native Linux binaries:

[2022-04-02 20:09:10] Library folder "" is not writable (Disk write failure).
[2022-04-02 20:09:10] Failed installing AppID 1420170 (Disk write failure)

Why Steam attempted and failed to write to some library with a blank path is beyond me. Manually installing Proton v5.13 worked fine, as did launching and installing Steam games.

@craggles17
Copy link

I discovered in a reddit thread that someone else's steam was throwing the error because it was trying to find a different version of proton that wasn't installed. My fix was to install all versions of proton. I then discovered after that my default steam play proton was set to proton 7 vs experimental (which is what I had for the shortcut to launch.

tl;dr try downloading all proton available versions

@Aszuul
Copy link

Aszuul commented Dec 17, 2022

I just ran into this as well and was able to resolve it by installing Steam Linux Runtime - Soldier via terminal.
steam steam://install/1391110
I found the missing compatibility tool by reviewing this log ~/.steam/root/logs/compat_log.txt

@IanTrudel
Copy link

I just ran into this as well and was able to resolve it by installing Steam Linux Runtime - Soldier via terminal. steam steam://install/1391110 I found the missing compatibility tool by reviewing this log ~/.steam/root/logs/compat_log.txt

No cake for me. The log did not yield any helpful information. Deleted the Steam Linux Soldier Runtime and verified the files, and then restarted the Steam client. The interesting thing is that the overlay is available when starting a game, alt-tab is working but not screenshots, and then it dies off and become unavailable altogether.

@kisak-valve kisak-valve added the non-Steam application Shortcut added to Steam with the "Add a non-Steam Game..." option label Jan 26, 2023
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

9 participants