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
.
Updating
python3 -m pip install --upgrade cosmix-launcher
Uninstallation
python3 -m pip uninstall cosmix-launcher
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, hence why it is required.
Dependencies
hjson tqdm requests crm1 Send2Trash click 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 java-manifest
Usage
global options:
--work-dir -w specify a working directory for Cosmix to use.
cosmix version
prints the current installed cosmix version
cosmix debug
prints a lot of debug information related to cosmix
cosmix add [instance]
adds and downloads a new instance
options:
--version -v VERSION specify a Cosmic Reach version to use. defaults to "latest"
--quilt-version -q VERSION specify a Cosmic Quilt version to use. defaults to "none"
--display-name -n NAME optionally specify a display name for the instance
cosmix update [instance]
updates an existing version
options:
--version -v VERSION specify a Cosimc Reach version to use. defaults to "latest"
--quilt-version -q VERSION specify a Cosmic Quilt version to use. defaults to "none"
cosmix instances
lists all instances
cosmix launch [instance]
launches an instance
cosmix info [instance]
prints info about an instance
cosmix add-mod [instance] [path to mod jar]
adds a mod jar to an instance
cosmix add-crm1-mod [instance] [mod id]
adds a mod to an instance via CRM-1. To add repos, see ~/.local/share/cosmix/config.hjson
cosmix add-data-mod [instance] [mod path]
adds a data mod to an instance
cosmic whereis [instance]
prints the path to a given instance
cosmix trash [instance]
moves an instance to the system's trash folder
Examples
# Create an unmodded instance named `vanilla` on the latest CR version
cosmix add vanilla
# Create a Cosmic Quilt instance named `my-quilt` on the latest CR version with Cosmic Quilt 1.2.7
cosmix add my-quilt --quilt-version 1.2.7
# Create a vanilla instance named `old-version` on CR 0.0.1
cosmix add 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file cosmix_launcher-1.0.9.tar.gz
.
File metadata
- Download URL: cosmix_launcher-1.0.9.tar.gz
- Upload date:
- Size: 10.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dd3dcbdbacfd071d5b1d453a63255a960893b4b5eb9a5c88c14c9f68d7524f2b |
|
MD5 | aee38ff04cbb8ff28a69ef92144687e0 |
|
BLAKE2b-256 | e690d24e0b3a642f1fb1c3e85d4c2841378146d1b94ed9a6c3fdb22b4cad2f77 |
File details
Details for the file cosmix_launcher-1.0.9-py3-none-any.whl
.
File metadata
- Download URL: cosmix_launcher-1.0.9-py3-none-any.whl
- Upload date:
- Size: 12.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b52b19ef520266152d776f3049fe2ab4aa772c744991c781c9a4b421504e5675 |
|
MD5 | 2c5de355dc26ac3d7f87012d3e25f587 |
|
BLAKE2b-256 | 9c1bb9a5298813d43572997b4364911b4ebf4f3c0135032dbd7f07a81c75d27d |