34 lines
782 B
Bash
Executable File
34 lines
782 B
Bash
Executable File
#!/bin/bash
|
|
|
|
checkSleep() {
|
|
if timeout 15 bash -c '
|
|
until journalctl -b | grep -i "systemd-sleep\|sleep\.target" | tail -n1 | grep -iq "Stopped target"; do
|
|
sleep 0.5
|
|
done';
|
|
then
|
|
logger -t "SmartSleep" "Das System hat den Energiesparmodus beendet"
|
|
return 0
|
|
else
|
|
logger -t "SmartSleep" "Das System hat den Energiesparmodus nicht wie erwartet beendet"
|
|
return 1
|
|
fi
|
|
}
|
|
|
|
suspendStart() {
|
|
checkSleep && systemctl suspend
|
|
}
|
|
|
|
suspendFinish() {
|
|
notify-send "SmartSleep" "Energiesparmodus beendet"
|
|
checkSleep
|
|
#/opt/Signal/signal-desktop --no-sandbox &
|
|
#sleep 3 && kdocker -w $(xwininfo -root -tree | grep Signal | tail -n1 | awk '{print $1}')
|
|
}
|
|
|
|
trap 'suspendStart' USR1
|
|
trap 'suspendFinish' USR2
|
|
|
|
while true; do
|
|
sleep infinity &
|
|
wait $!
|
|
done |