Files
topgrade/src/steps/os/dragonfly.rs

33 lines
1.1 KiB
Rust
Raw Normal View History

use crate::command::CommandExt;
use crate::execution_context::ExecutionContext;
2019-06-25 22:47:36 -07:00
use crate::terminal::print_separator;
use crate::utils::{require_option, REQUIRE_SUDO};
use crate::Step;
2022-11-11 09:39:29 -05:00
use color_eyre::eyre::Result;
2019-06-25 22:47:36 -07:00
use std::process::Command;
pub fn upgrade_packages(ctx: &ExecutionContext) -> Result<()> {
let sudo = require_option(ctx.sudo().as_ref(), REQUIRE_SUDO.to_string())?;
print_separator("DragonFly BSD Packages");
let mut cmd = ctx.run_type().execute(sudo);
cmd.args(["/usr/local/sbin/pkg", "upgrade"]);
if ctx.config().yes(Step::System) {
cmd.arg("-y");
}
cmd.status_checked()
2019-06-25 22:47:36 -07:00
}
pub fn audit_packages(ctx: &ExecutionContext) -> Result<()> {
let sudo = require_option(ctx.sudo().as_ref(), REQUIRE_SUDO.to_string())?;
println!();
#[allow(clippy::disallowed_methods)]
if !Command::new(sudo)
.args(["/usr/local/sbin/pkg", "audit", "-Fr"])
.status()?
.success()
{
println!("The package audit was successful, but vulnerable packages still remain on the system");
}
2019-06-25 22:47:36 -07:00
Ok(())
}