GE-Man - Glorious Eggroll version manager
GE-Man is a version manager for GE Proton and Wine GE versions.
Currently, it has the following features:
- Manage Proton GE or Wine GE versions
- Download versions by their Github release tag
- Remove downloaded versions
- Set the default Proton version for Steam
- Set the default Wine version for Lutris
- Check for the latest releases
- List managed releases
- Copy a Proton user-settings file from one version to another
And these features are planned:
- Add labels to a version
- Apply a version by manually specifying its directory path
- Remove versions that are before release X to free disk space
- More functionality for the user-settings command
- Apply a user-settings.py file to a version
- Add a user-settings.py file to GE-Man to make it applicable
Building
This project is build by using Cargo - Rust's package manager. Additionally, cross can be used to verify builds for other architectures.
For local development the library crate GE-Man-Lib needs to be present on
the same directory root as the GE-Man
directory (../GE-Man-Lib
).
The library crate requires a version of OpenSSL to be present for linking. By default, the installed OpenSSL version of
the system is used. When building with cross the vendored-openssl
feature must be used, so the build does not fail due
to no OpenSSL library being present.
Installation
GE-Man can be installed with cargo or by downloading the precompiled binaries from the release page.
cargo install ge-man
When installing with cargo the resulting binary is placed into $HOME/.cargo
. To make the binary accessible from
everywhere in a terminal add the $HOME/.cargo
path to the PATH
environment variable.
Changelog
See CHANGELOG.md for all changes.
Usage
GE-Man provides the following commands:
add
- Add a GE Proton or Wine GE versionremove
(rm
) - Remove a GE Proton version or Wine GE versioncheck
(ck
) - Display the latest GE Proton, Wine GE and Wine GE LoL versionapply
- Set the default compatibility tool for Steam or Lutrislist
- List versions managed by ge-manmigrate
- (mg
) - Make an existing GE version manageable by ge-manuser-settings
(us
) - Commands that relate to Proton user-settings.py filescopy
- Copy a user-settings.py file from on Proton version to another
Every command supports a --help
argument to view possible parameters and general usage information.
How do I add a new version?
# Proton GE
# Wine GE
# Wine GE for LoL
You can also directly apply the downloaded version by using the --apply
option.
If no release is provided to the -p
, -w
and -l
options, the latest release is downloaded.
How do I remove a version?
# Proton GE
# Wine GE
# Wine GE for LoL
This operation will delete the versions file from the hard drive. If you wish to keep the files and only "forget"
the version in ge-man then use the forget
command.
How can I view the latest releases?
# All GE kinds
# Proton GE
# Wine GE
# Wine GE for LoL
How can I remove a version without deleting its files?
# Proton GE
# Wine GE
# Wine GE for LoL
How can I list the ge-man managed versions?
# All GE kinds
# Proton GE
# Wine GE
# Wine GE for LoL
How can I make my existing GE versions manageable by GE-Man?
To make an existing version manageable by ge-man you need to use the migrate
command. The migrate
command takes a
path to a directory containing a GE version and the kind of GE version.
# Proton GE
# Wine GE
# Wine GE for LoL