The miso CLI

The tool

Commands about the tool itself, and the compilers inside it.

miso doctor

miso doctor

Checks the installation (the package database, base, miso, cpphs, that $MISO_HOME is writable), the tools (cc, curl, tar, sha256sum or shasum; and, as notes, hlint, git and emcc), and in a project, miso.yml, its programs and tests, source dirs, emcc for its browser targets, and its dependencies. It says how to fix each problem, and fails when it found one.

miso upgrade

miso upgrade [VERSION]

Installs the latest release (or VERSION, e.g. v0.1.0) where this one is installed, by running the installer. The packages projects installed are installed again by their next build.

miso uninstall

miso uninstall [--yes]

Removes miso: its files in $MISO_HOME (packages, caches, the store) and the tool where the installer put it. It lists what it removes, with sizes, and asks first; --yes does not ask, and is needed when the input is not a terminal. A folder that holds other files keeps them, and a tool installed with nix is never removed. It lists the lines of your shell startup files that add miso to PATH, for you to remove.

miso version

miso version
miso --version

Prints miso VERSION (MicroHs VERSION).

miso help

miso help
miso --help

Prints the commands. miso with no arguments, or an unknown command, prints them too.

miso mhs

miso mhs ARGS...

Runs the MicroHs compiler built into the tool, with the project's .miso/ packages and the tool's as its package path. With a bare -a in ARGS (which clears mhs's package path), miso leaves the package path to ARGS.

miso mcabal

miso mcabal ARGS...

Runs MicroCabal, which compiles with miso mhs.