Don't pass relative paths to sudo (fixes #43)
This commit is contained in:
14
src/linux.rs
14
src/linux.rs
@@ -70,7 +70,7 @@ It's dangerous to run yay since Python based AUR packages will be installed in t
|
|||||||
} else {
|
} else {
|
||||||
if let Some(sudo) = &sudo {
|
if let Some(sudo) = &sudo {
|
||||||
Command::new(&sudo)
|
Command::new(&sudo)
|
||||||
.args(&["pacman", "-Syu"])
|
.args(&["/usr/bin/pacman", "-Syu"])
|
||||||
.spawn()?
|
.spawn()?
|
||||||
.wait()?
|
.wait()?
|
||||||
.check()?;
|
.check()?;
|
||||||
@@ -88,7 +88,7 @@ pub fn upgrade_redhat(
|
|||||||
) -> Result<(), failure::Error> {
|
) -> Result<(), failure::Error> {
|
||||||
if let Some(sudo) = &sudo {
|
if let Some(sudo) = &sudo {
|
||||||
Command::new(&sudo)
|
Command::new(&sudo)
|
||||||
.args(&["yum", "upgrade"])
|
.args(&["/usr/bin/yum", "upgrade"])
|
||||||
.spawn()?
|
.spawn()?
|
||||||
.wait()?
|
.wait()?
|
||||||
.check()?;
|
.check()?;
|
||||||
@@ -105,7 +105,7 @@ pub fn upgrade_fedora(
|
|||||||
) -> Result<(), failure::Error> {
|
) -> Result<(), failure::Error> {
|
||||||
if let Some(sudo) = &sudo {
|
if let Some(sudo) = &sudo {
|
||||||
Command::new(&sudo)
|
Command::new(&sudo)
|
||||||
.args(&["dnf", "upgrade"])
|
.args(&["/usr/bin/dnf", "upgrade"])
|
||||||
.spawn()?
|
.spawn()?
|
||||||
.wait()?
|
.wait()?
|
||||||
.check()?;
|
.check()?;
|
||||||
@@ -122,13 +122,13 @@ pub fn upgrade_debian(
|
|||||||
) -> Result<(), failure::Error> {
|
) -> Result<(), failure::Error> {
|
||||||
if let Some(sudo) = &sudo {
|
if let Some(sudo) = &sudo {
|
||||||
Command::new(&sudo)
|
Command::new(&sudo)
|
||||||
.args(&["apt", "update"])
|
.args(&["/usr/bin/apt", "update"])
|
||||||
.spawn()?
|
.spawn()?
|
||||||
.wait()?
|
.wait()?
|
||||||
.check()?;
|
.check()?;
|
||||||
|
|
||||||
Command::new(&sudo)
|
Command::new(&sudo)
|
||||||
.args(&["apt", "dist-upgrade"])
|
.args(&["/usr/bin/apt", "dist-upgrade"])
|
||||||
.spawn()?
|
.spawn()?
|
||||||
.wait()?
|
.wait()?
|
||||||
.check()?;
|
.check()?;
|
||||||
@@ -139,9 +139,9 @@ pub fn upgrade_debian(
|
|||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn run_needrestart(sudo: &PathBuf) -> Result<(), failure::Error> {
|
pub fn run_needrestart(sudo: &PathBuf, needrestart: &PathBuf) -> Result<(), failure::Error> {
|
||||||
Command::new(&sudo)
|
Command::new(&sudo)
|
||||||
.arg("needrestart")
|
.arg(needrestart)
|
||||||
.spawn()?
|
.spawn()?
|
||||||
.wait()?
|
.wait()?
|
||||||
.check()?;
|
.check()?;
|
||||||
|
|||||||
@@ -231,9 +231,9 @@ fn run() -> Result<(), Error> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if let Some(sudo) = &sudo {
|
if let Some(sudo) = &sudo {
|
||||||
if let Some(_) = utils::which("needrestart") {
|
if let Some(needrestart) = utils::which("needrestart") {
|
||||||
terminal.print_separator("Check for needed restarts");
|
terminal.print_separator("Check for needed restarts");
|
||||||
linux::run_needrestart(&sudo).report("Restarts", &mut reports);
|
linux::run_needrestart(&sudo, &needrestart).report("Restarts", &mut reports);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user