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 -vin 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] --helpto 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.
Metadata
Release files for cosmix-launcher 1.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| cosmix_launcher-1.1.1.tar.gz | 11.4 kB | Without provenance | Details for cosmix_launcher-1.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| cosmix_launcher-1.1.1-py3-none-any.whl | Python 3 | none | any | Details for cosmix_launcher-1.1.1-py3-none-any.whl |
Total release size: 24.8 kB
Release files / cosmix_launcher-1.1.1.tar.gz
| Download URL | cosmix_launcher-1.1.1.tar.gz |
|---|---|
| Size | 11.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
215f8e278707a4f29deb90d0cf7ab8e5a5a254b08879c308189fc28706108c7c
|
|
BLAKE2b-256 checksum How to use checksums |
d32eb6bcf3986c9262d804550520d08c84d0a33cc549c5825d9d5a19cf2ed664
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.12.3
|
Release files / cosmix_launcher-1.1.1-py3-none-any.whl
| Download URL | cosmix_launcher-1.1.1-py3-none-any.whl |
|---|---|
| Size | 13.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bb7a8daa7e4d0719112c25c81f5bfec3b0dc6b0372e166ec161ba9f0ba704990
|
|
BLAKE2b-256 checksum How to use checksums |
12cc9eff7671a5e7a6184e0ea12dfc40e7e78ea5c6816afd8da137807dbb8f16
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.12.3
|
Security for cosmix-launcher 1.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.