jdx/mise · error · eyre::Report
manager '{}' is excluded by the system_packages.managers set
Error message
manager '{}' is excluded by the system_packages.managers setting What it means
`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.
Source
Thrown at src/cli/system/import.rs:78
#[clap(
long,
short,
visible_alias = "file",
value_name = "PATH",
conflicts_with = "global"
)]
path: Option<PathBuf>,
}
impl SystemImport {
pub async fn run(self) -> Result<()> {
if Settings::get()
.system_packages
.managers
.as_ref()
.is_some_and(|enabled| !enabled.contains(&self.manager))
{
bail!(
"manager '{}' is excluded by the system_packages.managers setting",
self.manager
);
}
self.run_brew().await
}
#[cfg(unix)]
async fn run_brew(self) -> Result<()> {
debug_assert_eq!(self.manager, "brew");
let manager = brew::BrewManager::new();
if !manager.is_available() {
bail!("brew is not available: {}", manager.unavailable_reason());
}
let formulae = brew::linked_formulae(self.all)?;
if formulae.is_empty() {
info!("brew: no installed formulae to import");
return Ok(());View on GitHub (pinned to 9dcfcaa0dc)
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`
Example fix
# before # system_packages.managers = ["apt"] mise system import brew # fails # after mise settings set system_packages.managers apt,brew mise system import brew
Defensive patterns
Strategy: validation
Validate before calling
# bash: confirm the manager passes the allow-list before importing
enabled=$(mise settings get system_packages.managers 2>/dev/null || true)
[[ -z "$enabled" || ", $enabled, " == *", $MGR,"* ]] || { echo "$MGR excluded: $enabled" >&2; exit 2; }
mise system import "$MGR" Prevention
- 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
When it happens
Trigger: 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.
Common situations: 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.
Related errors
- brew is not available: {}
- brew import is not supported on windows
- manager '{}' is excluded by the system_packages.managers set
- manager '{only}' is excluded by the system_packages.managers
- manager '{name}' is excluded by the system_packages.managers
AI-assisted analysis of jdx/mise@9dcfcaa0dc (2026-08-17).
Data as JSON: /api/errors/948e1d2a98f346a2.
Report an issue: GitHub.