aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/i3blocks/.local/lib/i3blocks/i3blocks-memory
blob: b0dad068dd92f196e946a4098f5229b84f4f4559 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/env python3

import os
import linecache

ICON = "\U000f035b"  # 󰍛


def main():
    linecache.getline("/proc/meminfo", 0)
    linecache.getline("/proc/meminfo", 2)

    with open("/proc/meminfo", "r") as f:
        meminfo = dict(
            (i.split()[0].rstrip(":"), int(i.split()[1])) for i in f.readlines()
        )

    used = 100 - round(100 * meminfo["MemAvailable"] / meminfo["MemTotal"])

    print(f" {ICON} {used}% \n")
    if used > 95:
        print(f"#{os.environ.get("BASE16_COLOR_00_HEX")}")
        print(f"#{os.environ.get("BASE16_COLOR_08_HEX")}")
    elif used > 80:
        print(f"#{os.environ.get("BASE16_COLOR_00_HEX")}")
        print(f"#{os.environ.get("BASE16_COLOR_0A_HEX")}")


if __name__ == "__main__":
    main()