about summary refs log tree commit diff stats
path: root/pkgs/by-name/ya/yambar-modules/src/cpu.rs
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-11-29 18:48:07 +0100
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-11-29 18:48:07 +0100
commitcbd9aec4bf2e488156f5dc101271d572af0cd2ca (patch)
tree57c7b6397084c1c386aab1a25f1fa93e84480338 /pkgs/by-name/ya/yambar-modules/src/cpu.rs
parentfix(modules/lf/cmds/set_clipboard_path): Provide feedback to the user (diff)
downloadnixos-config-cbd9aec4bf2e488156f5dc101271d572af0cd2ca.zip
chore(pkgs/by-name/ya/{cpu,memory}): Merge
There is no reason to keep these two programs separate.
Diffstat (limited to 'pkgs/by-name/ya/yambar-modules/src/cpu.rs')
-rw-r--r--pkgs/by-name/ya/yambar-modules/src/cpu.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/pkgs/by-name/ya/yambar-modules/src/cpu.rs b/pkgs/by-name/ya/yambar-modules/src/cpu.rs
new file mode 100644
index 00000000..5a6dd084
--- /dev/null
+++ b/pkgs/by-name/ya/yambar-modules/src/cpu.rs
@@ -0,0 +1,21 @@
+use std::{thread, time::Duration};
+
+use sysinfo::{CpuExt, System, SystemExt};
+
+pub fn cpu() {
+    let mut sys = System::new();
+
+    loop {
+        sys.refresh_cpu();
+        let cpu_usage: f32 = sys.cpus().iter().map(|cpu| cpu.cpu_usage()).sum();
+        println!(
+            "cpu|range:0-100|{:.0}",
+            cpu_usage / sys.cpus().iter().count() as f32
+        );
+        println!();
+
+        // Sleeping to give the system time to run for long
+        // enough to have useful information.
+        thread::sleep(Duration::from_secs(3));
+    }
+}