diff options
Diffstat (limited to 'wm/dwmblocks/dwmblocks-battery')
| -rwxr-xr-x | wm/dwmblocks/dwmblocks-battery | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/wm/dwmblocks/dwmblocks-battery b/wm/dwmblocks/dwmblocks-battery new file mode 100755 index 0000000..66f1d1f --- /dev/null +++ b/wm/dwmblocks/dwmblocks-battery @@ -0,0 +1,21 @@ +#!/bin/sh + +BAT_FILE=/sys/class/power_supply/BAT0 + +for battery in $BAT_FILE; do + # If non-first battery, print a space separator. + [ -n "${capacity+x}" ] && printf " " + # Sets up the status and capacity + case "$(cat "$battery/status" 2>&1)" in + "Full") status="🔋" ;; + "Discharging") status="🔋-" ;; + "Charging") status="🔋+" ;; + "Not charging") status="🛑" ;; + *) exit 1 ;; + esac + capacity="$(cat "$battery/capacity" 2>&1)" + # Will make a warn variable if discharging and low + [ "$status" = "🔋" ] && [ "$capacity" -le 25 ] && warn="❗" + # Prints the info + printf "%s%s%d%%" "$status " "$warn" " $capacity"; unset warn +done && printf "\\n" |