Homebridge Installations-Skript

  • Hallo zusammen,


    da ich die Installation neuer Plugins oder andere Experimente gern zuerst in einer experimentellen Umgebung, also unter einem frisch installierten Raspbian, teste, kommt es dazu, dass mit einer gewissen Häufigkeit auch die Homebridge neu aufsetze.


    Ich gehe dazu stets (wie vermutlich die Meisten hier) nach der Forums-Anleitung von sschuste vor (an dieser Stelle nochmal Danke dafür) und würde sie auch jedem Neueinsteiger empfehlen. Nur frisst auch die tolle step-by-step Anleitung mit copy & paste jedesmal einiges an Zeit, die ich für mich gern noch reduzieren wollte.


    Ich habe daher ein kleines Installations-Skript für die automatische Installation von Homebridge geschrieben und möchte dieses nach mehrmaligem Testen/Durchführen* nun auch gern Anderen zur Verfügung stellen.


    Wer könnte etwas davon haben?


    1. Alte Homebridge-Hasen, die zum x-ten Mal die Homebridge aufsetzen und eigentlich schon alle Befehle herunterbeten können

    2. Einsteiger, die sich absolut gar nicht mit der Materie auseinander setzen möchten und die es auch nicht interessiert, warum irgendetwas funktioniert, wie es funktioniert


    (Ich selbst ordne mich übrigens irgendwo im weiten Mittelfeld zu ;))


    Wichtig: Das Skript nur ausführen, wenn noch keine Homebridge im System läuft, es kann (und wird) sonst zu Problemen kommen!

    Anleitung:

    1. Zuerst schreiben wir ein Raspbian unserer Wahl auf eine microSD Karte. Hier können wir uns an Schritt 1 der Forums-Anleitung halten oder nach dem Schreiben des Image und dem Einlegen der Karte in den Raspberry einfach Bildschirm, Maus und Tastatur anschließen. Bei Letzterem können wir den Einrichtungsassistenten unter Raspbian nutzen (nur bei den Versionen "with Desktop"), müssen jedoch im Anschluss noch manuell SSH in der raspi-config aktivieren.


    2. homebridger.sh.zip entpacken


    3. Das Skript homebridger.sh in das Homeverzeichnis des Nutzer "pi" kopieren.

    -> mit Bildschirm: Einfach auf das Ordnersymbol in der oberen Menüleiste klicken, das sich nun öffnende Verzeichnis ist bereits das Home Verzeichnis, das Skript selbst kann per USB Stick auf den Raspberry gebracht werden

    -> headless: Mit einem FTP Client wie FileZilla von einem anderen Gerät aus auf den Raspberry schalten und die Datei nach /home/pi kopieren


    4. Raspbian auf den neuesten Stand bringen

    Code
    sudo apt-get update && sudo apt-get upgrade --yes


    5. Nun kommt das Skript zum Einsatz

    Code
    sudo bash homebridger.sh


    Das Skript spuckt daraufhin jede Menge Ausgaben aus, die allesamt keine Interaktion mit euch benötigen, ihr könnt euch also einen Kaffee trinken.


    Und das war es schon, zwei Minuten später (Schritt 5 laut Stoppuhr;)) haben wir eine laufende Homebridge!



    Was genau hat das Skript nun für uns übernommen?


    Grundsätzlich hat das Skript ausnahmslos alle Aufgaben aus Schritt 2 der Forums-Anleitung für uns übernommen. Präzise gesagt:


    1. Installation von Avahi, Git & Node

    2. Installation des Node-Versionsmanager & Update auf neueste LTS-Version

    3. Einrichtung des Nutzers (Homebridge) und Zuweisung der Rechte (erweiterte Rechte, siehe gelber Kasten der Anleitung)

    4. Installation der Homebridge

    5. Anlegen einer config.json

    6. Erstellung eines Systemd-Startskripts

    7. Update von Systemd & Start der Homebridge mit Anzeige des Log


    Ich hoffe, ich kann damit dem Einen oder Anderen behilflich sein, bei wiederholten Installationen der Homebridge etwas Zeit zu sparen oder eine Erstinstallation der Homebridge bei auftauchenden Problemen zu vereinfachen. :)



    *getestet unter Raspbian Stretch & Buster, optimiert für den Raspi 3, für die Vorgängermodelle müsste das Skript geringfügig angepasst werden ("...armv71.." -> "...armv61..")

  • Geil. Ich hab's nicht machen wollen, weil mein Ansatz ein anderer ist, aber jetzt haben wir beides! Danke.


    Stefan

  • Wenn ich das nächste Mal z.B. aus eigener Blödheit wieder eine Homebridge aufsetzen muß, dann werde ich mir das ansehen. Vorher fehlt mir glücklicherweise der Anwendungsfall. :)