aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/i3blocks/.local/bin/i3blocks-disk
diff options
context:
space:
mode:
authorToby Vincent <tobyv@tobyvin.dev>2024-10-07 13:30:57 -0500
committerToby Vincent <tobyv@tobyvin.dev>2024-10-07 13:30:57 -0500
commite842d34c9ae3a48a78bbcaa5b9fc58216e1d49a6 (patch)
tree9b3b9c8883f5536fddf736a93c29e3dc1dab9446 /i3blocks/.local/bin/i3blocks-disk
parent59dcb091288d60e8c2d2e352711b72f4beeb1ddf (diff)
refactor(i3blocks): move i3blocks to bin dir
Diffstat (limited to 'i3blocks/.local/bin/i3blocks-disk')
-rwxr-xr-xi3blocks/.local/bin/i3blocks-disk28
1 files changed, 28 insertions, 0 deletions
diff --git a/i3blocks/.local/bin/i3blocks-disk b/i3blocks/.local/bin/i3blocks-disk
new file mode 100755
index 0000000..a98a40c
--- /dev/null
+++ b/i3blocks/.local/bin/i3blocks-disk
@@ -0,0 +1,28 @@
+#!/usr/bin/env python3
+
+import os
+
+ICON = "\U000f02ca" # 󰋊
+GB = 1073741824
+
+
+def main():
+ statvfs = os.statvfs("/")
+ avail = bytes = statvfs.f_bavail * statvfs.f_frsize
+
+ for unit in ["B", "KB", "MB", "GB", "TB", "PB"]:
+ if avail < 1024.0 or unit == "PB":
+ break
+ avail /= 1024.0
+
+ print(f" {ICON} {round(avail)}{unit} \n")
+ if bytes < (20 * GB):
+ print(f"#{os.environ.get("BASE16_COLOR_00_HEX")}")
+ print(f"#{os.environ.get("BASE16_COLOR_08_HEX")}")
+ elif bytes < (10 * GB):
+ print(f"#{os.environ.get("BASE16_COLOR_00_HEX")}")
+ print(f"#{os.environ.get("BASE16_COLOR_0A_HEX")}")
+
+
+if __name__ == "__main__":
+ main()