Update: Better battery script (using upower instead of acpi).

This commit is contained in:
Keyitdev
2022-06-22 19:32:33 +02:00
parent 0f8a50a712
commit 9f47919e0c
+7 -9
View File
@@ -9,24 +9,22 @@ done
dir_icons="/usr/local/bin/icons"
# notify when below this percentage
warning_level=15
warning_level=20
# how often to check battery status, in minutes
check_interval=1
while true; do
battery_level=$(acpi -b \
| cut -d, -f2 | cut --characters=2,3,4 \
| sed 's/%//g')
charging=$(acpi -b | grep -c "charging")
battery_level=$(upower -i $(upower -e | grep BAT) | grep -E "percentage" | sed 's/[^0-9]//g')
discharging=$(upower -i $(upower -e | grep BAT) | grep -E "state" | grep -c "discharging")
time_to_empty=$(upower -i $(upower -e | grep BAT) | grep -E "time to empty" | sed 's/[^0-9,.]//g')
# when battery is low, and not already charging
if [ "$battery_level" -lt "$warning_level" ] &&
[ "$charging" -eq 0 ]
# check if battery is low and discharging
if [ "$battery_level" -lt "$warning_level" ] && [ "$discharging" -eq 1 ]
then
dunstify -a "Battery" \
"Low battery: ${battery_level}%" \
"Battery is running low" \
"Battery is low ($time_to_empty minutes left)" \
-r 100 \
-i $dir_icons/battery.svg
fi