diff options
Diffstat (limited to '.local/bin/statusbar/sb-memory')
-rwxr-xr-x | .local/bin/statusbar/sb-memory | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/.local/bin/statusbar/sb-memory b/.local/bin/statusbar/sb-memory index a37f1ca..09f23bf 100755 --- a/.local/bin/statusbar/sb-memory +++ b/.local/bin/statusbar/sb-memory @@ -9,4 +9,23 @@ case $BLOCK_BUTTON in 8) setsid -f "$TERMINAL" -e "$EDITOR" "$0" >/dev/null 2>&1 ;; esac -free --mebi | sed -n '2{p;q}' | awk '{printf ("🧠%sMB\n", ($3))}' +used=$(free --mebi | sed -n '2{p;q}' | awk '{print $3}') +total=$(free --mebi | sed -n '2{p;q}' | awk '{print $2}') + +usage_percentage=$((100 * used / total)) + +case 1 in + $((usage_percentage >= 87)) ) icon="█ "; class="high" ;; + $((usage_percentage >= 70)) ) icon="▇ "; class="high" ;; + $((usage_percentage >= 62)) ) icon="▆ "; class="mid" ;; + $((usage_percentage >= 50)) ) icon="▅ "; class="mid" ;; + $((usage_percentage >= 37)) ) icon="▄ "; class="mid" ;; + $((usage_percentage >= 25)) ) icon="▃ "; class="low" ;; + $((usage_percentage >= 12)) ) icon="▂ "; class="low" ;; + $((usage_percentage >= 0)) ) icon="▁ "; class="low" ;; + * ) echo unavailable && exit ;; +esac + +output="$icon${used}MB" + +printf '{"text": "%s", "class": "%s" }' "$output" "$class" |