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

Mangohud, Gamescope, Mangoapp won't work. (FLATPAK) #1148

Closed
HelpMePleasepls opened this issue Aug 6, 2024 · 6 comments
Closed

Mangohud, Gamescope, Mangoapp won't work. (FLATPAK) #1148

HelpMePleasepls opened this issue Aug 6, 2024 · 6 comments
Labels
bug Something isn't working Flatpak Issues related to SteamTinkerLaunch Flatpak GameScope Issues related to using GameScope with SteamTinkerLaunch MangoHud Issues related to MangoHud/MangoApp Third-Party Limitation Limitations and/or bugs caused by third-party software.

Comments

@HelpMePleasepls
Copy link

System Information

  • SteamTinkerLaunch version: steamtinkerlaunch-v12.12
  • Distribution: OpenSUSE Tumbleweed
  • Installation Method: Flatpak

Issue Description

Mangoapp and gamescope output a notification that they're not found by the OS, even though they're installed (not with flatpak).
Mangohud doesn't output a notification and it is not displayed. It has been configured with GOverlay.

Logs

The log that is asked for in "/dev/shm/steamtinkerlaunch/steamtinkerlaunch.log" is outdated by almost an hour, and it won't update regardless if I launch a game or not, so I'll submit the next best thing which is the log located in ~/.var/app/com.valvesoftware.Steam/config/steamtinkerlaunch/logs/steamtinkerlaunch

@HelpMePleasepls HelpMePleasepls added the bug Something isn't working label Aug 6, 2024
@sonic2kk
Copy link
Owner

sonic2kk commented Aug 6, 2024

Aren't there limitations with Flatpaks being unable to use these custom programs? See also #1137 and the upstream issues linked in this comment: #1137 (comment)

Flatpak Steam is not official nor endorsed by Valve and so may have many issues like this. GameScope in particular seems like it simply will not work when part of Steam Flatpak, when using SteamTinkerLaunch or not.

If Steam Flatpak can find these programs without SteamTinkerLaunch, i.e. if gamescope -- %command% works from Steam without SteamTinkerLaunch, then you might want to report this to the SteamTinkerLaunch Flatpak repo for investigation. This could be a Flatpak configuration issue (either some extra permissions are needed to be added on the STL Flatpak, Steam Flatpak, or otherwise) or code changes might be needed here, although I would guess not as if STL can't find it that means the Flatpak environment can't access the binaries to my understanding. In any case, the SteamTinkerLaunch Flatpak repo might provide you with more answers.

Also, configuration with GOverlay may cause issues. Any third-party configurations are likely to break SteamTinkerLaunch integration as a general rule of thumb.

@sonic2kk sonic2kk added Flatpak Issues related to SteamTinkerLaunch Flatpak GameScope Issues related to using GameScope with SteamTinkerLaunch MangoHud Issues related to MangoHud/MangoApp Third-Party Limitation Limitations and/or bugs caused by third-party software. labels Aug 6, 2024
@HelpMePleasepls
Copy link
Author

Yeah it appears something is wrong with my installation then, as it will not work even with the launch option. Sorry for the trouble. Thank you for the detailed response (and adding labels to my report)!

@HelpMePleasepls HelpMePleasepls closed this as not planned Won't fix, can't repro, duplicate, stale Aug 6, 2024
@sonic2kk
Copy link
Owner

sonic2kk commented Aug 6, 2024

No problem! For what it's worth, I don't think anything is wrong with your installation. This appears to be a general problem with Flatpak Steam that has no workaround, you cannot use GameScope at least with Steam Flatpak at present to my knowledge.

@HanPrower
Copy link
Contributor

HanPrower commented Aug 28, 2024

This would probably be better in the wiki, but I'm just spewing info I've collected and not trying to be precise, so sorry @sonic2kk ^.^;;

Just FYI it is possible to get gamescope to work in Flatpak. Contrary to what Flatpak Proton-GE states, you can even use any Proton you like due to STL being able to ignore the defined Steam Linux Runtime.

Install Flatpak gamescope:
flatpak install org.freedesktop.Platform.VulkanLayer.gamescope
If you get options make sure you pick the one that matches the Steam runtime version (usually the latest one - currently 23.08).

For ease, but not necessary, install Flatpak Proton-GE:
flatpak install com.valvesoftware.Steam.CompatibilityTool.Proton-GE

If Steam is running, close it, and re-open it to make sure everything's sane.

Run a game with STL and enter the GAME MENU.
Either:

  • Set the Proton version to GE-Proton9-11 (Flatpak) (the 9-11 may be different in the future if GE gets any more updates) and, optionally, deselect "Use Steam Linux Runtime" to stop the error about the tool not having a defined SLR.
  • Or set the Proton version to whatever you like, but also make sure you check "Ignore Native Linux Steam Linux Runtime from Compatibility Tool" (this emulates that Flatpak GE-Proton doesn't specify this in its toolmanifest.vdf).

Steam Linux Runtime is slightly less important in the Flatpak because Flatpak is already a container that creates a specific environment for all games, which is what SLR does anyway. Although, I guess, if a specific SLR has a specific setting for a specific version of Proton disabling the SLR may break it.

The reason gamescope for the most part didn't work in Flatpak before seems to be because SLR made a container inside the Flatpak container and gamescope got confused.

Flatpak GE-Proton only just figured that disabling the SLR was the fix on 16th July, 2024:
flathub/com.valvesoftware.Steam.CompatibilityTool.Proton-GE@1609067

I will state however that I am having weird FPS issues I'm trying to iron out. These seem to be general gamescope issues, but some of the accepted fixes seem less willing to work in Flatpak.

There also seems to be an issue that STL can't get the PID of the game properly so spams the log and struggles to die. Taking a look at that soon. Maybe I'll come up with a fix...

@sonic2kk
Copy link
Owner

sonic2kk commented Aug 28, 2024

So disabling the Steam Linux Runtime should fix the issue? It looks like Flatpak GE-Proton removes the runtime from the compatibility tool manifest, so I guess SteamTinkerLaunch wouldn't use any SLR in that case since there wouldn't be one for it to look for?

I wonder if we should disable the Steam Linux Runtime by default for games when we're running in Flatpak, or force disable it. That could be problematic though, since Proton versions are built against a specific Steam Linux Runtime. Some native games also require specific versions, for example Counter-Strike 2 requires the Steam Linux Runtime 3.0 (Sniper), and Deadlock is likely to require the same once its native build is out (I assume all native Source 2 games going forward will).

Maybe it is best to keep all the SteamTinkerLaunch logic as-is, and let the Flatpak versions of tools ignore the Steam Linux Runtime by not specifying it.


Thanks for the useful write-up, I'll make a note of this on the wiki and link to this comment.

EDIT: Added this as a note to the wiki under "Caveats": https://github.com/sonic2kk/steamtinkerlaunch/wiki/Steam-Flatpak#caveats

@HanPrower
Copy link
Contributor

HanPrower commented Aug 29, 2024

Indeed. I wouldn't change any of the logic for Flatpak. There should be as little "special" logic as possible.

Maybe at most if INFLATPAK is true, and USEGAMESCOPE is true just put a WARN in the log "that there may be issues, you may need to disable the SLR, but if you do things may break". But a bit more helpful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Flatpak Issues related to SteamTinkerLaunch Flatpak GameScope Issues related to using GameScope with SteamTinkerLaunch MangoHud Issues related to MangoHud/MangoApp Third-Party Limitation Limitations and/or bugs caused by third-party software.
Projects
None yet
Development

No branches or pull requests

3 participants