• Café
  • Automatisiertes Paketupgrade

Vielen Dank für deine Rückmeldung!

Die nächste Version wird 0.8 sein. 😉
(Die kommt wenn ich wieder Zeit habe. Meine Augen geht's inzwischen wieder gut, aber ich hab gerade jede Menge anderen Kram zu tun.
Die übernächste Version 0.9 hat dann auch die Abfrage der Arch-News mit drin.
(Eigentlich ist diese Funktion auch schon fertig und funktioniert. Allerdings darf ich das nicht einfach so integrieren, weil das Skript mit Root-Rechten laufen muss. Deshalb muss ich jetzt docker lernen, damit die Abfrage der Arch-News in einem Container und vom übrigen System getrennt abläuft. Wenn ich das nicht mache, würde die Arch-News-Seite zum Angriffsziel für sportliche Hacker werden um darüber Code einzuschleusen, der anschließend dann mit Root-Rechten auf meinem und deinem Computer alles ausführen kann was dem Hacker so einfällt).

Hier ist das Skript für die Abfrage der letzten Arch-Linux-News.
Mit userrechten ausgeführt ist es völlig gefahrlos:

#!/bin/bash


PAGE=$(curl -s $URL https://archlinux.org/news/)
DATE=$(echo "$PAGE" | awk '/<td>/ {print $0}' | head -1 | sed -e 's/<td>//' -e 's/<\/td>//'| xargs)
HREF=$(echo "$PAGE" | awk '/<td class="wrap">/ {print $0}' | head -1 | sed -e 's/<a href=//' -e 's/<td class="wrap">//' | xargs)
TITLE=$(echo "$PAGE" | awk '/title="View:/ {print $0}'| head -1  | sed -e 's/<\/td>//' -e 's/title="View:.*">//' | xargs)


TUSER=$(who -T | awk '/+/{print $1}' | head -1)
sudo -u $TUSER DISPLAY=$DISPLAY DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u $TUSER)/bus notify-send " " "$DATE: <a href='$HREF'>$TITLE" -t 0 -u normal

P.S.: Wenn jemand etwas gescheiteres wie docker einfällt, dann bitte gerne. Ich mach das zum ersten mal.


  • md_39118 hat auf diesen Beitrag geantwortet.

    tuxnix
    Hallo
    Eine gute Idee die Abfrage der Arch-News vor dem Update, schade das es mit der Deutschen Startseite nicht geht.

    • tuxnix und Dirk haben auf diesen Beitrag geantwortet.

      md_39118 schade das es mit der Deutschen Startseite nicht geht

      Die Arch-News sind für Anfänger erst einmal nicht so interessant weil die installierten Anwendungen die ein Arch-Newbe auf dem Rechner nutzt, meist völlig unproblematisch sind und erfahrungsgemäß keine manuellen Eingriffe benötigen. Die fortgeschrittenen User für die die News eine ganz andere Relevanz haben, bevorzugen hingegen eher englisch- sprachiges "Computer-Latein". Deshalb habe ich die englische Seite gewählt.
      Das Wichtige an dieser Funktion ist aber ohnehin lediglich anzuzeigen , dass keine neue Nachricht vorliegt und ein Link anzugeben falls dann doch mal etwas getan werden muss.

      Der erfahrene User will sein upgrade ohnehin lieber manuell tätigen.
      Ureminder kann dann aber trotzdem nützlich sein um automatisch die zu erneuerten Pakete anzuzeigen und nebenbei auch zu sehen ob es bei Arch-Linux Änderungen gibt.
      @GerBra z.B. wählt (s. oben) den Zeitpunkt wann er ein pacman -Syu tätigt sehr bewusst, je nach dem welche Pakete gerade erneuert werden um dann auch die nötige Zeit zu haben bei Änderungen reagieren zu können.
      Wenn z.B. wie bei der letzten News ssh neu gestartet werden muss, dann hat man die nötige Informationen alle auf einen Blick.



      2 Monate später

      Hallo
      Eine Frage wird am Script noch gearbeitet oder wurde das Projekt eingestellt ?

      • tuxnix hat auf diesen Beitrag geantwortet.

        md_39118 Eine gute Idee die Abfrage der Arch-News vor dem Update, schade das es mit der Deutschen Startseite nicht geht.

        Der richtige/bessere Weg wäre, den entsprechenden RSS-Feed zu parsen, anstatt manuell dreckig durch das gerenderte HTML zu laufen 🙂

        https://www.archlinux.de/news/feed

          md_39118 Hallo
          Eine Frage wird am Script noch gearbeitet oder wurde das Projekt eingestellt ?

          Momentan hab ich leider keine Zeit daran weiter zu arbeiten. Aber wenn ich die Zeit finde wird sofort daran weiter gearbeitet. Sorry.

          Dirk Der richtige/bessere Weg wäre, den entsprechenden RSS-Feed zu parsen

          Danke für den Tipp, schau ich mir dann an.

          P.S.: Oder kannst du mir kurz zeigen wie das geht?

          ein Monat später
          • Bearbeitet

          md_39118 Hallo
          Eine Frage wird am Script noch gearbeitet oder wurde das Projekt eingestellt ?

          Es geht jetzt endlich weiter:
          Unter Anderem habe ich die Anzeige für das nächste auto-update gefixt.

          Und das aller Beste ist, dass es jetzt ein AUR-Paket gibt, mit dem man alles in einem Rutsch einschließlich der deutschen Sprachdatei installiert bekommt.
          Die Funktion für die Desktop-Anzeige der Arch-News folgt in einer der nächsten Versionen.

          Die Installation funktioniert mit dem klassischen 3-Satz:
          git clone https://aur.archlinux.org/ureminder.git && cd ureminder && makepkg -fi

          Oder mit dem AUR-Hiflsprogramm der Wahl:
          <AUR-Helper> -S ureminder

          Die Datei /usr/local/bin/ureminder kann danach gelöscht werden.

          Hallo
          Auf meinen Endeavour Pc wird das getestet, als Helper werde ich trizen benutzen.
          Eine Frage
          Wenn ein "pacman -Syu" Update in der Konsole erfolgt gibt es zb. solche Meldungen, eine gute Info wenn die neue Abhängigkeit gebraucht wird.

          Neue optionale Abhängigkeiten für cups-filters
          ghostscript: for non-PDF printers (preferred) [Installiert]
          mupdf-tools: for non-PDF printers
          poppler: for non-PDF printers [Installiert]

          Beim "ureminder" Update sind diese Meldungen auch mit laufenden journalctl -f nicht zu sehen.
          Auch in der /var/log/pacman.log bzw. beim Durchsuchen des Journals fehlen die Infos.
          journalctl --since="2025-01-10 09:58:00" --until="2025-01-12 10:02:00" -g "Neue"
          Gibt es eine weitere Möglichkeit um die Infos noch zu sehen?

          • Bearbeitet

          Hallo
          Schön wenn du das auf Endeavour testest.
          Das changelog und die Beschreibung gibt es auf Codeberg zu lesen. Da findet dann auch die weitere Entwicklung statt.

          Außer dem reflector sind das alles Pakete die auch schon von anderen Paketen als Abhängigkeit installiert worden sind. Und den reflektor hast du wahrscheinlich letztes Jahr explizit installiert. Die Suche nach "Neue" dürfte aber auch bei dem gewählten Zeitraum ins Leere laufen. Eintrizen -Qi ureminder zeigt dir die bestehenden Abhängigkeiten von ureminder an.

          //Edit

          Hallo
          Meine Frage zielt eigentlich darauf, warum diese in der Konsole zu sehende Meldung(Neue optionale Abhängigkeiten für cups-filters)
          sonst nirgends wieder zu finden ist, weder in der /var/log/pacman.log noch im Journal.
          Das Update das diese Info Meldungen erzeugt wurde am 12.1.2025 um 9:58 in der Konsole gestartet.

          journalctl --since="2025-01-12 09:58:00" --until="2025-01-12 10:02:00" -g "frank"
          Jan 12 09:58:50 linux-pc6 sudo[1638]: frank : TTY=pts/0 ; PWD=/home/frank ; USER=root ; COMMAND=/usr/bin/pacman -Syu

          Ein Auszug aus der /var/log/pacman.log
          [2025-01-12T09:58:50+0100] [PACMAN] Running 'pacman -Syu'
          [2025-01-12T10:01:21+0100] [ALPM] upgraded cups-filters (2.0.1-1 -> 2.0.1-2)
          [2025-01-12T10:01:50+0100] [ALPM-SCRIPTLET] ==> Initcpio image generation successful

          • tuxnix hat auf diesen Beitrag geantwortet.
            • Bearbeitet

            md_39118
            Ich bin jetzt nicht so ins Detail gegangen.
            Falls es sich dabei aber nur um optionale Abhängigkeiten handelt verhält es sich damit ganz einfach.
            Pacman informiert dich, welche Optionen es noch gäbe, die jeweilige Anwendung, die gerade ein Upgrade erfährt, mit zusätzlichen Fähigkeiten auszustatten. Das Jounale notiert aber nur die Pakete die du dann auch tatsächlich installierst.
            Und nachlesen welche Anwendung noch optional Möglichkeiten bietet, kann man auch sehr schön mit pacman -Si oder -Qi <paket>.

            Hallo
            Vor der Installation mit trizen aus dem AUR wurde /usr/local/bin/ureminder und /etc/systemd/system/ureminder* gelöscht.
            Die Installation aus dem AUR war OK. Der erste Lauf Endet ohne die Installation der 10 Pakete.
            Frage wo kommt die Meldung "Sichere neue Dokumente!\nAuto-Upgrade in -30 Minutens oder -59 Minutens" eigentlich her?
            Frage wo kann der Tag eingestellt werden wann ein Auto-Upgrade erfolgen soll?
            Nach vier Versuchen ist nichts Installiert worden. Es bleibt bei

            uname -a
            Linux rk-7072 6.12.9-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 10 Jan 2025 00:39:41 +0000 x86_64 GNU/Linux
            
            Der erste Versuch.
            
            Jan 19 17:36:52 rk-7072 systemd[1]: Started ureminder.service.
            Jan 19 17:36:52 rk-7072 ureminder[1246]: Anzeige: Was nach dem Upgrade zu tun ist- EIN
            Jan 19 17:36:52 rk-7072 ureminder[1246]: Anzeige: Auto-Upgrade alle 7 Tage - EIN
            Jan 19 17:36:53 rk-7072 ureminder[1252]: ==> no candidate packages found for pruning
            Jan 19 17:36:53 rk-7072 ureminder[1261]: ==> finished: 241 packages removed (disk space saved: 1.3 GiB)
            Jan 19 17:37:14 rk-7072 ureminder[1281]: :: Paketdatenbanken werden synchronisiert …
            Jan 19 17:40:15 rk-7072 ureminder[1281]:  endeavouros wird heruntergeladen …
            Jan 19 17:40:15 rk-7072 ureminder[1281]:  core wird heruntergeladen …
            Jan 19 17:40:15 rk-7072 ureminder[1281]:  extra wird heruntergeladen …
            Jan 19 17:40:15 rk-7072 ureminder[1281]:  multilib wird heruntergeladen …
            Jan 19 17:40:15 rk-7072 ureminder[1281]: :: Vollständige Systemaktualisierung wird gestartet …
            Jan 19 17:40:16 rk-7072 ureminder[1281]: Abhängigkeiten werden aufgelöst …
            Jan 19 17:40:16 rk-7072 ureminder[1281]: Paket (10)                   Alte Version    Neue Version     Netto-Veränderung  Größe des Downloads
            Jan 19 17:40:16 rk-7072 ureminder[1281]: endeavouros/eos-bash-shared  25.1.3-1        25.1.4-1                  0,00 MiB             0,06 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: extra/fontconfig             2:2.15.0-2      2:2.16.0-1                0,01 MiB             0,36 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: core/libsecret               0.21.4-1        0.21.6-1                  0,01 MiB             0,18 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: core/linux                   6.12.9.arch1-1  6.12.10.arch1-1          -0,08 MiB           137,63 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: core/linux-headers           6.12.9.arch1-1  6.12.10.arch1-1           0,00 MiB            26,66 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: extra/pango                  1:1.54.0-1      1:1.56.1-1                0,02 MiB             0,41 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: extra/pangomm-2.48           2.54.0-1        2.56.1-1                  0,01 MiB             0,11 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: extra/serd                   0.32.2-1        0.32.4-1                  0,00 MiB             0,06 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: extra/sord                   0.16.16-1       0.16.18-1                 0,00 MiB             0,03 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: extra/zix                    0.4.2-2         0.6.2-1                   0,01 MiB             0,04 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: Gesamtgröße des Downloads:  165,56 MiB
            Jan 19 17:40:16 rk-7072 ureminder[1281]: :: Download fortsetzen? [J/n]
            Jan 19 17:40:16 rk-7072 ureminder[1281]: :: Pakete werden empfangen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  linux-6.12.10.arch1-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  linux-headers-6.12.10.arch1-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  pango-1:1.56.1-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  fontconfig-2:2.16.0-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  libsecret-0.21.6-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  pangomm-2.48-2.56.1-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  serd-0.32.4-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  eos-bash-shared-25.1.4-1-any wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  zix-0.6.2-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]:  sord-0.16.18-1-x86_64 wird heruntergeladen …
            Jan 19 17:41:30 rk-7072 ureminder[1281]: Schlüsselbund wird geprüft …
            Jan 19 17:41:31 rk-7072 ureminder[1281]: Paketintegrität wird geprüft …
            Jan 19 17:41:34 rk-7072 sudo[1413]:     root : PWD=/ ; USER=ralf ; ENV=DISPLAY= DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus ; COMMAND=/usr/bin/notify-send '10 neue Pakete: 1.eos-bash-shared 2.fontconfig 3.libsecret 4.linux 5.linux-headers 6.pango 7.pangomm-2.48 8.serd 9.sord 10.zix' 'Sichere neue Dokumente!\\nAuto-Upgrade in -30 Minutens\\n' -t 0 -u normal -p
            Jan 19 17:41:34 rk-7072 sudo[1413]: pam_unix(sudo:session): session opened for user ralf(uid=1000) by (uid=0)
            Jan 19 17:41:34 rk-7072 sudo[1413]: pam_unix(sudo:session): session closed for user ralf
            Jan 19 17:41:34 rk-7072 systemd[1]: ureminder.service: Deactivated successfully.
            Jan 19 17:41:34 rk-7072 systemd[1]: ureminder.service: Consumed 9.433s CPU time, 249.5M memory peak.
            
            Der zweite Versuch.
            
            Jan 19 18:23:43 rk-7072 ureminder[1279]: Anzeige: Was nach dem Upgrade zu tun ist- EIN
            Jan 19 18:23:43 rk-7072 ureminder[1279]: Anzeige: Auto-Upgrade alle 7 Tage - EIN
            Jan 19 18:23:44 rk-7072 ureminder[1286]: ==> no candidate packages found for pruning
            Jan 19 18:23:44 rk-7072 ureminder[1295]: ==> finished: 4 packages removed (disk space saved: 164.53 MiB)
            Jan 19 18:24:06 rk-7072 ureminder[1317]: :: Paketdatenbanken werden synchronisiert …
            Jan 19 18:24:07 rk-7072 ureminder[1317]:  endeavouros wird heruntergeladen …
            Jan 19 18:24:07 rk-7072 ureminder[1317]:  core wird heruntergeladen …
            Jan 19 18:24:07 rk-7072 ureminder[1317]:  extra wird heruntergeladen …
            Jan 19 18:24:07 rk-7072 ureminder[1317]:  multilib wird heruntergeladen …
            Jan 19 18:24:07 rk-7072 ureminder[1317]: :: Vollständige Systemaktualisierung wird gestartet …
            Jan 19 18:24:08 rk-7072 ureminder[1317]: Abhängigkeiten werden aufgelöst …
            Jan 19 18:24:08 rk-7072 ureminder[1317]: Paket (10)                   Alte Version    Neue Version     Netto-Veränderung
            Jan 19 18:24:08 rk-7072 ureminder[1317]: endeavouros/eos-bash-shared  25.1.3-1        25.1.4-1                  0,00 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: extra/fontconfig             2:2.15.0-2      2:2.16.0-1                0,01 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: core/libsecret               0.21.4-1        0.21.6-1                  0,01 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: core/linux                   6.12.9.arch1-1  6.12.10.arch1-1          -0,08 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: core/linux-headers           6.12.9.arch1-1  6.12.10.arch1-1           0,00 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: extra/pango                  1:1.54.0-1      1:1.56.1-1                0,02 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: extra/pangomm-2.48           2.54.0-1        2.56.1-1                  0,01 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: extra/serd                   0.32.2-1        0.32.4-1                  0,00 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: extra/sord                   0.16.16-1       0.16.18-1                 0,00 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: extra/zix                    0.4.2-2         0.6.2-1                   0,01 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: Gesamtgröße des Downloads:  0,00 MiB
            Jan 19 18:24:08 rk-7072 ureminder[1317]: :: Download fortsetzen? [J/n]
            Jan 19 18:24:08 rk-7072 ureminder[1317]: Schlüsselbund wird geprüft …
            Jan 19 18:24:08 rk-7072 ureminder[1317]: Paketintegrität wird geprüft …
            Jan 19 18:24:12 rk-7072 sudo[1421]:     root : PWD=/ ; USER=ralf ; ENV=DISPLAY= DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus ; COMMAND=/usr/bin/notify-send '10 neue Pakete: 1.eos-bash-shared 2.fontconfig 3.libsecret 4.linux 5.linux-headers 6.pango 7.pangomm-2.48 8.serd 9.sord 10.zix' 'Sichere neue Dokumente!\\nAuto-Upgrade in -59 Minutens\\n' -t 0 -u normal -p
            Jan 19 18:24:12 rk-7072 sudo[1421]: pam_unix(sudo:session): session opened for user ralf(uid=1000) by (uid=0)
            Jan 19 18:24:12 rk-7072 sudo[1421]: pam_unix(sudo:session): session closed for user ralf
            Jan 19 18:24:12 rk-7072 systemd[1]: ureminder.service: Deactivated successfully.
            Jan 19 18:24:12 rk-7072 systemd[1]: ureminder.service: Consumed 4.101s CPU time, 244.3M memory peak.

            • Bearbeitet

            "-59 Minutenes" geht ja gar nicht, nicht einmal von der Rechtschreibung her.
            Frage: "Wo kommt das her?" Antwort: "im Zweifelsfall von mir!" LEIDER.

            Ersteinmal Danke für die Rückmeldung.
            Im Zweifelsfall, führst du exakt zur Minute 0 ein '# pacman -Syu' aus.

            Was das ureminder Skript angeht .... schau ich dann mal was dafür verantwortlich ist.
            Bei mir hat es eigentlich das getan was es sollte. Ich schau mal....

            Frage wo kann der Tag eingestellt werden wann ein Auto-Upgrade erfolgen soll?
            Es gibt die Option -d <num>.
            Das regelt aber keinen exakten Zeitpunkt, sonder richtet sich danach wann das letzte Paket Upgrde erfolgt ist.
            Wenn die Option auf -d 7 eingestellt ist, und du in dem Zeitraum manuel ein Upgrade fährst dann ist der Zeitpunkt="Letztes Upgrade+7 Tage".
            Das Skript wird aber durch den systemd Timer ausgelöst. Das heißt, erst dann wenn der Timer das Skript auslöst und zu dem Zeitpunkt dann mehr als, in dem Fall 7 Tege seit dem letzten Upgrade vergangen ist, sollte ein auto upgrade duchgeführt werden.
            So jedenfalls der Plan. '-30 min' oder '-59 min' geht natürlich gar nicht.
            Danke erstmal für den Screenshot.

            Hallo
            Der Versuch von Heute sieht gut aus, nach dem Punkt 3. erfolgte ein "reboot" danach ist der Kernel "Linux rk-7072 6.12.10-arch1-1 " aktiv.
            Mein Vorgehen war folgendes.

            1. Den Timer ändern um das Script dann von Hand zu starten.
            OnStartupSec=5min
            #OnCalendar=daily
            
            sudo systemctl stop ureminder.timer
            sudo systemctl disable ureminder.timer
            
            2.	Das Script als user starten.
            ureminder -ad 1
            Anzeige: Was nach dem Upgrade zu tun ist- EIN
            Anzeige: Auto-Upgrade alle 1 Tage - EIN
            error: Permission denied
            ==> no candidate packages found for pruning
            ==> no candidate packages found for pruning
            /usr/bin/ureminder: Zeile 76: /var/pkg.lst: Keine Berechtigung
            Fehler: Sie benötigen Root-Rechte, um diese Operation auszuführen.
            
            3. Das Script als root starten.
            sudo ureminder -ad 1
            Anzeige: Was nach dem Upgrade zu tun ist- EIN
            Anzeige: Auto-Upgrade alle 1 Tage - EIN
            ==> no candidate packages found for pruning
            ==> no candidate packages found for pruning
            :: Paketdatenbanken werden synchronisiert …
            ....
            dracut[I]: *** Creating initramfs image file '/boot/initramfs-linux.img' done ***

            Frage warum wird go Installiert.
            extra/go 2:1.23.5-1 223,40 MiB 39,78 MiB

            • tuxnix hat auf diesen Beitrag geantwortet.
              • Bearbeitet

              md_39118

              Ich hatte im ureminder.service in der Zeile ExecStart="/usr/bin/ureminder -ad 7" vergessen die Gänsefüßchen zu setzen. Desshalb lief der service nicht. (Ohne Füße können die Gänse nicht laufen)
              Zusätzlich gibt es jetzt ein schlichtes Sorry, you must be root wenn du versuchst das Skript als Benutzer auszuführen. "Dank, deiner Rückmeldung hier." Und ich habe ein AUR-Paket ureminder-git angelegt, auf dass du wechseln solltest, denn dort wird es dann schneller als bei dem Paket ohne -git Änderungen bzw. die Korrekturen geben. (Wenn es welche gibt)
              Du könntest also jetzt ein trizen -R ureminder ausführen und danach ein trizen -S ureminder-git, das spielt dann die Version 0.8.2-1 ein, dann funktioniert es.

              Weshalb das go Paket bei dir installiert ist, weiß ich nicht.
              Eigentlich wird das nur zum compilieren von Programmen benötigt (siehe hier) die mit go geschrieben sind. Was hast du sonst noch aus dem AUR installiert was go benötigt?

              Hallo
              Weshalb das go Paket bei dir installiert ist, weiß ich nicht, das solltest Du aber.
              Das go Paket ist eine Abhängigkeit vom pup, wird das zur Übersetzung der Meldungen benutzt?
              Hier nur ein Auszug aus der AUR Installation von ureminder, bei Bedarf kann ich das komplette log dazu liefern.

              #_gitauthor="tuxnix"
              #_gitbranch="master"
              # Maintainer: tuxnix <tuxnix@gmx.com>
              
              depends=('bash' 'curl' 'pup' 'systemd' 'libnotify' 'reflector' 'pacman-contrib')
              makedepends=('git')
              
              Repository      : AUR
              Name            : ureminder
              Version         : 0.8.1-1
              Maintainer      : tuxnix
              URL             : https://codeberg.org/tuxnix/ureminder
              AUR URL         : https://aur.archlinux.org/packages/ureminder
              License         : GLPv2-only
              Votes           : 1
              Popularity      : 1%
              Installed       : No
              Out Of Date     : No
              Depends On      : bash
                                curl
                                systemd
                                libnotify
                                reflector
                                pacman-contrib
                                pup
              Make Deps       : git
              Check Deps      : None
              Optional Deps   : None
              Provides        : None
              Conflicts With  : None
              Replaces        : None
              Package Base    : ureminder
              Last Update     : Sat Jan 18 16:16:11 2025
              Description     : Remind user upgrade packages and keeps package cache clean
              
              :: Cloning AUR package: pup
              
              # Maintainer: Adrian Perez de Castro <aperez@igalia.com>
              pkgdesc='Command line tool for processing HTML'
              pkgname=pup
              
              =>> Edit pup/PKGBUILD? [y/N]: n
              
              Repository      : AUR
              Name            : pup
              
              ==> Installiere fehlende Abhängigkeiten...
              
              Paket (1)  Neue Version  Netto-Veränderung  Größe des Downloads
              
              extra/go   2:1.23.5-1           223,40 MiB            39,78 MiB
              • tuxnix hat auf diesen Beitrag geantwortet.
                • Bearbeitet

                md_39118
                Danke, dass du da nachhakst, das werde ich mir wohl nochmal gesondert anschauen müssen.

                Übrigens: Es gibt inzwischen die 0.8.2-2 Version für das ureminder-git Paket.
                Wenn du schon auf dem git Zweig bist, genügt ein trizen -Syu zum upgraden.
                Geändert hat sich die Einstellung im ureminder.timer in OnUnitActiveSec=24hours anstatt wie bisher OnCalendarSec=daily.

                Mit OnCalendarSec=daily läuft das Stript immer um 00:00 Uhr.
                Bei OnUnitActiveSec synchronisiert sich das script mit den Gewohnheiten des users, mit den Zeiten wann der Rechner einschaltet wird. Außerdem kann man damit auch Intervalle von z.B. 12 oder 6 Stunden einstellen, wenn man öfters an ein upgrade erinnert werden möchte.

                Ich werde den ureminder-git Zweig zum Testen von kleinen Änderungen nutzen.
                Der ureminder Zweig ist dann eher für deine Kumpels gedacht, dort sollte es stable laufen.

                • Bearbeitet

                md_39118
                Ich habe nachgeschaut.
                Du hast recht: 'pup' ist unnötig für das ureminder script.
                Ich habe die Abhängigkeit von pup jetzt herausgenommen.
                ureminder-git 0.8.2-3 ist online.

                trizen -R pup ureminder-git
                trizen -S ureminder-git

                So müsste es klappen.

                (go war auf meinen Rechner nicht installiert, deshalb weiß ich auch nicht wie du dazu gekommen bist. Deinstalliere es einfach. Wenn pacman dabei meckert dann weißt du warum.)

                Hallo
                Der Test Heute war ernüchternd aber der Reihe nach. Morgen wird es noch einen Test geben.
                Bevor die ureminder-git Version Installiert wird, wurde alles alte gelöscht.

                trizen -Rdd pup
                trizen -Rdd go
                trizen -Rdd ureminder
                trizen -S ureminder-git
                reboot

                Der 1 Start. Hier ein Auszug aus dem Log und das Bild dazu.

                Jan 25 17:27:54 rk-7072 systemd[1]: Started ureminder.service.
                Jan 25 17:27:54 rk-7072 ureminder[1258]: Display message: What's to do when upgrading - ON
                Jan 25 17:27:54 rk-7072 ureminder[1258]: Auto upgrade every 7 days - ON
                Jan 25 17:27:56 rk-7072 ureminder[1265]: ==> finished: 1 packages removed (disk space saved: 39.78 MiB)
                Jan 25 17:27:56 rk-7072 ureminder[1284]: ==> finished: 3 packages removed (disk space saved: 7.16 MiB)
                Jan 25 17:28:24 rk-7072 ureminder[1306]: Paket (25)                   Alte Version            Neue Version              Netto-Veränderung  Größe des Downloads
                Jan 25 17:28:24 rk-7072 ureminder[1306]: Gesamtgröße des Downloads:  153,62 MiB
                Jan 25 17:29:02 rk-7072 ureminder[1306]:  llhttp-9.2.1-2-x86_64 wird heruntergeladen …
                Jan 25 17:29:02 rk-7072 ureminder[1306]: Schlüsselbund wird geprüft …
                Jan 25 17:29:02 rk-7072 ureminder[1306]: Paketintegrität wird geprüft …
                Jan 25 17:29:06 rk-7072 systemd[1]: ureminder.service: Deactivated successfully.
                Jan 25 17:29:06 rk-7072 systemd[1]: ureminder.service: Consumed 10.401s CPU time, 232.5M memory peak.
                reboot

                Vor dem 2 Start wurde der timer und service geändert um mit journalctl -f alles sehen zu können.

                sudo nano /usr/lib/systemd/system/ureminder.timer
                OnStartupSec=5min
                sudo nano /usr/lib/systemd/system/ureminder.service
                ExecStart=/usr/bin/ureminder -ad 1
                
                Der 2 Start. Hier ein Auszug aus dem Log und das Bild dazu.
                Jan 25 17:52:20 rk-7072 ureminder[1225]: Auto upgrade every 7 days - ON
                Jan 25 17:52:21 rk-7072 ureminder[1233]: ==> finished: 1 packages removed (disk space saved: 30.56 KiB)
                Jan 25 17:52:21 rk-7072 ureminder[1252]: ==> finished: 18 packages removed (disk space saved: 142.22 MiB)
                Jan 25 17:52:47 rk-7072 ureminder[1274]:  llhttp-9.2.1-2-x86_64 wird heruntergeladen …
                Jan 25 17:52:47 rk-7072 ureminder[1274]: Schlüsselbund wird geprüft …
                Jan 25 17:52:48 rk-7072 ureminder[1274]: Paketintegrität wird geprüft …
                Jan 25 17:52:52 rk-7072 systemd[1]: ureminder.service: Deactivated successfully.
                Jan 25 17:52:52 rk-7072 systemd[1]: ureminder.service: Consumed 4.274s CPU time, 228.8M memory peak.
                reboot

                Der 3 Start. Hier ein Auszug aus dem Log und das Bild dazu.

                sudo ureminder -ad 1
                Display message: What's to do when upgrading - ON
                Auto upgrade every 7 days - ON
                ==> finished: 1 packages removed (disk space saved: 30.56 KiB)
                ==> no candidate packages found for pruning
                :: Pakete werden empfangen …
                 llhttp-9.2.1-2-x86_64                                                                                             30,3 KiB   840 KiB/s 00:00 
                (25/25) Paket-Integrität wird überprüft                                                                                                       
                Das wars.
                reboot 

                Der 4 Start. Hier habe ich mitbekommen das es jetzt eine config Datei gibt, und den DAY auf 1 geändert.

                ls -la /etc/ureminder.config
                -rw-r--r-- 1 root root 704 25. Jan 17:05 /etc/ureminder.config
                sudo nano /etc/ureminder.config

                Donnerwetter der erste erfolgreiche Lauf.
                Wieder ein Auszug aus dem Log und das Bild dazu.

                sudo ureminder
                Display message: What's to do when upgrading - ON
                Auto upgrade every day - ON
                :: Vollständige Systemaktualisierung wird gestartet …
                Abhängigkeiten werden aufgelöst …
                Gesamtgröße der installierten Pakete:  591,00 MiB
                Größendifferenz der Aktualisierung:    -43,85 MiB
                :: Post-transaction-Hooks werden gestartet …
                (13/13) Updating the vlc plugin cache...

                • tuxnix hat auf diesen Beitrag geantwortet.
                  • Bearbeitet

                  Ich sehe nur, dass wieder "minus Minuten" als nächsten Upgradezeitpunt angzeigt werden.
                  Ist es das, was du mir zeigen möchtest?
                  Ich weiß jetzt nicht welchen Gegenstand deine Tests haben.

                  Es könnte sein, dass beim ersten Lauf nachdem der systemd-timer neu anläuft vom script falsche Zeiten berechnet werden. Um zu sehen was da geschieht, kannst du das script mal zwischendurch manuell auf der konsole mit der -b Option laufen lassen. Dann siehst du genau wie das script sich da was zusammen rechnet. Wenn man weiß, weshalb, dann kann man das auch im script abfangen. Ich habe bisher leider noch keine "minus Minuten" bei mir gesehen obwohl ich darauf gelauert habe. Wenn du dann ein reboot durchführst, dann muss der Timer auch wieder neu starten und es passiert dann wieder das selbe. Besser wäre es mal zu schauen ob beim zweiten mal, wenn der Timer auslöst, das Problem behoben ist. Das gäbe ein Hinweis auf die Ursache.
                  (Das Script bezieht seine Zahlen von dem was der Timer protokolliert. Es könnte sein, dass beim ersten Lauf noch keine Synchronizität besteht.)
                  Falls das Problem mit der falschen Berechnung bei dir weiter bestehen sollte, bau ich dir eine Funktion ein, bei der das dann protokolliert wird. Dann können wir zusammen schauen.
                  Jedenfalls sehe ich auf den screenshots und dem journal nur dass, aber nicht weshalb das passiert.

                  Zu den Neuerungen:
                  Gehe mal nach https://codeberg.org/tuxnix/ureminder
                  Dort siehst du was sich wann genau am script tut.
                  Wenn du ein trizen -S ureminder-git durchführst bist du immer auf dem aktuellen Stand.
                  Auch versuche ich, die Dokumentation dort einigermaßen aktuell zu halten.
                  (Ein screenshot von dir steht auch schon da 😉 )

                  Führe mal ein cp /etc/ureminder.config ~/.config/ureminder.config
                  durch.
                  Sinn der ~/.config/ureminder.config ist, dass man dort mit Userrechten das script auf seine eigenen Bedürfnisse einstellen kann.

                  Man kann die Liste der GUIs kürzen, dann läuft das script ein klein wenig schneller, oder man ergänzt die Liste, wenn die eigene GUI dort noch nicht gelistet ist.
                  (Erfährt dann die dort gelistete GUI ein upgrade, dann erscheint falls diese GUI gerade aktiv läuft auch eine Mitteilung, dass man die usersession nach dem upgrade neu starten soll.

                  Das Gleiche bei den APPS.
                  In der Liste sollen die Programme stehen, mit denen der User auch arbeitet.
                  Der Hinweis "Sichere neue Dokumente" entfällt. In Zukunft soll dort nur noch so etwas wie "Speichere deine libreoffice Dokumente ab" und "führe ein # pacman -Syu aus" "starte libreoffice nach dem upgrade neu" stehen. Natürlich nur dann wenn der user auch gerade liebreoffice am laufen hat. Nur dann macht so ein Hinweis auch Sinn.

                  Die Option -a ist eine Hilfe für beginners die damit an die Hand genommen werden sollen.
                  Der Anfänger weiß nicht was passiert wenn er ein # pacman -Syu tätigt und traut sich deshalb nicht. Die Hinweise sagen ihm: "Hey was soll denn groß passieren, speichere deinen eigenen Kram ab und hinterher startest du die Anwendung oder die GUI neu (die gerade ein upgrade erfährt), dann bist du auf der sicheren Seite.
                  Außerdem haben die meisten Umsteiger von Windows her gelernt, ihrem eigen Verstand zu misstrauen, aber alles zu tun was ihnen ein Computer erzählt. Das möchte ich hier nutzen, damit ein völliger newbe mal den Einstieg schafft.

                  Den systemd timer stellt man wie bisher mit Rootrechen mit z.B.:

                  # nano /usr/lib/systemd/system/ureminder.timer
                  systemctl reenable ureminder.timer

                  ein. Neu ist, dass man jetzt Stundenintervalle wählen kann in denen das script starten soll.
                  Für Testzecke ist es nicht verkehrt hier =1hours oder 2hours stehen zu haben.
                  Das automatisch upgrade wir wie bisher maximal nur ein mal täglich durchgeführt.

                  Neu hinzugekommen mit der config ist auch die Möglichkeit die Adv (advice-function Option -a ) mit userrechten anstellen zu können, und auch die Intervalle eines automatische Upgrades (days=7) kann man jetzt dort recht einfach regeln.

                  Im ureminder.service steht deshalb nur noch ein ExecStart=/usr/bin/ureminder ohne Optionen!

                  Orientierend gilt: Die Angaben der /etc/ureminder.config gelten nicht, wenn es eine ~/.config/ureminder.config gibt. Und mit den Optionen kann man, wenn man das script manuell auslöst auch zusätzlich mal eine Option hinzuschalten. (wie z.B. die Option -b wenn man wissen will, wie das script intern tickert.)

                  Ganz neu hinzugekommen ist die Möglichkeit, ein geplantes Auto Upgrade komplett zu unterbinden, wenn Pakete ein Upgrade erfahren sollen, die für den User sensibel sind und Zeit der Nachsorge bedürfen.

                  @GerBra hat diesen Punkt ganz am Anfang der Diskussion erwähnt.
                  Er schaut sich immer genau die Liste der upgrades an und wählt falls etwas Sensibles darunter ist, einen Zeitpunkt bei dem er auch die Zeit für eine eventuelle Nachsorge hat.
                  Diesen Zweck soll die neue Funktion erfüllen.

                  Steht ein upgrade eines sensiblen Paketes an. Gibt es auf dem Desktop einen roten Warnhinweis bis der user das upgrade selbst durchgeführt hat:

                  Die nächsten Tage wird nichts wesentlich Neues hinzukommen.
                  Aber die jeweiligen notify-send Meldungen erfahren eine Überarbeitung.
                  Neue Meldungen erscheinen dann erst einmal auf Englisch. Alte auf Deutsch.
                  Und bei der config muss ich auch noch daran arbeiten, dass unsinnige Eintragungen abgefangen werden. Also bitte nicht wundern wenn noch nicht sofort alles ganz perfekt ist.
                  Und Danke wie immer für deine Rückmeldungen.