{"record":{"id":"5b0c9a9be702bf7f","repo":"jdx/mise","slug":"manager-name-is-excluded-by-the-system-package-5b0c9a","errorCode":null,"errorMessage":"manager '{name}' is excluded by the system_packages.managers setting (currently: {})","messagePattern":"manager '(.+?)' is excluded by the system_packages\\.managers setting \\(currently: (.+?)\\)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/system/mod.rs","lineNumber":1624,"sourceCode":"\nfn resolve_managers(\n    by_mgr: IndexMap<String, Vec<PackageRequest>>,\n    mut manager_options: IndexMap<String, ManagerPackageOptions>,\n    strict: bool,\n) -> eyre::Result<Vec<ManagerPackages>> {\n    let enabled = crate::config::Settings::get()\n        .system_packages\n        .managers\n        .clone();\n    let managers = packages::all_managers()\n        .into_iter()\n        .map(|manager| (manager.name().to_string(), manager))\n        .collect::<IndexMap<_, _>>();\n    let mut out = vec![];\n    for (name, requests) in by_mgr {\n        let disabled = enabled.as_ref().is_some_and(|e| !e.contains(&name));\n        if disabled && strict {\n            bail!(\n                \"manager '{name}' is excluded by the system_packages.managers setting \\\n                 (currently: {})\",\n                enabled.as_deref().unwrap_or_default().join(\", \")\n            );\n        }\n        match managers.get(&name) {\n            Some(manager) => out.push(ManagerPackages {\n                manager: manager.clone(),\n                requests,\n                options: manager_options.shift_remove(&name).unwrap_or_default(),\n                disabled,\n            }),\n            None => {\n                if strict {\n                    bail!(\n                        \"unknown bootstrap package manager '{name}' — install a package plugin: mise plugin install package:{name} <url>\"\n                    );\n                }","sourceCodeStart":1606,"sourceCodeEnd":1642,"githubUrl":"https://github.com/jdx/mise/blob/afd2eddd3a50c16190efc1c7e94404b48f72af57/src/system/mod.rs#L1606-L1642","documentation":"When the system_packages.managers setting limits which package managers are enabled, a requested manager not in that allow-list raises this error in strict mode. src/system/mod.rs:1624 checks enabled.contains(&name) and bails when the manager is excluded, reporting the currently enabled managers.","triggerScenarios":"A mise.toml (strict config load) declares system_packages under a manager (e.g. apt) that is not listed in the system_packages.managers setting; any config-driven package resolution that iterates by_mgr and finds disabled && strict.","commonSituations":"Shared team config installed on machines where system_packages.managers was narrowed (e.g. to [\"brew\"]) but the config still requests apt packages; trimming the managers list for CI and forgetting to remove or guard package entries; typos in the managers setting so the manager name doesn't match.","solutions":["Add the manager name to the system_packages.managers setting, e.g. managers = [\"brew\", \"apt\"]","Remove or move the offending package entries to an enabled manager","Fix the manager name spelling so it matches an enabled entry in the setting"],"exampleFix":"// before (mise.toml)\n[settings]\nsystem_packages.managers = [\"brew\"]\n[system_packages]\napt = [\"jq\"]\n// after\n[settings]\nsystem_packages.managers = [\"brew\", \"apt\"]\n[system_packages]\napt = [\"jq\"]","handlingStrategy":"validation","validationCode":"// before loading config, verify every requested manager is enabled\nlet enabled: Option<Vec<String>> = settings.system_packages_managers;\nlet requested = [\"brew\", \"apt\"]; // managers referenced in [system_packages]\nif let Some(enabled) = &enabled {\n    let missing: Vec<_> = requested.iter().filter(|m| !enabled.contains(m)).collect();\n    if !missing.is_empty() { panic!(\"managers not enabled: {missing:?}\"); }\n}","typeGuard":null,"tryCatchPattern":"match result {\n    Err(e) if e.to_string().contains(\"excluded by the system_packages.managers setting\") => {\n        // fall back to skipping system_packages for this manager\n    }\n    r => r?,\n}","preventionTips":["Keep the system_packages.managers list in sync with every manager used in [system_packages]","Guard platform-specific package entries with os/condition settings instead of narrowing the managers list globally","Re-run `mise config lint` (or a strict load) after editing managers settings"],"tags":["configuration","package-manager","allow-list","strict-mode"],"backgroundTag":"unsupported-config-value","analyzedSha":"afd2eddd3a50c16190efc1c7e94404b48f72af57","analyzedAt":"2026-09-09T01:38:25.179Z","contentChangedAt":"2026-09-09T01:38:25.179Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}