From 6de54314773fe3cd7ea9b278118c904b8b075a24 Mon Sep 17 00:00:00 2001 From: Guilherme Rugai Freire Date: Tue, 3 Sep 2024 12:07:11 -0300 Subject: [PATCH] add script check_battery --- bin/check_battery | 1 + check_battery/README.md | 9 +++++++++ check_battery/check_battery.sh | 17 +++++++++++++++++ 3 files changed, 27 insertions(+) create mode 120000 bin/check_battery create mode 100644 check_battery/README.md create mode 100755 check_battery/check_battery.sh diff --git a/bin/check_battery b/bin/check_battery new file mode 120000 index 0000000..ef5a8ac --- /dev/null +++ b/bin/check_battery @@ -0,0 +1 @@ +../check_battery/check_battery.sh \ No newline at end of file diff --git a/check_battery/README.md b/check_battery/README.md new file mode 100644 index 0000000..b7aa5cf --- /dev/null +++ b/check_battery/README.md @@ -0,0 +1,9 @@ +# check_battery + +## About +Check the battery percentage and notify user if it is about to end. + +## Requirements + - notify-send + - mpv + - UPower diff --git a/check_battery/check_battery.sh b/check_battery/check_battery.sh new file mode 100755 index 0000000..8fc3db6 --- /dev/null +++ b/check_battery/check_battery.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +DEVICE="/org/freedesktop/UPower/devices/battery_BAT0" + +time="$(upower -i $DEVICE | grep time | cut -d':' -f2 | tr -s ' ' | cut -c2-)" +perc="$(upower -i $DEVICE | grep percentage | awk '{print $2}' | tr -d '%')" +stat="$(upower -i $DEVICE | grep state | awk '{print $2}')" + +if [ "$perc" -le "20" ]; then + urgency="normal" + if [ "$perc" -le "10" ]; then + urgency="critical" + fi + notify-send -u "$urgency" --icon="battery" "Battery is low ($perc%)" "Time remaining is $time." + mpv /usr/share/sounds/freedesktop/stereo/dialog-information.oga +fi +