dotfiles/.local/bin/mod-battery

26 lines
462 B
Plaintext
Raw Normal View History

2024-09-05 22:35:28 -04:00
#!/bin/sh
set -eu
FULL_THRESHOLD=90
for battery in /sys/class/power_supply/BAT*; do
if [ ! -f "$battery/capacity" ] || [ ! -f "$battery/status" ]; then
continue
fi
read -r capacity <"$battery/capacity"
read -r status <"$battery/status"
if [ "$status" = "Charging" ] || ([ "$capacity" -ge "$FULL_THRESHOLD" ] && [ "$status" = "Not charging" ]); then
prefix="AC"
else
prefix="BAT"
fi
printf '%s %s%%' "$prefix" "$capacity"
exit 0
done
exit 1