Morganamilo/paru · error
can not install conflicting packages with --noconfirm
Error message
can not install conflicting packages with --noconfirm
What it means
check_actions detects file or package conflicts within the planned transaction. Normally paru (like pacman) asks the user to confirm conflict resolution interactively (printing 'Conflicting packages will have to be confirmed manually'); when --noconfirm is set there is no way to answer, so it bails immediately instead of hanging or making unsafe default choices.
Solutions
- Remove --noconfirm and run interactively to answer conflict prompts
- Pre-resolve the conflict: remove the conflicting package first (`paru -R <conflicting-pkg> --noconfirm`)
- Use `--ask 4` style pacman conflict handling via pacman flags if appropriate
- Change your package set so no conflicts are present in one transaction
Example fix
// before $ paru -S newpkg --noconfirm # conflicts with oldpkg // after $ paru -R oldpkg --noconfirm && paru -S newpkg --noconfirm
Defensive patterns
Strategy: validation
Validate before calling
// dry-run first to detect conflicts before --noconfirm runs paru -S "$PKGS" --print-format '%n' >/dev/null || exit 1
Prevention
- Dry-run transactions in CI before running with --noconfirm
- Remove known conflicting packages in a separate step first
- Keep package sets minimal per transaction
When it happens
Trigger: Running e.g. `paru -S pkg1 pkg2 --noconfirm` where the planned install contains conflicting packages/files (conflicts/inner_conflicts non-empty) and config.no_confirm is true.
Common situations: CI/automation scripts using --noconfirm that pull in conflicting packages; installing a package that replaces/conflicts with an installed one; file conflicts between repo and AUR packages.
Understand the failure class
Background: Conflicting config options: "cannot be used together" — configuration validation errors across open-source libraries — this error's family across 162 libraries.
Related errors
- no local repo named
- no local repos configured, add one to your pacman.conf: …
- can not find local repo
- value can not be empty for key
- key ' ' does not belong to a section
AI-assisted analysis of Morganamilo/paru@9ac3578807 (2026-09-12).
Data as JSON: /api/errors/8b55cf573fd704b4.
Report an issue: GitHub.
Appendix: source
Thrown at src/install.rs:1471
eprint!(" ({})", conflict);
}
eprint!(" ");
}
eprintln!();
}
eprintln!();
}
if (!conflicts.is_empty() || !inner_conflicts.is_empty()) && !config.use_ask {
eprintln!(
"{} {}",
c.warning.paint("::"),
c.bold.paint(tr!(
"Conflicting packages will have to be confirmed manually"
))
);
if config.no_confirm {
bail!(tr!("can not install conflicting packages with --noconfirm"));
}
}
Ok((conflicts, inner_conflicts))
}
fn repo_install(
config: &Config,
install: &[RepoPackage],
conflicts: &HashSet<String>,
) -> Result<i32> {
if install.is_empty() {
return Ok(0);
}
let mut deps = Vec::new();
let mut exp = Vec::new();
View on GitHub (pinned to 9ac3578807)