-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Restore Konzept für programs.htm #13
Comments
Hallo @TomMajor, prinzipiell ist m.E. das ganze Addon in seiner Struktur etwas outdated. Am liebsten würde ich hergehen und ein neues Addon ohne direkte Veränderung der originalen Dateien der CCU erstellen. Dazu braucht es aber einen größeren Umbau. Zumindest deine 2. Beobachtung ist aber in meinem PR #9 bereits enthalten. PS: ich weiß nicht, wer hier überhaupt Rechte für den Merge hat, daher liegt mein PR auch schon eine Weile rum ... |
Ich hatte in den letzten Tagen mit Tom schon per Mail ein wenig "gebrainstormt". Insofern stimme ich - mit Ausnahme von Punkt 1 - grundsätzlich zu.
Klingt interessant - wie kann sowas funktionieren? Mir schwebte mal sowas vor, dass man beim Booten das komplette Aber: Nachteilig bei CCU2 und CCU3 ist, dass die Addon-Installation zu einem späten Zeitpunkt stattfindet, wo ReGaHss und RFD (die für unser Addon relevanten Dienste) laufen. Das würde dann bei jedem Reboot zur Folge haben, dass nach der Addon-Installation die Dienste noch mal abgewürgt und neu gestartet werden. Ein
Ich glaube nur @jens-maus. Mein Vorschlag an Tom war auch, erst mit der Arbeit zu diesem Issue hier zu beginnen, wenn dein PR (@ptweety) gemerged ist. Sonst fängt man wieder an zu basteln. |
Also ich kann den PR von @ptweety gerne mergen, wegen des großen Umfanges der Änderungen ist ein review aber recht schwierig. Hier wäre es besser gewesen das ganze kleinteiliger umzusetzen. Auch möchte ich noch einmal in Erinnerung rufen, das nein eigentlicher Plan für dieses Addon ist, dieses direkt als webui patch in RaspberryMatic zu integrieren, denn es handelt sich bei diesem eigentlich un nichts anderes als ein großer webui und da ist es ein leichtes das umzusetzen. Und eigentlich bereitet mir das addon mit seinen massiven Änderungen an der webui via remount ziemliche Bauchschmerzen. Das würde dann das addon auf die Nutzung mit einer CCu3 oder CCU2 Firmware in zukunft beschränken. |
Um hier in irgendeiner Weise weiter voranzukommen: So, wie es jetzt ist, ist es 💩 , wenn jemand das
WebUI-technisch wird doch nur ein Footer-Button implementiert?
Das kannst du ja gern machen, aber RM ist halt nur ein Stück der großen CCU-Derivate-Torte. |
@ptweety ja stimmt, hatte ich mir nicht alles anschauen können, der PR ist zu groß, da muss ich Jens zustimmen. Besser fürs Review wären kleinere Schritte. Wenn Jens das AddOn für RM integrieren würde wäre das super und IMHO ein Schritt nach vorn um die Konflikte mit anderen AddOn aufzulösen und natürlich die RM besser und kompfortabler zu machen.. Kurzfristig schlage ich das reverse restore mit sed anstatt dem backup copy vor, wie oben geschrieben, das würde das Hauptproblem dieser issue adressieren. |
Nun, wenn man gemeinsam genutzte Funktionen aus 25 Dateien in eine einzelne Datei packt und dann darauf verweist, dann hat man in 25 Dateien Änderungen vorgenommen. @ptweety hatte seine Änderungen in einem Kommentar #9 (comment) auch noch mal gut zusammengefasst. |
In Kombination mit anderen AddOn ist das Restore Konzept ungünstig, bei uninstall die alten Backup-Copies einfach wieder zu restoren ohne Rücksicht auf Änderungen die andere AddOn in der Zwischenzeit gemacht haben.
Da bin ich neulich wieder drauf reingefallen (kein Drucken Button).
Das betraf vor allem die Datei /www/rega/pages/tabs/admin/views/programs.htm, welche auch von Jeromes JP-HB-Devices-addon gepatched wird (und auch mein abgeleitetetes -Reduced AddOn)
Mein Vorschlag wäre, für programs.htm den uninstall genau so mit sed wie den install vorzunehmen, nur reverse.
Meine Tests dazu waren ok, konnte aber nur auf RM testen:
patch
restore
ich mache erst mal bewusst keinen PR sondern eine issue da noch ein PR offen ist und ich nicht weiß wie der Status der Weiterentwicklung von hm-print ist.
Weitere Beobachtungen:
Alle if Abfragen werden bei jedem Start des Systems ausgeführt, ein besserer Stil imho wäre ein Flag zu haben ob das AddOn installiert ist oder nicht a la
https://github.com/jp112sdl/JP-HB-Devices-addon/blob/master/src/rc.d/jp-hb-devices-addon#L69
und dann nur einmalig ausführen
Jede if Bedingung hat innerhalb ein extra mount RW/RO. Effizienter wäre ein einziges RW/RO "außen" beim install. Hängt natürlich auch mit 1. zusammen.
programs.org sieht wie ein ungenutzter Rest von früher aus da sonst immer nur mit programs.org1 gearbeitet wird:
https://github.com/homematic-community/hm-print/blob/master/rc.d/programmedrucken#L162
Nach meinen Beobachtungen braucht hm-print ein restart auf RM wenn es nicht installiert war, das belegen auch Beiträge von usern im HM Forum thread zu diesem AddOn. Insofern sollte man imho zumindest für RM den Neustart erwzingen.
The text was updated successfully, but these errors were encountered: