diff --git a/osupdater/src/main.rs b/osupdater/src/main.rs
index acb91a0..654c0a6 100644
--- a/osupdater/src/main.rs
+++ b/osupdater/src/main.rs
@@ -13,20 +13,22 @@ fn trim_newline(s: &mut String) {
fn main() {
{
+ //Clear termianl, and move cursor to 1,1 inside the terminal
+ print!("{esc}[2J{esc}[1;1H", esc = 27 as char);
+
// Tell user that we are going to start the update procedure
- cprintln!("osupdater : rust edition\n");
- cprintln!("This tool will locate any package managers on your system and run the update tool appropriate to it.\n");
- cprintln!("Looking for native package managers.\n");
+ cprintln!("osupdater : rust edition -- This tool will locate and run any package managers on your system.\n");
+ cprintln!("Looking for native package managers.\n");
let find_sudo = Command::new("which")
.arg("sudo").stdout(Stdio::piped()).output().unwrap();
let mut sudo_bin = String::from_utf8(find_sudo.stdout).unwrap();
trim_newline(&mut sudo_bin);
-
+
let find_apt = Command::new("which")
.arg("apt").stdout(Stdio::piped()).output().unwrap();
let mut apt_bin = String::from_utf8(find_apt.stdout).unwrap();
trim_newline(&mut apt_bin);
-
+
let find_dnf5 = Command::new("which")
.arg("dnf5").stdout(Stdio::piped()).output().unwrap();
let mut dnf5_bin = String::from_utf8(find_dnf5.stdout).unwrap();
@@ -46,12 +48,12 @@ fn main() {
.arg("urpmi").stdout(Stdio::piped()).output().unwrap();
let mut urpmi_bin = String::from_utf8(find_urpmi.stdout).unwrap();
trim_newline(&mut urpmi_bin);
-
+
let find_zypper = Command::new("which")
.arg("zypper").stdout(Stdio::piped()).output().unwrap();
let mut zypper_bin = String::from_utf8(find_zypper.stdout).unwrap();
trim_newline(&mut zypper_bin);
-
+
let find_flatpak = Command::new("which")
.arg("flatpak").stdout(Stdio::piped()).output().unwrap();
let mut flatpak_bin = String::from_utf8(find_flatpak.stdout).unwrap();
@@ -60,36 +62,36 @@ fn main() {
let find_snap = Command::new("which")
.arg("snap").stdout(Stdio::piped()).output().unwrap();
let mut snap_bin = String::from_utf8(find_snap.stdout).unwrap();
- trim_newline(&mut snap_bin);
-
+ trim_newline(&mut snap_bin);
+
let find_pip_review = Command::new("which")
.arg("pip-review").stdout(Stdio::piped()).output().unwrap();
- let mut pip_review_bin = String::from_utf8(find_pip_review.stdout).unwrap();
+ let mut pip_review_bin = String::from_utf8(find_pip_review.stdout).unwrap();
trim_newline(&mut pip_review_bin);
-
+
//apt
- cprintln!("Checking for apt");
let path = Path::new(&apt_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating via: apt");
+ let mut cmd =
Command::new(&sudo_bin)
.arg(&apt_bin).arg("update").arg("-y")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
let _output = cmd.wait();
- let mut cmd =
+ let mut cmd =
Command::new(&sudo_bin)
.arg(&apt_bin).arg("upgrade").arg("-y")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
let _output = cmd.wait();
}
-
+
// dnf
- cprintln!("Checking for dnf");
let path = Path::new(&dnf_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating via: dnf");
+ let mut cmd =
Command::new(&sudo_bin)
.arg(&dnf_bin).arg("--refresh").arg("--skip-broken").arg("--nobest").arg("-y").arg("update")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
@@ -98,9 +100,9 @@ fn main() {
}
// dnf5
- cprintln!("Checking for dnf5");
let path = Path::new(&dnf5_bin);
if path.exists(){
+ cprintln!("Updating via: dnf5");
let mut cmd =
Command::new(&sudo_bin)
.arg(&dnf5_bin).arg("--refresh").arg("--skip-broken").arg("--nobest").arg("-y").arg("update")
@@ -110,99 +112,99 @@ fn main() {
}
// pacman
- cprintln!("Checking for pacman");
let path = Path::new(&pacman_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating via: pacman");
+ let mut cmd =
Command::new(&sudo_bin)
.arg(&pacman_bin).arg("-Syu")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
let _output = cmd.wait();
}
-
+
// urpmi
- cprintln!("Checking for urpmi");
let path = Path::new(&urpmi_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating via urpmi");
+ let mut cmd =
Command::new(&sudo_bin)
.arg(&urpmi_bin).arg("--auto-update").arg("-y")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
let _output = cmd.wait();
}
-
+
// zypper
- cprintln!("Checking for zypper");
let path = Path::new(&zypper_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating via: zypper");
+ let mut cmd =
Command::new(&sudo_bin)
.arg(&zypper_bin).arg("in").arg("-y")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
let _output = cmd.wait();
}
-
+
// Check container formats
- cprintln!("Checking application containers");
-
-
+ cprintln!("Checking application containers");
+
+
// flatpak
- cprintln!("Checking for user flatpak installs");
let path = Path::new(&flatpak_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating user flatpak installs");
+ let mut cmd =
Command::new(&flatpak_bin)
.arg("update").arg("--user").arg("-y")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
- let _output = cmd.wait();
+ let _output = cmd.wait();
}
- cprintln!("Checking for system flatpak installs");
let path = Path::new(&flatpak_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating system flatpak installs");
+ let mut cmd =
Command::new(&sudo_bin)
.arg(&flatpak_bin).arg("update").arg("-y")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
- let _output = cmd.wait();
+ let _output = cmd.wait();
}
// snap
- cprintln!("Checking for user snap installation");
let path = Path::new(&snap_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating user snap installation");
+ let mut cmd =
Command::new(&snap_bin)
.arg("refresh").arg("-y")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
- let _output = cmd.wait();
+ let _output = cmd.wait();
}
- cprintln!("Checking for system snap installation");
let path = Path::new(&snap_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating system snap installation");
+ let mut cmd =
Command::new(&sudo_bin)
.arg(&snap_bin).arg("refresh").arg("-y")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
- let _output = cmd.wait();
- }
-
+ let _output = cmd.wait();
+ }
+
//Python
- cprintln!("Updating Python user installation via pip-review");
let path = Path::new(&pip_review_bin);
if path.exists(){
- let mut cmd =
+ cprintln!("Updating Python user installation via pip-review");
+ let mut cmd =
Command::new(&pip_review_bin)
.arg("--auto").arg("--local").arg("--user")
.stdout(Stdio::inherit()).stderr(Stdio::inherit())
.spawn().unwrap();
let _output = cmd.wait();
}
- }
+ }
}
diff --git a/osupdater/src/main.rs.backup b/osupdater/src/main.rs.backup
deleted file mode 100644
index 4630cd7..0000000
--- a/osupdater/src/main.rs.backup
+++ /dev/null
@@ -1,191 +0,0 @@
-use std::process::{Command, Stdio};
-use std::path::Path;
-use color_print::cprintln;
-
-fn trim_newline(s: &mut String) {
- if s.ends_with('\n') {
- s.pop();
- if s.ends_with('\r') {
- s.pop();
- }
- }
-}
-
-fn main() {
- {
- // Tell user that we are going to start the update procedure
- cprintln!("osupdater : rust edition\n");
- cprintln!("This tool will locate any package managers on your system and run the update tool appropriate to it.\n");
- cprintln!("Looking for native package managers.\n");
- let find_sudo = Command::new("which")
- .arg("sudo").stdout(Stdio::piped()).output().unwrap();
- let mut sudo_bin = String::from_utf8(find_sudo.stdout).unwrap();
- trim_newline(&mut sudo_bin);
-
- let find_apt = Command::new("which")
- .arg("apt").stdout(Stdio::piped()).output().unwrap();
- let mut apt_bin = String::from_utf8(find_apt.stdout).unwrap();
- trim_newline(&mut apt_bin);
-
- let find_dnf = Command::new("which")
- .arg("dnf").stdout(Stdio::piped()).output().unwrap();
- let mut dnf_bin = String::from_utf8(find_dnf.stdout).unwrap();
- trim_newline(&mut dnf_bin);
-
- let find_pacman = Command::new("which")
- .arg("pacman").stdout(Stdio::piped()).output().unwrap();
- let mut pacman_bin = String::from_utf8(find_pacman.stdout).unwrap();
- trim_newline(&mut pacman_bin);
-
- let find_urpmi = Command::new("which")
- .arg("urpmi").stdout(Stdio::piped()).output().unwrap();
- let mut urpmi_bin = String::from_utf8(find_urpmi.stdout).unwrap();
- trim_newline(&mut urpmi_bin);
-
- let find_zypper = Command::new("which")
- .arg("zypper").stdout(Stdio::piped()).output().unwrap();
- let mut zypper_bin = String::from_utf8(find_zypper.stdout).unwrap();
- trim_newline(&mut zypper_bin);
-
- let find_flatpak = Command::new("which")
- .arg("flatpak").stdout(Stdio::piped()).output().unwrap();
- let mut flatpak_bin = String::from_utf8(find_flatpak.stdout).unwrap();
- trim_newline(&mut flatpak_bin);
-
- let find_snap = Command::new("which")
- .arg("snap").stdout(Stdio::piped()).output().unwrap();
- let mut snap_bin = String::from_utf8(find_snap.stdout).unwrap();
- trim_newline(&mut snap_bin);
-
- let find_pip_review = Command::new("which")
- .arg("pip-review").stdout(Stdio::piped()).output().unwrap();
- let mut pip_review_bin = String::from_utf8(find_pip_review.stdout).unwrap();
- trim_newline(&mut pip_review_bin);
-
- //apt
- cprintln!("Checking for apt");
- let path = Path::new(&apt_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&sudo_bin)
- .arg(&apt_bin).arg("update").arg("-y")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- let mut cmd =
- Command::new(&sudo_bin)
- .arg(&apt_bin).arg("upgrade").arg("-y")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
-
- // dnf
- cprintln!("hecking for dnf");
- let path = Path::new(&dnf_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&sudo_bin)
- .arg(&dnf_bin).arg("--refresh").arg("--skip-broken").arg("--nobest").arg("-y").arg("update")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
-
- // pacman
- cprintln!("Checking for pacman");
- let path = Path::new(&pacman_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&sudo_bin)
- .arg(&pacman_bin).arg("-Syu")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
-
- // urpmi
- cprintln!("Checking for urpmi");
- let path = Path::new(&urpmi_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&sudo_bin)
- .arg(&urpmi_bin).arg("--auto-update").arg("-y")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
-
- // zypper
- cprintln!("Checking for zypper");
- let path = Path::new(&zypper_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&sudo_bin)
- .arg(&zypper_bin).arg("in").arg("-y")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
-
- // Check container formats
- cprintln!("Checking application containers");
-
-
- // flatpak
- cprintln!("Checking for user flatpak installs");
- let path = Path::new(&flatpak_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&flatpak_bin)
- .arg("update").arg("--user").arg("-y")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
- cprintln!("Checking for system flatpak installs");
- let path = Path::new(&flatpak_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&sudo_bin)
- .arg(&flatpak_bin).arg("update").arg("-y")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
-
- // snap
- cprintln!("Checking for user snap installation");
- let path = Path::new(&snap_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&snap_bin)
- .arg("refresh").arg("-y")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
- cprintln!("Checking for system snap installation");
- let path = Path::new(&snap_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&sudo_bin)
- .arg(&snap_bin).arg("refresh").arg("-y")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
-
- //Python
- cprintln!("Updating Python user installation via pip-review");
- let path = Path::new(&pip_review_bin);
- if path.exists(){
- let mut cmd =
- Command::new(&pip_review_bin)
- .arg("--auto").arg("--local").arg("--user")
- .stdout(Stdio::inherit()).stderr(Stdio::inherit())
- .spawn().unwrap();
- let _output = cmd.wait();
- }
- }
-}