mtenv is a version manager for the Myst programming language, inspired by rbenv and other similar version managers.
For platforms with a pre-built binary (see the releases page to find these), simply download the binary, place it on your
PATH and you're good to go!
# macOS example: curl -Lo mtenv https://github.com/myst-lang/mtenv/releases/download/v0.0.3/mtenv-v0.0.3-macos-10.13.2 chmod +x mtenv cp ./mtenv /usr/local/bin/mtenv
For other platforms, you'll need to compile from source. To do so, you can clone this repository and run
shards build, then move the compiled binary onto your $PATH.
git clone https://github.com/myst-lang/mtenv.git cd mtenv shards build cp ./bin/mtenv /usr/local/bin/mtenv
If you create a new pre-built binary, I'd appreciate you sending in the binary for others to download themselves. The Myst language discord is a great place to discuss this.
mtenv is on your
PATH, the installation is complete.
mtenv uses sub-commands to perform its various tasks. To see these commands listed out, just run
mtenv to see the usage instructions. Further explanations are given here.
When first installing
mtenv setup to initialize the
MTENV_HOME if set) directory and install the shims.
mtenv setup will:
- Ensure that
MTENV_HOMEif set) exists and add some basic configuration.
- Prompt for where to put the the executable that
mtenvmanages to control
mystversions, i.e. a directory in your PATH.
Now you are fully set up to use
mtenv and install new versions of Myst.
Note: If you have existing versions of Myst installed via Homebrew or any other method, be sure to remove them from your PATH before using
mtenv may not take precedence and may cause unexpected behavior._
Installing new versions of Myst
To install a new version of Myst, use
mtenv install <version>.
version can be a tagged release number (e.g.,
v0.6.0), or a commit SHA from the official myst-lang repository.
install also accepts an optional second argument for a different name to use for the installation.
$ mtenv install v0.5.0 Version v0.5.0 of Myst is now installed $ mtenv versions v0.5.0 $ mtenv install v0.5.0 beta-5 Version beta-5 of Myst is now installed $ mtenv versions beta-5 v0.5.0
To uninstall a specific version of Myst, use
mtenv uninstall <version>. This will remove the installation
$ mtenv versions v0.4.0 v0.5.0 $ mtenv uninstall v0.4.0 Version v0.4.0 of Myst has been uninstalled. $ mtenv versions v0.5.0
To see which version of Myst is currently active, use
To see which versions of Myst are currently installed, use
To switch between active versions of Myst (i.e., what the
myst command will use), use
mtenv use <version>.
$ mtenv version v0.3.0 $ myst -v v0.3.0 $ mtenv versions v0.3.0 v0.4.0 v0.5.0 v0.6.0 $ mtenv use v0.4.0 Active Myst version is now v0.4.0 $ mtenv version v0.4.0 $ myst -v v0.4.0
mtenv from your PATH and remove all installations, use
mtenv implode. This command removes everything relating to
mtenv, except for the
mtenv binary itself.
$ ./bin/mtenv implode Are you sure you want to completely uninstall mtenv? This cannot be undone. The `mtenv` command will remain installed, but all installations will be lost. Type 'implode' to confirm your intent. > implode ... $
Just a normal Crystal project. This project uses Admiral for setting up the CLI, and each command lives in the
- about 1 year ago
- March 31, 2018
Thu, 02 Apr 2020 04:07:22 GMT