aboutsummaryrefslogtreecommitdiff
path: root/src/mem.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem.rs')
-rw-r--r--src/mem.rs77
1 files changed, 0 insertions, 77 deletions
diff --git a/src/mem.rs b/src/mem.rs
deleted file mode 100644
index 8245c29..0000000
--- a/src/mem.rs
+++ /dev/null
@@ -1,77 +0,0 @@
-use std::fs::File;
-use std::io::Read;
-
-use crate::load_config::Settings;
-
-//MemUsed = Memtotal + Shmem - MemFree - Buffers - Cached - SReclaimable
-pub fn mem(setting: &Settings) -> Result<String, std::io::Error> {
- let mut buf = String::new();
-
- File::open("/proc/meminfo")?.read_to_string(&mut buf)?;
-
- let mut mem_total: u32 = 0;
- let mut shmem: u32 = 0;
- let mut mem_free: u32 = 0;
- let mut mem_buffers: u32 = 0;
- let mut mem_cached: u32 = 0;
- let mut mem_srecl: u32 = 0;
-
- for line in buf.lines() {
- if mem_total > 0
- && shmem > 0
- && mem_free > 0
- && mem_buffers > 0
- && mem_cached > 0
- && mem_srecl > 0
- {
- break;
- }
- if line.starts_with("MemTotal") {
- assign_val(line, &mut mem_total);
- }
- if line.starts_with("SReclaimable") {
- assign_val(line, &mut mem_srecl)
- }
- if line.starts_with("Cached") {
- assign_val(line, &mut mem_cached)
- }
-
- if line.starts_with("Shmem") {
- assign_val(line, &mut shmem);
- }
-
- if line.starts_with("MemFree") {
- assign_val(line, &mut mem_free);
- }
- if line.starts_with("Buffers") {
- assign_val(line, &mut mem_buffers);
- }
- }
-
- let mem_used = (mem_total + shmem - mem_free - mem_buffers - mem_cached - mem_srecl) / 1024;
- let result: String;
- if mem_used > 1000 {
- result = format!(
- " {} {:.1}G {}",
- setting.memory.icon,
- mem_used as f32 / 1000.0,
- setting.seperator
- );
- } else {
- result = format!(
- " {} {}M {}",
- setting.memory.icon, mem_used, setting.seperator
- );
- }
- Ok(result)
-}
-
-fn assign_val(line: &str, assignable: &mut u32) {
- let parsed: u32 = line.split(':').collect::<Vec<&str>>()[1]
- .trim()
- .split(' ')
- .collect::<Vec<&str>>()[0]
- .parse()
- .unwrap();
- *assignable = parsed;
-}