diff --git a/crates/install/src/main.rs b/crates/install/src/main.rs index 183553db..c67921e8 100644 --- a/crates/install/src/main.rs +++ b/crates/install/src/main.rs @@ -2,19 +2,16 @@ use std::{ fs, io::Cursor, path::{Path, PathBuf}, - process::Command, time::SystemTime, }; use base64::{engine::general_purpose, Engine}; use clap::{Parser, ValueEnum}; use dialoguer::{console::Term, theme::ColorfulTheme, Input, Select}; -use flate2::bufread::GzDecoder; use openssl::rsa::Rsa; use pwhash::sha512_crypt; use rand::{distributions::Alphanumeric, thread_rng, Rng}; use rusqlite::{Connection, OpenFlags}; -use tar::Archive; const CFG_COMMON: &str = include_str!("../../../resources/config/common.toml"); const CFG_DIRECTORY: &str = include_str!("../../../resources/config/directory.toml"); @@ -315,8 +312,9 @@ fn main() -> std::io::Result<()> { }) { Ok(Ok(bytes)) => { #[cfg(not(target_env = "msvc"))] - if let Err(err) = Archive::new(GzDecoder::new(Cursor::new(bytes))) - .unpack(base_path.join("bin")) + if let Err(err) = + tar::Archive::new(flate2::bufread::GzDecoder::new(Cursor::new(bytes))) + .unpack(base_path.join("bin")) { eprintln!("❌ Failed to unpack {}: {}", url, err); return Ok(()); @@ -435,14 +433,14 @@ fn main() -> std::io::Result<()> { // Change permissions #[cfg(not(target_env = "msvc"))] { - let mut cmd = Command::new("chown"); + let mut cmd = std::process::Command::new("chown"); cmd.arg("-R") .arg(format!("{}:{}", ACCOUNT_NAME, ACCOUNT_NAME)) .arg(&base_path); if let Err(err) = cmd.status() { eprintln!("Warning: Failed to set permissions: {}", err); } - let mut cmd = Command::new("chmod"); + let mut cmd = std::process::Command::new("chmod"); cmd.arg("-R") .arg("770") .arg(&format!("{}/etc", base_path.display())) @@ -470,12 +468,12 @@ fn main() -> std::io::Result<()> { .replace("__TITLE__", component.name()), ) { Ok(_) => { - if let Err(err) = Command::new("/bin/systemctl") + if let Err(err) = std::process::Command::new("/bin/systemctl") .arg("enable") .arg(service_file) .status() .and_then(|_| { - Command::new("/bin/systemctl") + std::process::Command::new("/bin/systemctl") .arg("restart") .arg(&service_name) .status() @@ -504,18 +502,18 @@ fn main() -> std::io::Result<()> { .replace("__TITLE__", component.name()), ) { Ok(_) => { - if let Err(err) = Command::new("launchctl") + if let Err(err) = std::process::Command::new("launchctl") .arg("load") .arg(service_file) .status() .and_then(|_| { - Command::new("launchctl") + std::process::Command::new("launchctl") .arg("enable") .arg(&service_name) .status() }) .and_then(|_| { - Command::new("launchctl") + std::process::Command::new("launchctl") .arg("start") .arg(&service_name) .status()