jdx/mise · error
evaluating third-party tap definitions is only supported ins
Error message
evaluating third-party tap definitions is only supported inside the Linux or macOS process sandbox
What it means
Evaluating third-party tap Ruby definitions is only permitted inside mise's Linux/macOS process sandbox, because running arbitrary Ruby from a tap is untrusted. On other platforms (e.g. Windows) `metadata_sandbox` has no sandbox implementation and unconditionally bails with this message.
Source
Thrown at src/system/packages/brew/tap.rs:157
Ok(cask)
}
#[cfg(any(target_os = "linux", target_os = "macos"))]
fn metadata_sandbox() -> Result<SandboxConfig> {
Ok(SandboxConfig {
deny_read: true,
deny_write: true,
deny_net: true,
deny_env: true,
deny_process: true,
deny_temp_write: true,
..Default::default()
})
}
#[cfg(not(any(target_os = "linux", target_os = "macos")))]
fn metadata_sandbox() -> Result<SandboxConfig> {
bail!(
"evaluating third-party tap definitions is only supported inside the Linux or macOS process sandbox"
)
}
fn macos_version() -> String {
if cfg!(target_os = "macos") {
crate::cmd::cmd("sw_vers", ["-productVersion"])
.read()
.map(|version| version.trim().to_string())
.unwrap_or_default()
} else {
"0".to_string()
}
}
async fn resolve_tap_source(owner: &str, tap: &str, tap_url: Option<&str>) -> Result<TapSource> {
let raw_base = api::tap_raw_base(owner, tap, tap_url)
.ok_or_else(|| eyre::eyre!("only GitHub tap URLs can be fetched directly"))?;View on GitHub (pinned to afd2eddd3a)
Solutions
- Install the tool via a platform-supported mise backend (github:, cargo:, npm:, aqua:)
- Use a Windows-native tool variant instead of the Homebrew tap formula
- Run mise under WSL (Linux) so the sandbox path is available
- Install via real Homebrew outside mise if a Windows Homebrew setup exists
Example fix
// before: mise.toml (Windows) "brew:thirdparty-tool" = "latest" // after "github:org/thirdparty-tool" = "latest"
Defensive patterns
Strategy: fallback
Validate before calling
if !(cfg!(target_os = "linux") || cfg!(target_os = "macos")) {
eprintln!("third-party tap evaluation unsupported here; use another backend");
} Prevention
- On Windows, use github:/npm:/cargo: backends instead of third-party brew taps
- Run mise under WSL when Homebrew tap evaluation is required
- Stick to core bottled formulas on non-Unix platforms
When it happens
Trigger: Installing any formula from a third-party tap that requires Ruby metadata evaluation on a platform other than Linux or macOS (e.g. Windows), where the `#[cfg(not(linux|macos))] metadata_sandbox()` variant always errors.
Common situations: Using mise on Windows and adding a third-party brew tap; core formulas with bottles work because they skip tap evaluation, but direct-source third-party formulas hit this wall.
Understand the failure class
Background: "unsupported platform" / "not supported on this platform" errors: what they mean and how to fix them — this error's family across 47 libraries.
Related errors
- only available on unix
- GitHub relay requires a POSIX target: {}
- GitHub relay requires Linux or macOS
- brew import is not supported on windows
- brew prune is not supported on windows
AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09).
Data as JSON: /api/errors/868fbb5a654e252f.
Report an issue: GitHub.