Skip to content

Conversation

@sammoore
Copy link

@sammoore sammoore commented Jul 31, 2024

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.

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.

If desired, to allow this to be configurable via
~/.config/legendary/config.ini, one would need to overwrite the
environment variable the same way CX_BOTTLE is done in core.py/etc
@sammoore
Copy link
Author

sammoore commented Aug 2, 2024

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

Happy to follow up with this change if it's desired before merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant