PhilipK / BoilR

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

Adding my own app to Steam #135

Open XargonWan opened 2 years ago

XargonWan commented 2 years ago

Greetings,

I wish to integrate BoilR in RetroDECK in order to add RetroDECK itself to the Steam Library after the installation and scrape its images that are already available into SteamGridDB.

I've seen that BoilR supports the --no-ui argument, but is there any argument that asks BoilR to add a specific app?

Thanks in advance

PhilipK commented 2 years ago

There is currently no support for that, but it can be made. Just so I understand the main goal is to end up with a shortcut for RetroDECK in steam?

2 ways I see this could be done.

  1. Take parameters to BoilR and let it add the shortcut like you suggest.
  2. Add a section to BoilR called "Apps" or something and then let users pick which apps they want to add a shortcut to.

Both can be done, which one do you prefer? If you need the first version, what kind of parameters would you need? Would it be better with some kind of json input?

XargonWan commented 2 years ago

Thanks for your steady reply, something like 1: linux_BoilR --no-ui --add-game=RetroDECK --scrape-SteamGridDB -API=somekey

Where --add-game=RetroDECK can be taken from /var/lib/flatpak/exports/share/applications/net.retrodeck.retrodeck.desktop as it's a flatpak.

What do you think about this kind of approach?

EDIT: I prefer 1 as I try to make everything "invisible" for the user, however when I am using BoilR I can advertise it in the installer if you prefer.

PhilipK commented 2 years ago

If we go with 1, i think it needs a little more information. --add-game --executable="command to run" --name="name of the shortcut" --launch-options="options to add" --no-ui

The add-game parameter would make boilr look for the rest of the parameters, the --no-ui would trigger the synchronization that would then handle image download. Actually thinking about it, there should be a --image-download-only parameter so that it does not mess up any shortcuts that people already have. It is possible to set the API key through environment variables already boil-steamgrid_db-auth_key=xasldkjfaælskdjfxxx ./linux_Boilr will set it.

PhilipK commented 2 years ago

@XargonWan does the example make sense to you?

XargonWan commented 2 years ago

Hi, sorry for the delay,

yes your idea seems very good, I also like that it will only scrape for the added game and not for all, maybe someone doesn´t want to scrape their other links for some reasons.

So to do a real example it would be:

boil-steamgrid_db-auth_key=xasldkjfaælskdjfxxx ./linux_Boilr
linux_BoilR --add-game --executable="net.retrodeck.retrodeck" --name="RetroDECK" --no-ui

In my case I removed --launch-options as it would not be used.

In case that the shortcut is already existing will it add a duplicate? Maybe the key to check the duplicate can be the --name="RetroDECK"

PS: this will happen in my wrapper script inside my own flatpak, so basically net.retrodeck.retrodeck will contain boiler as well that it will be adding net.retrodeck.retrodeck.

PhilipK commented 2 years ago

@XargonWan you are welcome to include BoilR in your app. The key would be the name + the executable command, since that is what the key is in steam.

XargonWan commented 2 years ago

@PhilipK fair enough, and thanks for your greenlight!

PhilipK commented 2 years ago

It's MIT or Apache license , It's no warranty but do whatever you want basicly 😂 If it helps people that great for me!

XargonWan commented 9 months ago

Hi, is there any update on this issue?

On RetroDECK we are considering to create a script to add specific games to Steam, this BoilR feature would be vital. We are available to discuss and support in this feature, and in general (hence no team member knows Rust). Feel free to even reach us on our Discord

Please let me know :) Thanks in advance.