I’m adding softwares with some custom hooks to tk-multi-launchapp.yml, and I define a path field thati points to a config in software_paths.yml.
I was wondering about what could be the best solution to add path to software_paths.yml, if the path includes the software’s version, eg. c:/Program Files/Side Effects Software/Houdini {version}/bin/houdini.exe and I don’t want to edit this exact line every time we upgrade it or want to add something new.
Is there a way I could add the software’s executable’s path to the sg config’s PATH env var and just have like houdini.exe in the software_paths.yml?
Also, how could I add multiple versions of the same software this way?
Yes, I’m familiar with that. However with Software Entities I don’t see a way to add hooks and various parameters to the app launch, hence I use tk-multi-launchapp.yml and the paths from software_paths.yml.
I fell for that as well. As @Ricardo_Musch said the tk-multi-launch app does still call all hooks when you set use_software_entities to true. Definitely a live changer once you have set it up.
So I could use one entity in tk-multi-launchapp that covers all my softwares, set the hook_app_launch for it, and maybe I could even get the afore mentioned parameters from the Shotgrid software entities’ fields?
This will require some refactoring on my part then…
I cant currently find the documentation about it but its already built in, you dont have to do anything to make it work except enable the launchapp to consider the data.
So there will be still the same number of entities in the tk-multi-launchapp, but they will get some of their data from web (like the path), and the others from the yml.
You add the software and its paths to the Software Entity page.
Engines have a built in ability to search for sofytware installation paths based on the default install location.
The Software entity allows you to define what versions you want to enable, how to group them in Sg desktop, etc.
Have a look here: https://developer.shotgridsoftware.com/8085533c/#configuring-software-launches
Well, this almost worked flawlessly.
Unfortunately the hook only gets the default fields of the software_entity, and not the custom fields, which I’d like to store additional data for the hook.