jdx/mise · error

bootstrap system services are only supported on Linux

Error message

bootstrap system services are only supported on Linux

What it means

Bootstrap system services (systemd units) are implemented only for Linux. On non-Linux platforms apply_privileged_plan_from_stdin is a stub that always fails with this message, so any attempt to apply a privileged system-service plan aborts.

Source

Thrown at src/system/services_non_linux.rs:51

) -> Vec<ResourcePlan> {
    vec![]
}

pub(crate) fn apply(_requests: &[ServiceRequest], _dry_run: bool, _yes: bool) -> Result<()> {
    Ok(())
}

pub(crate) fn apply_with_notifications(
    _requests: &[ServiceRequest],
    _notifications: &ServiceNotifications,
    _dry_run: bool,
    _yes: bool,
) -> Result<()> {
    Ok(())
}

pub(crate) fn apply_privileged_plan_from_stdin() -> Result<()> {
    bail!("bootstrap system services are only supported on Linux")
}

fn reject_configured(config: &Config) -> Result<Vec<ServiceRequest>> {
    // validated like on Linux first, so a forgotten `scope = "user"` is
    // reported as such rather than as a platform limitation
    let configured = !compose_system_declarations(config)?.is_empty();
    if configured {
        bail!("bootstrap system services are only supported on Linux");
    }
    Ok(vec![])
}

View on GitHub (pinned to afd2eddd3a)

Solutions

  1. Run the operation on a Linux machine with systemd
  2. Use an alternative service manager (launchd, Task Scheduler) instead of mise bootstrap services
  3. If on WSL, ensure WSL2/systemd enabled so the platform is Linux
Defensive patterns

Strategy: try-catch

Validate before calling

if !cfg!(target_os = "linux") {
    eprintln!("bootstrap system services require Linux; skipping");
}

Prevention

When it happens

Trigger: Running a mise operation that applies a privileged service plan (via the elevated helper stdin path) on macOS, Windows, or another non-Linux OS.

Common situations: Configuring bootstrap services on a macOS laptop; CI images running macOS; WSL misconfigured so platform detection sees non-Linux.

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


AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09). Data as JSON: /api/errors/2b3c01c67bb21423. Report an issue: GitHub.