Skip to main content

A dead simple CLI-based launcher for Cosmic Reach and Cosmic Quilt

Project description

Cosmix

A dead simple CLI-based launcher for Cosmic Reach and Cosmic Quilt.

Installation

# From PyPI (recommended)
python3 -m pip install cosmix-launcher

# From source
git clone https://codeberg.org/emmathemartian/cosmix && cd cosmix
python3 -m pip install -r requirements.txt
python3 -m build
python3 -m pip install ./dist/*.whl

To makes sure it's installed, run cosmix version. You should see [info]: Cosmix <some version> in the console.

If the command is not found, make sure your ~/.local/bin/ is on your $PATH.

If you have any issues, see Troubleshooting.

Updating

python3 -m pip install --upgrade cosmix-launcher

Uninstallation

python3 -m pip uninstall cosmix-launcher
# If you also want to delete your instances, delete ~/.local/share/cosmix (or %APPDATA%\cosmix on Windows)

Troubleshooting

Arch Linux:

Arch Linux and its derivatives may complain with error: externally-managed-environment. To get around this, use the --user --break-system-packages options with pip install.

Obviously this has a chance of breaking something, but in my testing I have yet to have that happen. Though be aware and know that I am not responsible if you break your system.

Maven:

You may also need to install Maven. On Arch Linux this is just pacman -S maven.

Maven is used to download and resolve all of Cosmic Quilt's dependencies automatically. If you are a developer, you will probably have this downloaded already. You can check by running mvn -v in your terminal.

Dependencies

hjson tqdm requests crm1 Send2Trash click click-aliases java-manifest

To install and/or upgrade all of them at once, just run:

python3 -m pip install --upgrade hjson tqdm requests crm1 Send2Trash click click-aliases java-manifest

Usage

Usage: python -m src.cosmix [OPTIONS] COMMAND [ARGS]...

Options:
  -w, --work-dir TEXT  Set a working directory for Cosmix.
  --help               Show this message and exit.

Commands:
  add (new)     Adds a new instance.
  add-crm1-mod  Adds a jar mod via CRM-1.
  add-data-mod  Adds a data mod.
  add-mod       Adds a jar mod.
  debug         Shows debug information.
  info          Gets info about an instance.
  instances     Shows all instances.
  launch        Launches an instance.
  trash         Trashes an instance.
  update        Updates an existing instance.
  version       Shows the current cosmix version.
  whereis       Shows the path to an instance.

You can use cosmix [command] --help to get help about a specific command.

Examples

# Create an unmodded instance named `vanilla` on the latest CR version
cosmix new vanilla
# Create a Cosmic Quilt instance named `my-quilt` on the latest CR version with Cosmic Quilt 1.2.7
cosmix new my-quilt --quilt-version 1.2.7
# Create a vanilla instance named `old-version` on CR 0.0.1
cosmix new old-version -v 0.0.1
# Install the latest version of Flux API available on JoJoJux's autorepo to the instance `test`
cosmix add-crm1-mod test dev.crmodders.flux
# Update the `latest` instance to the latest available versions of Cosmic Reach and Cosmic Quilt
cosmix update latest -v latest -q latest

File Structure

Cosmix stores all of its data in your $XDG_DATA_HOME (typically ~/.local/share/) on Linux and %APPDATA% on Windows and in the cosmix folder.

This folder will contain the following extra folders:

cosmix/
    config.hjson - Configs for Cosmix

    deps/
        cosmic-reach/
            Contains JARs for each downloaded Cosmic Reach version.
        cosmic-quilt/
            Contains the JAR dependencies for each downloaded Cosmic Quilt version.

    instances/
        example-instance/
            config.hjson - Configs for the instance.
            deps/
                If the instance is modded, this folder is used to store extra dependencies for the classpath. Typically this will be unused.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cosmix_launcher-1.1.1.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

cosmix_launcher-1.1.1-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file cosmix_launcher-1.1.1.tar.gz.

File metadata

  • Download URL: cosmix_launcher-1.1.1.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for cosmix_launcher-1.1.1.tar.gz
Algorithm Hash digest
SHA256 215f8e278707a4f29deb90d0cf7ab8e5a5a254b08879c308189fc28706108c7c
MD5 35c7e14907a8d81abaa396e0f9744038
BLAKE2b-256 d32eb6bcf3986c9262d804550520d08c84d0a33cc549c5825d9d5a19cf2ed664

See more details on using hashes here.

File details

Details for the file cosmix_launcher-1.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for cosmix_launcher-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bb7a8daa7e4d0719112c25c81f5bfec3b0dc6b0372e166ec161ba9f0ba704990
MD5 d06ebffa6624c7283545ba019087ea55
BLAKE2b-256 12cc9eff7671a5e7a6184e0ea12dfc40e7e78ea5c6816afd8da137807dbb8f16

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page