From e6719dc6f593e2942a8610f45b8eaa3e56e15145 Mon Sep 17 00:00:00 2001 From: Mahesh Asolkar Date: Fri, 6 Jun 2025 17:48:35 -0700 Subject: [PATCH] Use available mem instead of free mem --- src/bar_modules/bar_module_memory.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/bar_modules/bar_module_memory.rs b/src/bar_modules/bar_module_memory.rs index 77be505..888fc1c 100644 --- a/src/bar_modules/bar_module_memory.rs +++ b/src/bar_modules/bar_module_memory.rs @@ -29,7 +29,7 @@ impl bar_modules::BarModuleActions for UnibarModuleMemory { fn generate_data(&mut self) { let path = Path::new("/proc/meminfo"); - // Contents of '/process/meminfo' has memory information + // Contents of '/proc/meminfo' has memory information let mut meminfo_file = match File::open(&path) { Err(why) => panic!("couldn't open {}: {}", path.display(), why), Ok(file) => file, @@ -48,12 +48,12 @@ impl bar_modules::BarModuleActions for UnibarModuleMemory { // -------------------- // MemTotal: 7822812 kB\nMemFree: 399244 kB\nMemAvailable: 3986504 kB fn get_content(&self) -> String { - let re = Regex::new(r"MemTotal:\s+(\d+)\s+kB\nMemFree:\s+(\d+)").unwrap(); + let re = Regex::new(r"MemTotal:\s+(\d+)\s+kB\nMemFree:\s+(\d+)\s+kB\nMemAvailable:\s+(\d+)").unwrap(); let caps = re.captures(self.meminfo_str.as_str()).unwrap(); let total_mem :f32 = caps.get(1).unwrap().as_str().parse::().unwrap(); - let free_mem :f32 = caps.get(2).unwrap().as_str().parse::().unwrap(); - return format!("{}%", ((total_mem - free_mem)/total_mem * 100.0).ceil() as i32); + let avail_mem :f32 = caps.get(3).unwrap().as_str().parse::().unwrap(); + return format!("{}%", ((total_mem - avail_mem)/total_mem * 100.0).ceil() as i32); } // --------------------