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

Flatpak BiolR does not add other Flatpak application to Flatpak Steam #383

Open
Nitrousoxide opened this issue Dec 11, 2023 · 2 comments
Open
Labels
bug Something isn't working

Comments

@Nitrousoxide
Copy link

Describe the bug
BoilR can see the the list of Flatpaks

image

Running it apparently does not error out:

~ 
❯ flatpak run io.github.philipk.boilr
Could not load platform amazon, gave error: Unknown platform named amazon
Could not load platform playnite, gave error: Unknown platform named playnite
Could not load platform gamepass, gave error: Unknown platform named gamepass
Backed up shortcut at: "/home/Brian/.var/app/io.github.philipk.boilr/config/boilr/backup/21137060-2023-12-11-14-04-24-shortcuts.vdf"
Appid: 2941613865 name: RetroDECK
Found 1 user(s)
Found 1 shortcuts for user: 21137060
Saved 1 shortcuts
Finished synchronizing games in: 247.147µs
Checking for game images
No images needed
Saved 1 shortcuts

But it does not add the application to steam even after steam is rebooted:

image

This is the path to the common folder on my machine:

/home/Brian/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common

And the flatpak permissions for both boilr:

❯ flatpak info --show-permissions io.github.philipk.boilr
[Context]
shared=network;ipc;
sockets=x11;wayland;fallback-x11;
devices=dri;
filesystems=~/.var/app/net.lutris.Lutris:ro;xdg-data/Steam;~/.var/app/com.valvesoftware.Steam;~/GOG Games:ro;~/.config/heroic;xdg-data/flatpak:ro;~/.config/legendary:ro;~/Games/Heroic:ro;/run/media/mmcblk0p1:ro;xdg-data/lutris:ro;~/.steam;~/.config/itch:ro;~/.var/app/com.heroicgameslauncher.hgl:ro;

[Session Bus Policy]
org.freedesktop.Flatpak=talk
~ 
❯ flatpak info --show-permissions com.valvesoftware.Steam
[Context]
shared=network;ipc;
sockets=x11;wayland;pulseaudio;
devices=all;
features=devel;multiarch;bluetooth;per-app-dev-shm;
filesystems=xdg-run/app/com.discordapp.Discord:create;xdg-pictures:ro;xdg-music:ro;
persistent=.;
unset-environment=ALSA_CONFIG_PATH;TZ;STEAM_RUNTIME_PREFER_HOST_LIBRARIES;STEAM_RUNTIME;SDL_VIDEODRIVER;MESA_GLSL_CACHE_DIR;

[Session Bus Policy]
org.kde.StatusNotifierWatcher=talk
org.freedesktop.Notifications=talk
org.gnome.SettingsDaemon.MediaKeys=talk
org.freedesktop.ScreenSaver=talk
org.freedesktop.PowerManagement=talk

[System Bus Policy]
org.freedesktop.UPower=talk
org.freedesktop.UDisks2=talk

[Environment]
ALSA_CONFIG_PATH=
TZ=
STEAM_EXTRA_COMPAT_TOOLS_PATHS=/app/share/steam/compatibilitytools.d:/app/utils/share/steam/compatibilitytools.d
PYTHONPATH=/app/utils/lib/python3.10/site-packages
LC_NUMERIC=C
LC_MONETARY=C
FLATPAK_STEAM_UPDATE_SYMLINKS=0
DBUS_FATAL_WARNINGS=0
STEAM_RUNTIME_PREFER_HOST_LIBRARIES=
FLATPAK_STEAM_XDG_DIRS_PREFIX=~/.var/app/com.valvesoftware.Steam
LC_TELEPHONE=C
SSL_CERT_DIR=/etc/ssl/certs
STEAM_RUNTIME=
LC_MEASUREMENT=C
XDG_DATA_DIRS=/app/share:/usr/lib/extensions/vulkan/share:/usr/share:/usr/share/runtime/share:/run/host/user-share:/run/host/share
LC_NAME=C
XDG_CONFIG_DIRS=/etc/xdg:/usr/lib/x86_64-linux-gnu/GL:/usr/lib/i386-linux-gnu/GL
LC_COLLATE=C
SDL_VIDEODRIVER=
GST_PLUGIN_SYSTEM_PATH=/app/lib/gstreamer-1.0:/app/lib32/gstreamer-1.0:/usr/lib/extensions/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:/usr/lib/i386-linux-gnu/gstreamer-1.0
MESA_GLSL_CACHE_DIR=
LC_ADDRESS=C
PATH=/app/bin:/app/utils/bin:/usr/bin
PROTON_DEBUG_DIR=/var/tmp

I don't know if it's relevant but it did not populate a steam path in the settings

image

To Reproduce
Steps to reproduce the behavior:

  1. Start BoilR
  2. Select Flatpak games to import
  3. Restart Steam
  4. No game imported

Expected behavior
A clear and concise description of what you expected to happen.

Game should be imported

Desktop (please complete the following information):

  • OS: Fedora 39 Workstation
  • BoilR Version 1.9.4
  • Launcher: Flatpak
@Nitrousoxide Nitrousoxide added the bug Something isn't working label Dec 11, 2023
@Nitrousoxide
Copy link
Author

So I looked some more into this. I had (previously) had Steam installed as a system app via DNF. Though it wasn't installed when I tried to import the games. Installing Steam again via DNF again and starting it up and I saw that it had the Retrodeck shortcut.

How does BiolR determine which version of Steam is installed? Does it check the $PATH? to see if there's a steam there, and if not then it falls back to flatpak? Does it check for the common file path in the system steam directory? If it's the latter then you could end up with it thinking steam is installed when nothing is visible in the $PATH.

@PhilipK
Copy link
Owner

PhilipK commented Mar 10, 2024

BoilR will use the steam location that is in defined in the settings first:

pub fn get_steam_path(settings: &SteamSettings) -> eyre::Result<String> {

If nothing is defined it will guess (depending on the OS):

pub fn get_default_location() -> eyre::Result<String> {

On linux it will try (in this order)
~/.steam/steam
~.var/app/com.valvesoftware.Steam/.steam/steam

If none of the options exist it will report an error and cancel the sync.

So if you have 2 steams installed, or once installed steam in ~/.steam/steam, then it will use that.
If you want ~.var/app/com.valvesoftware.Steam/.steam/steam to be used, you can either set it manually in the settings, or you can delete ~./steam/steam.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants