Tengo el mismo problema y es realmente frustrante. Lo resolví usando el script BatteryAlert.sh :
#!/bin/bash
BATTERY=$(upower -e | grep 'BAT')
while :
do
BATTERY_PERCENTAGE=$(upower -i $BATTERY|grep percentage|awk '{ print $2 }'|sed s/'%'/''/g)
CABLE=$(upower -d | grep -n2 line-power | grep online | awk '{ print $3 }')
if [[ "$BATTERY_PERCENTAGE" -lt "10" && $CABLE = "no" ]]; then
notify-send --urgency=critical "WARNING: Battery is about to die" "Plug in the power cable"
play /usr/share/sounds/KDE-Sys-Warning.ogg &> /dev/null
fi
sleep 10
done
Estoy usando KDE pero puedes usarlo con cualquier entorno de escritorio. No tiene que ejecutar esto como usuario root o volverse loco con la sintaxis de crontab. Solo necesita cambiar el sonido de notificación si desea una alerta de sonido. Si no desea iniciar el script automáticamente cuando se inicia el entorno de escritorio, coloque el script en la carpeta $ USER / bin con el script BatteryAlertLauncher.sh :
#!/bin/bash
function getRunningProcesses
{
ps -aux | grep -v grep | grep BatteryAlert.sh
}
if [[ -n "$(getRunningProcesses)" ]] ; then
exit
fi
BatteryAlert.sh&
Asegúrese de que sean ejecutables:
chmod u+x $USER/bin/BatteryAlert*
Luego solo ejecuta el siguiente comando:
ln -s /home/$(USER)/bin/BatteryAlertLauncher.sh .config/autostart/
También puede ejecutar el script de alerta manualmente desde bash ingresando este comando:
BatteryAlertLauncher.sh