fix(display): Phase im Kopfbalken, Rand unten, Wants-Fehler behoben
Drei Befunde der Hardware-Abnahme: die Migrationsphase stand als eigene kleine Zeile unter dem Lampennamen und ging dort unter - sie steht jetzt rechtsbuendig neben dem Modus in der invertierten Kopfzeile (mit Kuerzung/kleinerer Schrift/Weglassen als gestaffelte Antwort auf eine zu lange Phase, nie mit Ueberlappung). Die letzte Beiwerkzeile klebte am unteren Panelrand - durch das Verschieben der Phase in den Kopf bleiben nur noch fuenf statt sechs Beiwerkzeilen, zusaetzlich durchgesetzt per BOTTOM_MARGIN_PX in der Abbruchbedingung von compose(). Ausserdem ein am Geraet nachgewiesener Fund: ninlight-display.service trug Wants=ninlight-station.service NEBEN dem gewollten After= - Wants= aktiviert die genannte Unit aber, statt nur zu ordnen, und zog den absichtlich deaktivierten Stationsdienst bei jedem Boot ohne Zugangspunkt in einen "failed"-Zustand. Wants= entfernt, After= bleibt.
This commit is contained in:
@@ -1,12 +1,25 @@
|
||||
[Unit]
|
||||
Description=ninlight E-Paper-Anzeige (Status der Migrations-/Rettungsstation)
|
||||
# Nur eine Anzeige fuer den Hauptdienst - Wants=/After=, NICHT Requires=/BindsTo=: ein
|
||||
# Nur eine Anzeige fuer den Hauptdienst - After=, NICHT Requires=/BindsTo=/Wants=: ein
|
||||
# fehlendes oder abgestuerztes Panel darf server.py niemals mitreissen, und server.py
|
||||
# darf umgekehrt starten, auch wenn dieser Dienst fehlt oder deaktiviert ist. Siehe
|
||||
# display.py's Modul-Docstring: die Anzeige ist nirgends Voraussetzung fuer die
|
||||
# Migration.
|
||||
#
|
||||
# KEIN Wants=ninlight-station.service (stand hier zuerst, Fund der Hardware-Abnahme auf
|
||||
# Pi 2): Wants= ist keine reine Reihenfolgeangabe, sondern AKTIVIERT die genannte Unit
|
||||
# beim Start dieser Unit, unabhaengig davon, ob sie enabled ist - "ninlight-station" ist
|
||||
# absichtlich disabled (siehe deren Kommentar: die Station ist per Vorgabe aus), wurde
|
||||
# aber trotzdem bei jedem Boot mitgestartet, weil dieser (enabled) Anzeigedienst sie ueber
|
||||
# Wants= mitzog. Ohne Zugangspunkt kann server.py 192.168.8.1 nicht binden, stirbt, wird
|
||||
# von Restart=always dort mehrfach neu versucht und bleibt auf "failed" haengen - das
|
||||
# flutet das Journal bei jedem Boot und laesst "ninlight-station status" faelschlich
|
||||
# einen Fehler ("failed" statt "inactive") vermuten, wo absichtlich nichts laeuft.
|
||||
# After= allein ordnet nur die Startreihenfolge, FALLS beide Units ohnehin gestartet
|
||||
# werden (z.B. wenn jemand die Station von Hand einschaltet) - und genau das war hier
|
||||
# gemeint, nicht "zieh die Station mit hoch". Nicht aus falscher Vorsicht wieder
|
||||
# einbauen: der Nebeneffekt ist genau der oben beschriebene, kein Sicherheitsnetz.
|
||||
After=ninlight-station.service
|
||||
Wants=ninlight-station.service
|
||||
# Gehoeren seit systemd 229 ins [Unit], nicht ins [Service] (dort standen sie zuerst -
|
||||
# Fixrunde 1, I1: systemd ignoriert sie dort mit "Unknown key name", die Vorgabe (5
|
||||
# Starts/10s) greift dann bei RestartSec=5 nie, und genau das sollte die Deckelung unten
|
||||
|
||||
Reference in New Issue
Block a user