Use dnf in fedora (fixes #20)

This commit is contained in:
Roey Darwish Dror
2018-06-09 20:03:51 +03:00
parent 228a131185
commit 59de02b8cf
2 changed files with 19 additions and 3 deletions

View File

@@ -147,9 +147,8 @@ fn main() -> Result<(), Error> {
Ok(distribution) => {
match distribution {
linux::Distribution::Arch => upgrade_arch_linux(&sudo, &terminal),
linux::Distribution::CentOS | linux::Distribution::Fedora => {
upgrade_redhat(&sudo, &terminal)
}
linux::Distribution::CentOS => upgrade_redhat(&sudo, &terminal),
linux::Distribution::Fedora => upgrade_fedora(&sudo, &terminal),
linux::Distribution::Ubuntu | linux::Distribution::Debian => {
upgrade_debian(&sudo, &terminal)
}

View File

@@ -189,6 +189,23 @@ pub fn upgrade_redhat(
Ok(())
}
pub fn upgrade_fedora(
sudo: &Result<PathBuf, which::Error>,
terminal: &Terminal,
) -> Result<(), failure::Error> {
if let Ok(sudo) = &sudo {
Command::new(&sudo)
.args(&["dnf", "upgrade"])
.spawn()?
.wait()?
.check()?;
} else {
terminal.print_warning("No sudo detected. Skipping system upgrade");
}
Ok(())
}
pub fn upgrade_debian(
sudo: &Result<PathBuf, which::Error>,
terminal: &Terminal,