PhilipK / BoilR

Synchronize games from other platforms into your Steam library
Apache License 2.0
1.4k stars 40 forks source link

Importing from Flatpak Lutris to Flatpak Steam does not use flatpak-spawn #324

Open ghost opened 1 year ago

ghost commented 1 year ago

Describe the bug When adding Flatpak Lutris games to Flatpak Steam it does not uses flatpak-spawn.

To Reproduce Steps to reproduce the behavior:

  1. Have the Flatpak versions of Lutris, Steam and BoilR
  2. Add a game to Lutris
  3. Open BoilR, go to Settings, under Lutris and have the options "Import from Lutris" and "Flatpak version" checked.
  4. Import the game to Steam
  5. Open Steam, select the imported game properties
  6. Check that TARGET is set to flatpak

Expected behavior TARGET should be flatpak-spawn, launch options should start with --host flatpak run....

Screenshots Captura de tela de 2023-01-09 11-22-26 Captura de tela de 2023-01-09 11-22-05 Captura de tela de 2023-01-09 11-22-45

Desktop (please complete the following information):

Additional context I left the "Steam location" field empty as it detects correctly, but it might be because of a workaround I did for Lutris to detect Steam games, basically there's a symlink on ~/.steam pointing to the Flatpak directory. I guess the solution here would be detecting if Steam is a Flatpak and then adding the checks for flatpak-spawn to lutris_game.rs, but I wonder if this symlink would misguide to think that is a regular Steam installation. Also I tried removing BoilR permission to ~/.steam but this issue still happens.

PhilipK commented 1 year ago

Thanks for reporting this! If ~./steam is symlinked, do you have any suggestion for how to spot that steam is running in a flatpak?

ghost commented 1 year ago

I wonder if there's a way to get the absolute path of the auto discovered Steam location. My thought would be to check if the location is inside ~/.var/app/com.valvesoftware.Steam/ since only Flatpak uses this directory, right?

And maybe checking for Flatpak first and ~/.steam last would help with the workaround. I wonder how many people had to do this workaround, but because BoilR still automatically finds the Steam location when I remove permission to ~/.steam, I could just do that in my setup.

Or just a checkbox on the settings saying that Steam is a Flatpak.

david0178418 commented 1 year ago

While the automated solution is being found, is there a workaround that can be done to manually fix the settings? At the moment, the game runs when launched from lutris (via gui or flatpak command), but not when I attempt to launch from steam. I'm still a bit unfamiliar with some of the details of flatpak, so it's possible that there's a simple permissions thing I'm missing that instantly stands out to someone else.

image

image

PhilipK commented 1 year ago

This should be fixed in version 1.8 0

shuja-u commented 1 year ago

This seems to still be an issue when using BoilR 1.8.0 from Flatpak with Lutris Flatpak and Steam Flatpak. I'm unable to launch the Lutris games that are imported into Steam Flatpak.