#!/bin/bash # Designed to be run by systemd timer every 30 seconds and alerts if battery is low BATTERY_THRESHOLD=10 NOTIFICATION_FLAG="/run/user/$UID/nnomarchy_battery_notified" BATTERY_LEVEL=$(nnomarchy-battery-remaining) BATTERY_STATE=$(upower -i $(upower -e | grep 'BAT') | grep -E "state" | awk '{print $2}') send_notification() { notify-send -u critical "󱐋 Time to recharge!" "Battery is down to ${1}%" -i battery-caution -t 30000 nnomarchy-hook battery-low "$1" } if [[ -n $BATTERY_LEVEL && $BATTERY_LEVEL =~ ^[0-9]+$ ]]; then if [[ $BATTERY_STATE == "discharging" ]] && (( BATTERY_LEVEL <= BATTERY_THRESHOLD )); then if [[ ! -f $NOTIFICATION_FLAG ]]; then send_notification $BATTERY_LEVEL touch $NOTIFICATION_FLAG fi else rm -f $NOTIFICATION_FLAG fi fi