Hi Malvinas und PvD,
erst einmal Danke für die Infos. Dass das PvR nicht unter faltpak läuft, ist schade, bisher habe ich immer gute Erfahrungen mit dem Addon für Kodi gemacht und alles lief sauber. Es liegt ja auch nicht an PvR, sondern daran, dass Kodi keine Version für 24.04 via PPA rausbringt.
Zu Malvinas: Bei mir zeigt die status.xml folgendes an:
<currentload>
<systemload>0.222168,0.129883,0.096680</systemload>
<recordings> </recordings>
<subscriptions>0</subscriptions>
</currentload>
Da ich meinen Rechner nebenher auch noch normal benutze, kann ich LibreElec nicht installieren. Meine Frage an Malvinas: Wieso sollte ich das Script und die Services nur in einer virtuellen Umgebung nutzen?
Vielleicht kann ich aus den Bedingungen, die Du in Deiner autosuspend.conf.txt angibst, vielleicht nochwas zur Erweiteung meines bzw. Roosters Skript hinzufügen.
Ich hätte es nämlich gerne so wie bei PvR, dass ich eine Bedingung brauche, die dem Suspend-Skript deutlich anzeigt, dass da noch jemand am Rechner sitzt. Also ich habe bisher immer so gehandhabt, dass mein Recher, wenn er hochfährt, sich immer automatisch anmeldet mit einem Nutzer. Jetzt müsste das Skript eben verlässlich checken, sitzt einer am Rechner oder kann ich wieder herunterfahren.
Ich mache es im Moment mit dem Skript von Rooster so, dass ich den Rechner nicht automatisch mit einem Benutze starten lasse, sondern nur ganz normal bis zum Login. Dann bleibt der Rechner auch in der Schleife immer wieder bei jeder Aufnahme aufzuwachen, weil ich einen Crontab-Job mit em Rooster-Skript einschalte, das eben prüft, ob bestimmte Dinge laufen oder nicht (Kodi, konsole, externe Zugriffe auf tvheadend, interne Zugriffe auf tvheadend). Da ich ja nur bis zum Login komme, laufen diese Dinge natürlich nicht, deswegen wird das Skript via crontab dann auch nach 15min aufgerufen, die nächste Aufnahmezeit in den rtc geschrieben und dann wieder aufgeweckt.
Wenn ich mir anmelde verknüpfe ich das mit einem Skript, dass den Crontab-Job ausschaltet, so dass mein Rechner nicht mehr unkontrolliert herunterfährt.
Was ich gerne noch hingekommen würde, wäre, dass ich den Rechner immer automatisch anmelde und der Rechner nur dann verlässlich via Skript herunterfährt, wenn ich nicht am Rechner sitze.
Hier das von mit abgeänderte Skript von Rooster:
#!/bin/sh
export PATH=/home/hts/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
##
## Check for active connections from the local machine with maybe kodi.
##
if [ "`curl -s http://script:script@localhost:9981/api/status/connections | tr : '\n' | grep peer | grep 127.0.0.1 | sed 's/","peer_port"//'`" = "127.0.0.1" ]; then
echo "Not shutting down due to active connections" | logger
exit 0
fi
##check if Konsole is started
if [ "`ps -e | grep 'discover\|konsole'`" != "" ]; then
echo "Not shutting down due to active connections" | logger
exit 0
fi
## Check for active connections, except those from the local machine.
if [ "`curl -s http://script:script@localhost:9981/api/status/connections | tr } '\n' | grep peer | grep -v 127.0.0.1`" != "" ]; then
echo "Not shutting down due to active connections" | logger
exit 0
fi
##
## Check for active recordings
##
curl -s "http://script:script@localhost:9981/api/dvr/entry/grid_upcoming?limit=99999" | grep -q '"sched_status":"recording",'
match=$?
if [ "$match" != "0" ]; then
##
## Not recording, can we shutdown?
##
next_recording=`curl -s "http://script:script@localhost:9981/api/dvr/entry/grid_upcoming?limit=99999" | tr , '\n' | grep start_real | sed "s/.*start_real.:\([0-9]*\).*/\1/" | sort -n | head -1`
##
## If there are no recordings we should wake up tomorrow
##
if [ "$next_recording" = "" ]; then
echo "No recordings... wake up tomorrow...." | logger
next_recording=`date --date "tomorrow" +%s`
fi
gap=$(($next_recording-`date +%s`))
echo Next recording: `date -d "1970-01-01 $next_recording sec" "+%F %H:%M:%S" -u` | logger
if [ $gap -gt 900 ]; then
##
## The gap to the next recording is more than 15 minutes, so lets shutdown
##
##
## Set the wakeup for 10 minutes before the next recording
##
wakeup=$((next_recording-600))
wakeup_date=`date -d "1970-01-01 $wakeup sec" "+%F %H:%M:%S"`
echo "Waking up at: $wakeup_date" | logger
/usr/bin/sudo /usr/sbin/rtcwake -m off -t $wakeup
##
## Now shutdown
##
/usr/bin/sudo /sbin/shutdown -P now
fi
else
##
## Still recording, [definition=1,'0']log[/definition] the attempt and do nothing.
##
echo "Still recording. Not shutting down." | logger
fi
Alles anzeigen
Ich möchte deswegen das Autologin immer an haben, weil ich gerne auch noch via KDEConncet auf meinen Accoutn zugerife. Das geht aber eben nur, wenn ich angemeldet bin.
Es darf eben nicht passieren, dass ich gerade am Rechner sitze, der crontab Job läuft und der Rechner heruntergefahren wird, obwohl ich lange Texte (wie hier z.B.) schreibe und der Rechner dann einfach runterfährt und alles weg ist.
LG
Hondo
P.S.: Frage an PvD, welche Abfragen hast Du in Deinem Skript gehabt, die das ermöglicht haben, dass das mit Deinem Addon so funktioniert hat, wie ich es eben beschrieben habe.