diff options
Diffstat (limited to 'i3blocks/.local/bin/i3blocks-disk')
-rwxr-xr-x | i3blocks/.local/bin/i3blocks-disk | 28 |
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() |