diff --git a/src/main.rs b/src/main.rs index 7763263..422f581 100644 --- a/src/main.rs +++ b/src/main.rs @@ -76,7 +76,7 @@ fn main() -> Result<()> { std::process::exit(1); } - let packages_diff = DiffRoot::new(lix_exe, &before, &after)?; + let packages_diff = DiffRoot::new(lix_exe.as_deref(), &before, &after)?; let mut packages: PackageListDiff = PackageListDiff::new(); packages.by_size = args.size; packages.from_diff_root(packages_diff); diff --git a/src/parser.rs b/src/parser.rs index 4c83058..b4c2e41 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -1,12 +1,7 @@ use color_eyre::Result; use serde::Deserialize; use serde::de::Deserializer; -use std::{ - borrow::Cow, - collections::BTreeMap, - path::{Path, PathBuf}, - process::Command, -}; +use std::{borrow::Cow, collections::BTreeMap, path::Path, process::Command}; #[derive(Deserialize, Debug)] pub struct DiffRoot { @@ -46,12 +41,12 @@ where } impl DiffRoot { - pub fn new(lix_path: Option, before: &Path, after: &Path) -> Result { + pub fn new(lix_path: Option<&Path>, before: &Path, after: &Path) -> Result { let lix_exe; if let Some(lix_path) = lix_path { lix_exe = lix_path; } else { - lix_exe = "nix".into(); + lix_exe = Path::new("nix"); } let raw_diff = Command::new(lix_exe)