made uninstalling multiple packages bearable

i18n
jnats 3 years ago
parent 22b29759a6
commit e40eea198d

@ -8,6 +8,7 @@ fn main() {
let args: Vec<String> = env::args().collect(); let args: Vec<String> = env::args().collect();
let homepath = std::env::var("HOME").unwrap(); let homepath = std::env::var("HOME").unwrap();
let cache_path = format!("/{}/.cache/ame/", homepath); let cache_path = format!("/{}/.cache/ame/", homepath);
let pkgs = env::args().skip(2).collect();
// args catch // args catch
if args.len() <= 1 { if args.len() <= 1 {
@ -19,7 +20,6 @@ fn main() {
// install // install
if oper == "-S" || oper == "-Sn" || oper == "ins" { if oper == "-S" || oper == "-Sn" || oper == "ins" {
let pkgs = env::args().skip(2).collect();
if oper == "-Sn" { if oper == "-Sn" {
inssort(true, pkgs); inssort(true, pkgs);
} else { } else {
@ -29,13 +29,9 @@ fn main() {
// remove // remove
} else if oper == "-R" || oper == "-Rn " || oper == "-Rsn" || oper == "-Rs" || oper == "rm" { } else if oper == "-R" || oper == "-Rn " || oper == "-Rsn" || oper == "-Rs" || oper == "rm" {
if oper == "-Rn" || oper == "-Rsn" { if oper == "-Rn" || oper == "-Rsn" {
for arg in env::args().skip(2) { uninstall(true, pkgs);
uninstall(true, &arg);
}
} else { } else {
for arg in env::args().skip(2) { uninstall(false, pkgs);
uninstall(false, &arg);
}
} }
// upgrade // upgrade

@ -1,25 +1,25 @@
use runas::Command; use runas::Command;
use crate::mods::strs::{err_unrec, sec, succ}; use crate::mods::strs::{err_unrec, sec, succ};
pub fn uninstall(noconfirm: bool, pkg: &str) { pub fn uninstall(noconfirm: bool, pkg: Vec<String>) {
sec(format!("Attempting to uninstall {}", pkg)); sec(format!("Attempting to uninstall packages: {}", &pkg.join(" ")));
if noconfirm == true { if noconfirm == true {
let result = Command::new("pacman").arg("-Rs").arg(&pkg).arg("--noconfirm").status(); let result = Command::new("pacman").arg("-Rs").args(&pkg).arg("--noconfirm").status();
match result { match result {
Ok(_) => { Ok(_) => {
succ(format!("Succesfully uninstalled {}", pkg)) succ(format!("Succesfully uninstalled packages: {}", &pkg.join(" ")))
} }
Err(_) => { Err(_) => {
err_unrec(format!("Couldn't uninstall {}", pkg)) err_unrec(format!("Couldn't uninstall packages: {}", &pkg.join(" ")))
}}; }};
} else { } else {
let result = Command::new("pacman").arg("-Rs").arg(&pkg).status(); let result = Command::new("pacman").arg("-Rs").args(&pkg).status();
match result { match result {
Ok(_) => { Ok(_) => {
succ(format!("Succesfully uninstalled {}", pkg)) succ(format!("Succesfully uninstalled packages: {}", &pkg.join(" ")))
} }
Err(_) => { Err(_) => {
err_unrec(format!("Couldn't uninstall {}", pkg)) err_unrec(format!("Couldn't uninstall packages: {}", &pkg.join(" ")))
}}; }};
} }
} }

Loading…
Cancel
Save