Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions docs/dev-tools/backends/asdf.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,17 @@ need to set env vars other than `PATH`.
## Writing asdf (legacy) plugins for mise

See the asdf documentation for more information on [writing plugins](https://asdf-vm.com/plugins/create.html).

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `asdf` backend—these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for asdf plugin install scripts:

```toml
[tools]
"asdf:owner/plugin" = { version = "latest", install_env = { MAKEFLAGS = "-j8" } }
```
9 changes: 9 additions & 0 deletions docs/dev-tools/backends/cargo.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,15 @@ For options that do not skip `cargo-binstall`, any source-build fallback is hand
| `crate` | Does not skip `cargo-binstall` when applicable. Git installs always use `cargo install`. |
| `locked` | Passed through to `cargo-binstall`; does not skip it. |

### `install_env`

Set environment variables for the `cargo install` or `cargo-binstall` command:

```toml
[tools]
"cargo:eza" = { version = "latest", install_env = { CARGO_NET_GIT_FETCH_WITH_CLI = "true" } }
```

### `features`

Install additional components (passed as `cargo install --features`):
Expand Down
9 changes: 9 additions & 0 deletions docs/dev-tools/backends/dotnet.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,15 @@ import Settings from '/components/settings.vue';
The following [tool-options](/dev-tools/#tool-options) are available for the `dotnet` backend—these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for the `dotnet tool install` command:

```toml
[tools]
"dotnet:GitVersion.Tool" = { version = "latest", install_env = { DOTNET_CLI_TELEMETRY_OPTOUT = "1" } }
```

### `prerelease`

By default, NuGet pre-release versions are excluded from `mise ls-remote` and from `latest` resolution. Set `prerelease = true` to include them:
Expand Down
14 changes: 14 additions & 0 deletions docs/dev-tools/backends/gem.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,3 +50,17 @@ Set these with `mise settings set [VARIABLE] [VALUE]` or by setting the environm
import Settings from '/components/settings.vue';
</script>
<Settings child="gem" :level="3" />

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `gem` backend—these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for the `gem install` command:

```toml
[tools]
"gem:rubocop" = { version = "latest", install_env = { GEM_HOST_API_KEY = "..." } }
```
10 changes: 10 additions & 0 deletions docs/dev-tools/backends/go.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,16 @@ Hivemind version 1.1.0
The following [tool-options](/dev-tools/#tool-options) are available for the `go` backend—these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for the `go install` command. mise still sets `GOBIN`
to the tool install directory after applying `install_env`.

```toml
[tools]
"go:github.com/DarthSim/hivemind" = { version = "latest", install_env = { GOPRIVATE = "github.com/acme/*" } }
```

### `tags`

Specify go build tags (passed as `go install -tags`):
Expand Down
11 changes: 11 additions & 0 deletions docs/dev-tools/backends/npm.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,17 @@ import Settings from '/components/settings.vue';
The following [tool-options](/dev-tools/#tool-options) are available for the `npm` backend—these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for the configured package manager install command.
mise still controls install destination variables such as `BUN_INSTALL_GLOBAL_DIR`
and `BUN_INSTALL_BIN` after applying `install_env`.

```toml
[tools]
"npm:prettier" = { version = "latest", install_env = { NPM_CONFIG_REGISTRY = "https://registry.npmjs.org/" } }
```

### `npm_args`

Additional arguments to pass to `npm` installs when `settings.npm.package_manager = "npm"`.
Expand Down
11 changes: 11 additions & 0 deletions docs/dev-tools/backends/pipx.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,17 @@ import Settings from '/components/settings.vue';
The following [tool-options](/dev-tools/#tool-options) are available for the `pipx` backend—these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for `uv tool install` or `pipx install`. mise still
sets the tool directory, bin directory, and configured Python package index
variables after applying `install_env`.

```toml
[tools]
"pipx:black" = { version = "latest", install_env = { PIP_TRUSTED_HOST = "pypi.org" } }
```

### `extras`

Install additional components.
Expand Down
12 changes: 12 additions & 0 deletions docs/dev-tools/backends/spm.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,18 @@ Other syntax may work but is unsupported and untested.
The following [tool-options](/dev-tools/#tool-options) are available for the backend — these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for Swift Package Manager commands such as
`swift package dump-package`, `swift -print-target-info`, and `swift build`.
For artifact bundle installs, this only applies to `swift -print-target-info`;
the download, extract, and symlink steps are handled by mise directly.

```toml
[tools]
"spm:tuist/tuist" = { version = "latest", install_env = { SWIFTPM_ENABLE_PLUGINS = "1" } }
```

### `provider`

Set the provider type to use for fetching assets and release information. Either `github` or `gitlab` (default is `github`).
Expand Down
16 changes: 16 additions & 0 deletions docs/dev-tools/backends/vfox.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,3 +102,19 @@ For more information, see:
- [Using Plugins](../../plugin-usage.md) - End-user guide
- [Plugin Development](../../tool-plugin-development.md) - Developer guide
- [Plugin Template](https://github.com/jdx/mise-tool-plugin-template) - Quick start template for creating plugins

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `vfox` backend—these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for commands that a vfox plugin starts with `cmd.exec`
during install hooks. vfox's built-in Lua HTTP, archive, and JSON helpers do not
use these variables directly.

```toml
[tools]
"vfox:version-fox/vfox-cmake" = { version = "latest", install_env = { HTTPS_PROXY = "http://proxy.example" } }
```
2 changes: 1 addition & 1 deletion docs/dev-tools/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ ripgrep = { version = "latest", os = ["linux", "macos"] }
"cargo:usage-cli" = {
version = "latest",
os = ["linux", "macos"],
install_env = { RUST_BACKTRACE = "1" }
locked = false
}
```

Expand Down
14 changes: 14 additions & 0 deletions docs/lang/bun.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,17 @@ See available versions with `mise ls-remote bun`.

> [!NOTE]
> Avoid using `bun upgrade` to upgrade bun as `mise` will not be aware of the change.

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `bun` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for install-time commands run by the core `bun` backend:

```toml
[tools]
bun = { version = "latest", install_env = { HTTPS_PROXY = "http://proxy.example" } }
```
14 changes: 14 additions & 0 deletions docs/lang/deno.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,17 @@ See available versions with `mise ls-remote deno`.

> [!NOTE]
> Avoid using `deno upgrade` to upgrade `deno` as `mise` will not be aware of the change.

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `deno` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for install-time commands run by the core `deno` backend:

```toml
[tools]
deno = { version = "latest", install_env = { HTTPS_PROXY = "http://proxy.example" } }
```
14 changes: 14 additions & 0 deletions docs/lang/dotnet.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,20 @@ dotnet = ["9", { version = "8.0.14", runtime = "dotnet" }]
Only exact runtime versions are supported (e.g., `dotnet[runtime=dotnet]@8.0.14`). Channel syntax like `@8` is not currently supported for runtime installs, as it resolves against SDK versions rather than runtime versions.
:::

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `dotnet` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for the .NET install script and install-time verification commands:

```toml
[tools]
dotnet = { version = "latest", install_env = { DOTNET_CLI_TELEMETRY_OPTOUT = "1" } }
```

## Environment Variables

The plugin sets the following environment variables:
Expand Down
14 changes: 14 additions & 0 deletions docs/lang/elixir.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,17 @@ mise use -g erlang elixir
```

Note that [`erlang`](/lang/erlang.html) is required to install `elixir`.

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `elixir` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for install-time commands run by the core `elixir` backend:

```toml
[tools]
elixir = { version = "latest", install_env = { MIX_HOME = "~/.mix" } }
```
15 changes: 15 additions & 0 deletions docs/lang/erlang.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,21 @@ See available versions with `mise ls-remote erlang`.
The plugin uses [kerl](https://github.com/kerl/kerl) under the hood to build erlang.
See kerl's docs for information on configuring kerl.

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `erlang` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for kerl build/install commands and other install-time commands run by
the core `erlang` backend:

```toml
[tools]
erlang = { version = "latest", install_env = { KERL_CONFIGURE_OPTIONS = "--without-javac" } }
```

## Settings

<script setup>
Expand Down
15 changes: 15 additions & 0 deletions docs/lang/go.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,21 @@ github.com/daixiang0/gci # allows comments
github.com/jesseduffield/lazygit
```

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `go` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for default package installation and install-time verification commands
run by the core `go` backend:

```toml
[tools]
go = { version = "latest", install_env = { GOPRIVATE = "github.com/acme/*" } }
```

## Settings

<script setup>
Expand Down
9 changes: 9 additions & 0 deletions docs/lang/java.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,15 @@ mise/java/21.0.1-open:
The following [tool-options](/dev-tools/#tool-options) are available for the `java` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for install-time commands run by the core `java` backend:

```toml
[tools]
java = { version = "latest", install_env = { JAVA_TOOL_OPTIONS = "-Djava.net.useSystemProxies=true" } }
```

### `release_type`

The `release_type` option allows you to specify the type of release to install. The following values
Expand Down
15 changes: 15 additions & 0 deletions docs/lang/node.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,21 @@ mise use -g node@26

See the [Node.JS Cookbook](/mise-cookbook/nodejs.html) for common tasks and examples.

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `node` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for source builds, default package installation, Corepack setup, and
install-time verification commands run by the core `node` backend:

```toml
[tools]
node = { version = "latest", install_env = { CFLAGS = "-O2" } }
```

## Pinning npm version

By default, Node.js ships with a bundled version of npm. If you need a specific npm version
Expand Down
15 changes: 15 additions & 0 deletions docs/lang/python.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,21 @@ mise use -g python@anaconda # latest version of anaconda

See the [Python Cookbook](/mise-cookbook/python.html) for common tasks and examples.

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `python` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for python-build, default package installation, and install-time
verification commands run by the core `python` backend:

```toml
[tools]
python = { version = "latest", install_env = { CONFIGURE_OPTS = "--enable-optimizations" } }
```

## `.python-version` support

`.python-version`/`.python-versions` files are supported by mise. See [idiomatic version files](/configuration.html#idiomatic-version-files).
Expand Down
14 changes: 14 additions & 0 deletions docs/lang/ruby.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,20 @@ bcat ~> 0.6.0 # supports version constraints
rubocop --pre # install prerelease version
```

## Tool Options

The following [tool-options](/dev-tools/#tool-options) are available for the `ruby` backend.
These options go in the `[tools]` section in `mise.toml`.

### `install_env`

Set environment variables for ruby-build or ruby-install and default gem installation:

```toml
[tools]
ruby = { version = "latest", install_env = { RUBY_CONFIGURE_OPTS = "--disable-install-doc" } }
```

## `.ruby-version` and `Gemfile` support

mise uses a `mise.toml` or `.tool-versions` file for auto-switching between software versions.
Expand Down
9 changes: 9 additions & 0 deletions docs/lang/rust.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,15 @@ cargo build
The following [tool-options](/dev-tools/#tool-options) are available for the `rust` backend—these
go in `[tools]` in `mise.toml`.

### `install_env`

Set environment variables for rustup install commands:

```toml
[tools]
rust = { version = "latest", install_env = { RUSTUP_DIST_SERVER = "https://static.rust-lang.org" } }
```

### `components`

The `components` option allows you to specify which components to install. Multiple components can be
Expand Down
Loading
Loading