diff options
Diffstat (limited to 'dotfiles/.local/bin/i3barbattery')
-rwxr-xr-x | dotfiles/.local/bin/i3barbattery | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/dotfiles/.local/bin/i3barbattery b/dotfiles/.local/bin/i3barbattery new file mode 100755 index 0000000..edc89c3 --- /dev/null +++ b/dotfiles/.local/bin/i3barbattery @@ -0,0 +1,34 @@ +#!/bin/sh +# Taken from Luke Smith's rice +# Takes battery name as an argument (e.g. BAT0) + +case $BLOCK_BUTTON in + 3) notify-send "🔋 Battery module" "🔋: discharging +🛑: not charging +♻: stagnant charge +🔌: charging +⚡: charged +❗: battery very low! +- Text color reflects charge left" ;; +esac + +capacity=$(cat /sys/class/power_supply/"$1"/capacity) || exit +status=$(cat /sys/class/power_supply/"$1"/status) + +if [ "$capacity" -ge 75 ]; then + color="#689d6a" +elif [ "$capacity" -ge 50 ]; then + color="#ffffff" +elif [ "$capacity" -ge 25 ]; then + color="#ffff00" +else + color="#ff0000" + warn="❗" +fi + +[ -z $warn ] && warn=" " + +[ "$status" = "Charging" ] && color="#ffffff" + +printf "<span color='%s'>%s%s%s</span>" "$color" "$(echo "$status" | sed -e "s/,//;s/Discharging/🔋/;s/Not Charging/🛑/;s/Charging/🔌/;s/Unknown/♻️/;s/Full/⚡/;s/ 0*/ /g;s/ :/ /g")" "$warn" "$(echo "$capacity" | sed -e 's/$/%/')" + |