Huhu,
Der steht in diversen UCR-Variablen; siehe Ausgabe von ucr search --brief '^version/'
Der ist leider nicht so einfach zu ermitteln. Das, was @thhoe vorgeschlagen hat…
…funktioniert nur für Errata-Updates, nicht aber für neue Major-/Minor-Releases/Patchlevel. Der Grund ist, dass für jedes Major-/Minor-Release/Patchlevel neue APT-Quellen hinzukommen. Oder anders ausgedrückt: wenn man aktuell (fiktiv) 4.2-3 Errata 123 laufen hat, so kann man alle Errata-Updates für 4.2-3 direkt über APT herausbekommen (vorher ein apt-get update
), nicht aber, dass es 4.2-4 oder gar 4.3-0 gibt.
Um herauszufinden, ob es neue Majors/Minors/Patchlevel gibt, kann man das machen, was der Univention-Updater ebenfalls macht: unter der URL https://updates.software-univention.de/ nachschauen, welche Verzeichnisse es gibt. Wenn ich den Code (def get_next_version
in /usr/share/pyshared/univention/updater/tools.py
) richtig lese, so nimmt der Updater die aktuelle Version als Basis (z.B. 4.2-4), zählt zuerst das Patchlevel hoch (also 4.2-5) und prüft, ob es dafür das Komponentenverzeichnis https://updates.software-univention.de/<major>.<minor>/maintained/<major>.<minor>-<patchlevel>/
(effektiv somit https://updates.software-univention.de/4.2/maintained/4.2-5/
) gibt.
Das gleiche wird dann auch mit hochgezählter Minor-Release und Patchlevel 0 (also 4.3-0) sowie mit hochgezähltem Major mit Minor & Patchlevel = 0 (5.0-0) gemacht.
Das ganze berücksichtigt noch nicht die Apps, die installiert sein können. Dafür müsste man die entsprechenden App-Center-Katalogdateien herunterladen und auswerten. Glücklicherweise sind das JSON-Dateien und damit einfach zu handhaben. Die URL für die Katalogdatei lautet: https://appcenter.software-univention.de/meta-inf/<major>.<minor>/index.json.gz
Was man etwas einfacher abfragen kann, ist die Frage, ob es generell Updates gibt. Das liegt daran, dass der Updater regelmäßig im Prüfmodus ausgeführt wird und das Ergebnis in der UCR-Variable update/available
speichert.
Gruß
mosu