[lfs] crossover: allow overriding bottles path via CX_BOTTLE_PATH
Overview
Allows overriding the default directory containing CrossOver bottles and used to launch games in bottles, which is also the same environment variable used by the wine executable from CrossOver once executed. Before these changes, the only supported directory for bottles is the default ~/Library/Application Support/CrossOver/Bottles folder.
Context
If we were to simply update the path Legendary uses to find bottles (without utilizing the CX_BOTTLE_PATH environment variable) based on e.g. some user configuration, then the CrossOver executable will fail to find the targeted bottle based on its invocation. Instead, this PR just utilizes CX_BOTTLE_PATH for the override to kill two birds with one stone.
Therefore, if desired, to allow this to be configurable via ~/.config/legendary/config.ini, one would need to apply the environment variable when running CrossOver the same way CX_BOTTLE is done in core.py/etc
Usage
My bottles are stored on an external SD Card, since games are big and I don't need them available all the time. After these changes, I'm able to launch games with bottles stored in /Volumes/Games/CrossOver, for example /Volumes/Games/CrossOver/RocketLeague, like so:
CX_BOTTLE_PATH="/Volumes/Games/CrossOver" legendary crossover
CX_BOTTLE_PATH="/Volumes/Games/CrossOver" legendary launch Sugar
Alternatively, CX_BOTTLE_PATH could be set in a bash_profile or similar.
Therefore, if desired, to allow this to be configurable via
~/.config/legendary/config.ini, one would need to apply the environment variable when running CrossOver the same wayCX_BOTTLEis done incore.py/etc
Happy to follow up with this change if it's desired before merging.