Hallo Zusammen,
nun sind durch verschiedenste Abhängigkeiten und gewisse Verzögerungen inzwischen fast 2 Monate seit dem letzten RaspberryMatic Release vergangen. Und so bin ich leider erst jetzt dazu gekommen eine neue stabile Version als (3.71.12.20231014) Release freizugeben.
Bei dieser Version handelt es sich um ein Maintenance Release, welches neben kleineren Verbesserungen und einigen Bugfixes auch ein paar Aktualisierungen wichtiger Betriebssystem-Komponenten mit sich bringt die dem CCU Gesamtsystem zu gute kommen sollte.
Die komplette Änderungshistorie kann wie immer hier eingesehen werden (wurde mit DeepL automatisiert übersetzt):
Änderungen:
CCU/HomeMatic-System Änderungen:
- CloudMatic Addon Aktualisierungen umgesetzt, welche einen temporären Workaround integriert um VPN-Verbindungen mit neueren OpenSSL/OpenVPN Versionen weiterhin zu erlauben, da Verbindungen mit den inzwischen veralteten SHA1-gehashten CloudMatic Zertifikaten, die eigentlich als unsicher/schwach angesehen werden, zulässt. Die tls-cipher “DEFAULT:@SECLEVEL=0” VPN-Client-Option wurde hinzugefügt, um dieses Problem zu umgehen, bis EasySmartHome/CloudMatic ihre Zertifikatsinfrastruktur aktualisiert hat, um SHA256-gesicherte Zertifikate zu verwenden (#2442).
- Mediola NEOserver Addon auf die neueste Version 2.13.0 aktualisiert.
- lighttpd startup/config wurde so geändert, dass der Statuscode “503 Service unavailable” zurückgegeben wird, wenn der CCU-Start noch nicht abgeschlossen ist. Dies sollte mögliche Laufzeitprobleme verhindern, falls externe Engines wie ioBroker oder HomeAssistant versuchen, remoteAPI-Ports zu verwenden, wenn nicht alle CCU-Dienste ordnungsgemäß gestartet sind. Außerdem lassen wir jetzt nur noch bestimmte Abfrage-URLs für Port 8181/48181 zu.
- ReGaHss-Init-Skript geändert, um sicherzustellen, dass die pid-Datei weltweit lesbare Rechte hat, damit hss_led ihren Status abfragen kann.
- Sichergestellt, dass ReGaHss standardmäßig mit umask 0027 läuft, so dass die regadom-Datei mit etwas strengeren Dateisicherheitseinstellungen erzeugt wird.
- Eine erste Reihe von Änderungen integriert, so dass die Dienste hss_led, eq3configd, ssdpd, snmpd und nut mit dedizierten, nicht-privilegierten Benutzern und Gruppen ausgeführt werden, anstatt immer als Root-Benutzer. Dies sollte die Sicherheit dieser Dienste etwas verbessern, so dass sie nicht auf Ressourcen zugreifen können, für die sie keine expliziten Rechte haben (#599).
WebUI Änderungen:
- 0041-WebUI-Patch durch Hinzufügen von CCU-Jack zur Schnittstellen-/Kategorieauswahl erweitert (#2446, #2445, @Baxxy13).
- CodeMirror auf Version 5.65.15 aktualisiert.
- 0039-WebUI-Fix-Style-Glitches WebUI-Patch hinzugefügt, um die Schaltflächen auf den Direktlink-Seiten in fetter Schrift darzustellen, damit das Look&Feel mit dem Rest konsistent ist.
Betriebsystem Änderungen:
- openresolv/resolvconf-Unterstützung umgesetzt, so dass die DNS-Konfigurationsverwaltung der resolv.conf in Zukunft dynamisch durchgeführt wwird, anstatt immer eine statische resolv.conf-Datei beim Booten zu erzeugen.
- veraltete PATH-Einstellungen im S46tailscaled-Init-Skript entfernt. Zusammen mit dem kürzlich eingeführten openresolv-Paket erlaubt dies endlich die korrekte Nutzung der MagicDNS-Funktionalität in tailscale, so dass die DNS-Einstellungen dynamisch angepasst werden und somit alle tailscale-Maschinen über ihren Namen erreichbar sind (#2399).
- Neuen Buildroot-Upstream-Patch hinzugefügt, um libcurl auf 8.4.0 zu aktualsieren um so wichtige Sicherheitsbehebungen zu integrieren (CVE-2023-38545, CVE-2023-38546).
- Shellcheck-Warnungen/Fehler in dhcp.script und eQ3StartNetwork behoben
- Tailscale reverse proxy setup in lighttpd repariert, so dass wir uns wieder über die WebUI für tailscale VPN anmelden können.
- Upstream-Linux-Kernel auf 6.1.57 aktualisiert.
- Tailscale auf die neueste Version 1.50.1 aktualisiert.
- buildroot auf die neueste Version 2023.08.1 aktualisiert und eine Reihe von Upstream-Patches, die wir eine Zeit lang selbst gepflegt haben, entfernt.
- rc.shutdown Skriptausführung eingeführt (#2452, @Baxxy13).
- Verbesserung aller SXX-Init-Skripte, die ein rc.xxx-Skript ausführen, durch Hinzufügen von Echo-Ausgaben, um zu signalisieren, dass diese Skripte ausgeführt werden, und Hinzufügen einer maximalen Zeitüberschreitung von 120 Sekunden für diese Skripte, so dass sie das Starten/Herunterfahren nicht mehr blockieren können (#2450, @Baxxy13).
- Regressionskorrektur für rc.postlocal (#2449, @Baxxy13).
- Einführung von /usr/local/etc/rc.postlocal nach dem Start des Skripts (#2447, #2338, @Baxxy13).
- Die veraltete vga-Kernel-Befehlsoption wurde durch die Verwendung der Grub-Variable gfxpayload ersetzt, so dass keine veraltete Warnung mehr angezeigt werden sollte.
- Neuer 0018-grub2-fix-incompat-ext2 buildroot upstream patch hinzugefügt, der grub2 dazu bringt, bestimmte neuere ext-Dateisystem-Features zu ignorieren, die grub2 daran hindern könnten, ein ext-Dateisystem korrekt zu erkennen, obwohl es noch gültig ist. Dies ist besonders kritisch für die Metadaten-Prüfsummen-Seed-Funktion, die seit der letzten e2fsck 1.47.0 Version nun eine Standardeinstellung ist und somit neue ext-Dateisysteme wie grub2 inkompatibel macht, ohne diese Upstream-Grub2-Patches, die noch nicht Teil von buildroot sind. (vgl. https://bugs.debian.org/cgi-bin/bugrepo … ug=1031325, https://bugs.debian.org/cgi-bin/bugrepo … ug=1030939).
- Java azul Version auf die neueste LTS-Hauptversion 17 (17.44.53-ca-jre17.0.8.1) aktualisiert und das java-azul buildroot-Paket entsprechend modifiziert, was eine erhebliche Steigerung der Java-Version darstellt und die Verarbeitungsgeschwindigkeit von HMIPServer verbessern könnte.
- Global BR2_ENABLE_LTO für alle unsere Buildroot-Konfigurationen aktiviert, um die Leistung zu verbessern und kleinere Binärdateien zu erhalten.
- Verwendung von “armv7” in allen unseren Docker-Container-Builds anstelle von “linux/arm” oder “armhf”, um bestimmte HA-Addon-Update-Probleme zu lösen (vgl. #2393).
- install-proxmox.sh geändert, um eine dedizierte VM-ID auswählen zu können (#2424, @indiana11011100).
- 0012-ffmpeg-rpi-userland-aarch64 buildroot upstream patch zurückgezogen, da upstream die aarch64-Builds für rpi-userland korrigiert hat.
- Nodejs auf 18.18.1 aktualisiert, indem wir unser Nodejs-Buildroot-Upstream-Patchset angepasst haben.
Mitwirkende (diese Version, alphabetisch):
Support:
Hier sei auch noch einmal auf die umfangreiche Dokumentation von RaspberryMatic hingewiesen an der bereits seit einiger Zeit gearbeitet wird und die auch sukzessive mit jeder Version verbessert wird. Zu erreichen ist die Dokumentation unter folgender Stelle:
- RaspberryMatic – Dokumentation
- RaspberryMatic – Forum
- RaspberryMatic – Documentation
- RaspberryMatic – Discussions
Wie die URLs schon vermuten lassen, handelt es sich hierbei teils um einen öffentlichen Wiki an dem sich wirklich jeder gerne (nach entsprechender technischer Selbst-Einarbeitung) beteiligen kann um Anderen vor allem den Einstieg rund um das Thema “RaspberryMatic” zu erleichtern.
Download/Installation:
Die neue Version kann wie gehabt von folgender URL für die verschiedenen Installationsplatformen von RaspberryPi über Tinkerboard bis hin zu allen virtuellen Platformen heruntergeladen und entsprechend installiert werden:
https://github.com/jens-maus/RaspberryM … ses/latest
Zu beachten gilt, das auf Grund der Unterstützung unterschiedlicher Geräte/Platformen es getrennte Installationsarchive und Installationsweisen gibt die für die folgende Hardware jeweils einheitlich ist. Hier bitte entsprechend die Dokumentation konsultieren.
Update/Upgrade:
Das Update auf diese Version kann bei Einsatz einer Vorversion unter “Einstellungen->Systemsteuerung->Zentralen-Wartung” durch Upload der jeweiligen *.zip oder *.tgz Datei (Nicht ausgepackt!) erfolgen. Alternativ kann natürlich weiterhin auch einfach eine neue SD-Karte verwendet werden und das im Archiv befindliche *.img auf die neue SD Karte kopiert werden um dann von dort aus neu zu booten und via Backup-Restore das jeweils aktuelle Backup wiederherstellen zu lassen. Bei den virtuellen Platformen (ova bzw. oci) passiert das jeweilige Update/Upgrade ggf. via der eingesetzten Virtualisierungsumgebung.
Hinweis:
Bitte beachten, dass natürlich vor jedem Update erst einmal ein manuelles Backup erfolgen sollte damit bei eventl. Fehlschlagen des WebUI-basierten Updates man mittels einer neuen SD-Karte dann sein aktuellstes Backup einfach wieder einspielen kann.
Für Bugreports und Featurerequests bitte den GitHub Issue-Tracker nutzen damit ich die Anfragen geordnet abarbeiten kann. Support- und Hilfeanfragen bei vermeintlichen Nutzungsproblemen bitte weiterhin hier als erstes im Forum platzieren und erst daraus ein Bugreport im GitHub machen wenn das Problem von anderen Nutzern bestätigt werden konnte.
Viel Spass mit der neuen RaspberryMatic Version!