From 1f6baefdc32ca1bafa1d9feeee488532ff6b38d9 Mon Sep 17 00:00:00 2001 From: Zach Crownover Date: Sat, 7 Oct 2023 17:13:26 -0700 Subject: [PATCH] Fix builds and runs on DragonFly BSD (#569) --- src/steps/os/dragonfly.rs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/steps/os/dragonfly.rs b/src/steps/os/dragonfly.rs index d98a997f..b2d45a7a 100644 --- a/src/steps/os/dragonfly.rs +++ b/src/steps/os/dragonfly.rs @@ -2,13 +2,14 @@ use crate::command::CommandExt; use crate::execution_context::ExecutionContext; use crate::terminal::print_separator; use crate::utils::{require_option, REQUIRE_SUDO}; +use crate::Step; use color_eyre::eyre::Result; 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.execute(sudo); + let mut cmd = ctx.run_type().execute(sudo); cmd.args(["/usr/local/sbin/pkg", "upgrade"]); if ctx.config().yes(Step::System) { cmd.arg("-y"); @@ -19,8 +20,13 @@ pub fn upgrade_packages(ctx: &ExecutionContext) -> Result<()> { pub fn audit_packages(ctx: &ExecutionContext) -> Result<()> { let sudo = require_option(ctx.sudo().as_ref(), REQUIRE_SUDO.to_string())?; println!(); - Command::new(sudo) + #[allow(clippy::disallowed_methods)] + if !Command::new(sudo) .args(["/usr/local/sbin/pkg", "audit", "-Fr"]) - .status_checked()?; + .status()? + .success() + { + println!("The package audit was successful, but vulnerable packages still remain on the system"); + } Ok(()) }