Benachrichtigung über Updates

Hier mal ein kleines Script wie man sich eine Benachrichtigung machen kann, um zu sehen ob es neue Updates gibt.
Das Script funktioniert so nur unter Arch und Arch basierenden Systemen!
Wer eine andere Distribution nutzt muss mal schauen was man da anstelle benutzen kann, da ich das checkupdates+aur(=pacman interne checkupdates + checkupdates-aur) aus dem AUR benutze. Zudem benutze ich, weil KDE User, kdialog anstatt notify-send.

Hier ist erstmal das Skript, als Kommentar schreibe ich noch das entsprechende Äquivalent für GTK dazu:

number=$(checkupdates+aur | wc -l)
#number =$(apt-get upgrade -> n)  für Debian basierte Distros (steht so im Arch Wiki https://wiki.archlinux.org/index.php/Pacman/Rosetta) 
if [ "$number" = 0 ]; then
    export DISPLAY=:0 && kdialog --title "Update Benachrichtigung" --passivepopup "Es sind 0 Updates vorhanden" --icon dialog-error 5 #5 Sekunden wird es angezeigt
    #export DISPLAY=:0 && notify-send "Update Benachrichtigung" "Es sind 0 Updates vorhanden" --icon dialog-error -t 5000 #hier sind es 5000, da mit ms gerechnet wird
else
    export DISPLAY=:0 && kdialog --title "Update Benachrichtigung" --passivepopup "Es sind $number Updates vorhanden" --icon dialog-ok 5
    #export DISPLAY=:0 && notify-send "Update Benachrichtigung" "Es sind $number Updates vorhanden" --icon dialog-error -t 5000
fi

Das Skript ausführbar machen nicht vergessen.

Ich habe es bei mir nach /etc/cron.hourly kopiert, so dass ich jede Stunde eine Benachrichtigung bekomme. Punkte im Dateinamen dürfen nicht vorkommen, sonst werden diese nicht ausgeführt. Also z.B. checkupdates.sh geht nicht. Die Dateierweiterung braucht man ja eh nicht, also falls nicht eh schon gemacht, Dateiname ändern in checkupdate (oder was auch immer ihr wollt).
Alternativ die Datei in ein Verzeichnis eurer Wahl legen, und mit

crontab -e

alles manuell eintragen. Bei mir sieht es dann so aus:

0 * * * *       /Pfad/zur/Datei/updates

Bedeutet hier, immer zur Minute 0, jeder Stunde, jeden Tag (vom Monat), jeden Monat, jeden Tag (der Woche). Kurz und knapp: zu jeder vollen Stunde.
Will man z.B. alle zwei Stunden und 20 Minuten nach ausführen, sieht es so aus:

20 */2 * * *

Wer ganz wilde Sachen möchte, kann auch hier mal schauen crontab.guru - the cron schedule expression editor (Link ist ursprünglich von gosia).

Mit kdialog kann man sich mit folgendem Befehl alle Icons anzeigen lassen, wie es mit GTK geht weiß ich nicht, kann ja jemand der es weiß nachtragen.

kdialog --geticon all all 

Das ursprüngliche Thema befindet sich hier: Benachrichtigung über Updates