9d06a61780
Kept wondering wether I should keep the MIT (because I highly value freedom of act) or embrace the GPL (because I don't want this work to become close-source). I do understand that this commit (and the next one that is actually changing the LICENSE) is a defeat for freedom. I guess freedom has been defeated long time ago, when people and companies figured that was "free" (as in gratis) was also "free" (as in disposable). This is not how I think free (as in "libre") works but hey, that surely is how Intel and other corporations see it (ec: Intel Management Engine is entirely based on Minix, is close-source, and *maybe* used as a backdoor by anybody). It boils down to the Paradox of Tolerance, and I surely won't tolerate shit going their way. If you want to take open source stuff, be my guest ; but you have to play by the rules.
44 lines
1.4 KiB
Bash
Executable File
44 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env sh
|
|
|
|
######################################################################
|
|
# @author : swytch (adapted from Luke Smith - lukesmith.xyz)
|
|
# @file : sb-battery
|
|
# @license : GPLv3
|
|
# @created : Saturday Feb 13, 2021 17:19:04 CET
|
|
#
|
|
# @description : battery block dwmblocks
|
|
######################################################################
|
|
|
|
|
|
# Will show all batteries with approximate icon for remaining power.
|
|
# Or show that the computer is plugged to a power source
|
|
# In any case, show the remaining battery percentage
|
|
# Also sends a notification if battery running low
|
|
|
|
notify() { \
|
|
case "$(cat "$x")" in
|
|
1[0-9]) notify-send -u "normal" "Battery is $status and running low ($capacity%)" "Please plug your computer to a power source" ;;
|
|
[0-9]) notify-send -u "critical" "Battery is $status and dangerously low ($capacity%)" "Please plug your computer to a power source - <b>NOW!</b>" ;;
|
|
esac
|
|
}
|
|
|
|
for bat in /sys/class/power_supply/BAT?/
|
|
do
|
|
status="$(cat "$bat/status")"
|
|
capacity="$(cat "$bat/capacity")"
|
|
if [ "$status" = "Charging" ]; then
|
|
status=""
|
|
elif [ "$status" = "Full" ];
|
|
printf "%s FULL" "$status";
|
|
else
|
|
case "$capacity" in
|
|
100|9[0-9]|8[0-9]) status="" ;;
|
|
7[0-9]|6[0-9]) status="" ;;
|
|
5[0-9]|4[0-9]) status="" ;;
|
|
3[0-9]|2[0-9]) status="" ;;
|
|
*) status="" ; [ "$status" != "Charging" ] && notify;;
|
|
esac
|
|
fi
|
|
printf "%s %3d%%\n" "$status" "$capacity";
|
|
done && return 0
|