{"record":{"id":"948e1d2a98f346a2","repo":"jdx/mise","slug":"manager-is-excluded-by-the-system-packages-ma","errorCode":null,"errorMessage":"manager '{}' is excluded by the system_packages.managers setting","messagePattern":"manager '(.+?)' is excluded by the system_packages\\.managers setting","errorType":"validation","errorClass":"eyre::Report","httpStatus":null,"severity":"error","filePath":"src/cli/system/import.rs","lineNumber":78,"sourceCode":"    #[clap(\n        long,\n        short,\n        visible_alias = \"file\",\n        value_name = \"PATH\",\n        conflicts_with = \"global\"\n    )]\n    path: Option<PathBuf>,\n}\n\nimpl SystemImport {\n    pub async fn run(self) -> Result<()> {\n        if Settings::get()\n            .system_packages\n            .managers\n            .as_ref()\n            .is_some_and(|enabled| !enabled.contains(&self.manager))\n        {\n            bail!(\n                \"manager '{}' is excluded by the system_packages.managers setting\",\n                self.manager\n            );\n        }\n        self.run_brew().await\n    }\n\n    #[cfg(unix)]\n    async fn run_brew(self) -> Result<()> {\n        debug_assert_eq!(self.manager, \"brew\");\n        let manager = brew::BrewManager::new();\n        if !manager.is_available() {\n            bail!(\"brew is not available: {}\", manager.unavailable_reason());\n        }\n        let formulae = brew::linked_formulae(self.all)?;\n        if formulae.is_empty() {\n            info!(\"brew: no installed formulae to import\");\n            return Ok(());","sourceCodeStart":60,"sourceCodeEnd":96,"githubUrl":"https://github.com/jdx/mise/blob/9dcfcaa0dc8747a2577d3270b69bb9d8313b2807/src/cli/system/import.rs#L60-L96","documentation":"`mise system import <manager>` re-reads the system_packages.managers allow-list before importing. If the setting is set and does not contain the requested manager, the import is refused up front — importing packages into a config that will then ignore that manager would be misleading.","triggerScenarios":"Running `mise system import brew` when settings contain `system_packages.managers` without \"brew\" in the list (is_some_and(!contains)). A None (unset) managers setting never triggers this.","commonSituations":"Restricting managers to apt/dnf system-wide then trying to import from brew; stale global settings after switching package managers; shared team config that excludes brew while a macOS dev runs the import.","solutions":["Add the manager to the list: `mise settings set system_packages.managers brew,...` then re-run the import","Or unset the restriction: `mise settings unset system_packages.managers`","Verify current value first: `mise settings get system_packages.managers`"],"exampleFix":"# before\n# system_packages.managers = [\"apt\"]\nmise system import brew   # fails\n\n# after\nmise settings set system_packages.managers apt,brew\nmise system import brew","handlingStrategy":"validation","validationCode":"# bash: confirm the manager passes the allow-list before importing\nenabled=$(mise settings get system_packages.managers 2>/dev/null || true)\n[[ -z \"$enabled\" || \", $enabled, \" == *\", $MGR,\"* ]] || { echo \"$MGR excluded: $enabled\" >&2; exit 2; }\nmise system import \"$MGR\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Check the allow-list whenever system_packages.managers is set and imports are part of setup","Prefer unsetting the restriction on dev machines that need to import from any manager"],"tags":["system-packages","import","settings","brew"],"backgroundTag":"config-excluded-package-manager","analyzedSha":"9dcfcaa0dc8747a2577d3270b69bb9d8313b2807","analyzedAt":"2026-08-17T14:28:50.624Z","schemaVersion":2},"datasetVersion":"2026-08-21T18:17:14.833Z"}