aboutsummaryrefslogtreecommitdiff
path: root/src/utils/disk.rs
diff options
context:
space:
mode:
authormustafa salih <mustafasalih1991@gmail.com>2021-01-14 05:41:01 +0300
committermustafa salih <mustafasalih1991@gmail.com>2021-01-14 05:41:01 +0300
commit6a349a0e0282e56b03adbe02b41bfaf0cc3213f1 (patch)
treeacdd23279a8fc837fa076739933b1269d74110fd /src/utils/disk.rs
parente829871f2d757c7414763992839a584038c7b443 (diff)
orginized the code to seprated mods and deleted the lib file
Diffstat (limited to 'src/utils/disk.rs')
-rw-r--r--src/utils/disk.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/utils/disk.rs b/src/utils/disk.rs
new file mode 100644
index 0000000..82785b4
--- /dev/null
+++ b/src/utils/disk.rs
@@ -0,0 +1,18 @@
+use crate::types::Config;
+
+// getting disk usage
+pub fn get_disk(config: &Config) -> String {
+ const GB: u64 = (1024 * 1024) * 1024;
+ let statvfs = nix::sys::statvfs::statvfs("/").unwrap();
+ let mut disk_used = String::new();
+
+ let total = (statvfs.blocks() * statvfs.fragment_size()) / GB;
+ let available = (statvfs.blocks_free() * statvfs.fragment_size()) / GB;
+ let used = total - available;
+
+ disk_used.push_str(&format!("{}G", used));
+ format!(
+ " {} {} {}",
+ config.disk.icon, disk_used, config.seperator
+ )
+}