Use dnf in fedora (fixes #20)
This commit is contained in:
@@ -147,9 +147,8 @@ fn main() -> Result<(), Error> {
|
|||||||
Ok(distribution) => {
|
Ok(distribution) => {
|
||||||
match distribution {
|
match distribution {
|
||||||
linux::Distribution::Arch => upgrade_arch_linux(&sudo, &terminal),
|
linux::Distribution::Arch => upgrade_arch_linux(&sudo, &terminal),
|
||||||
linux::Distribution::CentOS | linux::Distribution::Fedora => {
|
linux::Distribution::CentOS => upgrade_redhat(&sudo, &terminal),
|
||||||
upgrade_redhat(&sudo, &terminal)
|
linux::Distribution::Fedora => upgrade_fedora(&sudo, &terminal),
|
||||||
}
|
|
||||||
linux::Distribution::Ubuntu | linux::Distribution::Debian => {
|
linux::Distribution::Ubuntu | linux::Distribution::Debian => {
|
||||||
upgrade_debian(&sudo, &terminal)
|
upgrade_debian(&sudo, &terminal)
|
||||||
}
|
}
|
||||||
|
|||||||
17
src/steps.rs
17
src/steps.rs
@@ -189,6 +189,23 @@ pub fn upgrade_redhat(
|
|||||||
Ok(())
|
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(
|
pub fn upgrade_debian(
|
||||||
sudo: &Result<PathBuf, which::Error>,
|
sudo: &Result<PathBuf, which::Error>,
|
||||||
terminal: &Terminal,
|
terminal: &Terminal,
|
||||||
|
|||||||
Reference in New Issue
Block a user