{"record":{"id":"70e2fdd8bbc40b49","repo":"jdx/mise","slug":"manager-name-is-excluded-by-the-system-package","errorCode":null,"errorMessage":"manager '{name}' is excluded by the system_packages.managers setting","messagePattern":"manager '(.+?)' is excluded by the system_packages\\.managers setting","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/cli/system/driver.rs","lineNumber":95,"sourceCode":"    }\n    if mgrs.is_empty() {\n        info!(\"no bootstrap packages configured in [bootstrap.packages]\");\n        return Ok(());\n    }\n    let opts = InstallOpts {\n        dry_run: d.dry_run,\n        update: d.update,\n    };\n    for mp in mgrs {\n        if let Some(only) = &d.manager\n            && mp.manager.name() != only\n        {\n            continue;\n        }\n        let name = mp.manager.name();\n        if mp.disabled {\n            if d.manager.is_some() {\n                bail!(\"manager '{name}' is excluded by the system_packages.managers setting\");\n            }\n            debug!(\"{name}: skipping, excluded by system_packages.managers\");\n            continue;\n        }\n        if let Some(reason) = mp.manager.unavailable_reason_async().await {\n            if unavailable_manager_is_error(d) {\n                // explicitly requested (via --manager or manager:package\n                // specs) — failing silently would be a lie\n                bail!(\"{name} is not available: {}\", reason);\n            }\n            debug!(\"{name}: skipping, {reason}\");\n            continue;\n        }\n        if !d.dry_run {\n            mp.manager.prepare_mutation(&mp.requests).await?;\n        }\n        let statuses = mp.manager.installed(&mp.requests).await?;\n        if let Some(reason) = unavailable_package_reason(d, &statuses) {","sourceCodeStart":77,"sourceCodeEnd":113,"githubUrl":"https://github.com/jdx/mise/blob/533346cc374382b41ec5ff70536252b2e96e725c/src/cli/system/driver.rs#L77-L113","documentation":"The manager was explicitly requested (via --manager or a `manager:package` spec) and is marked disabled because it is excluded by the `system_packages.managers` setting. Because it was explicitly asked for, mise fails loudly instead of silently skipping (unlike aggregated managers, which are just skipped with a debug log).","triggerScenarios":"During a multi-manager run, a ManagerPlan has `disabled = true` (excluded by `system_packages.managers`) AND the dispatcher was given an explicit manager selection (`d.manager.is_some()`).","commonSituations":"Explicitly passing `--manager apt` while settings restrict managers to something else; using `apt:package` specs when apt is not in the enabled managers list.","solutions":["Add the manager to the `system_packages.managers` setting.","Remove the setting restriction so all managers are eligible.","Drop the explicit --manager / manager:package spec and use only enabled managers."],"exampleFix":"// before (settings.toml)\n[system_packages]\nmanagers = [\"brew\"]\n// command: mise system install --manager apt git\n// after\n[system_packages]\nmanagers = [\"brew\", \"apt\"]","handlingStrategy":"validation","validationCode":"const enabled = /* read system_packages.managers */ ['brew'];\nif (explicitManager && !enabled.includes(explicitManager)) { throw new Error(`manager '${explicitManager}' excluded by settings`); }","typeGuard":null,"tryCatchPattern":"try { await run('mise system install --manager apt git') } catch (e) { if (String(e).includes('is excluded by the system_packages.managers')) { /* update settings or use an enabled manager */ } }","preventionTips":["Only pass --manager for managers in system_packages.managers","Avoid manager:package specs for excluded managers","Audit settings after copying configs between machines"],"tags":["cli","system-packages","settings","manager"],"backgroundTag":"invalid-config-value","analyzedSha":"533346cc374382b41ec5ff70536252b2e96e725c","analyzedAt":"2026-09-17T13:35:38.149Z","contentChangedAt":"2026-09-17T13:35:38.149Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}