technik:software:firmware_selbst_kompilieren_und_signieren

Dies ist eine alte Version des Dokuments!


Zielgruppe

Interessierte, die die Freifunk Images selbst kompilieren wollen.

Worum geht es hier?

Ich habe aus verschiedenen Freifunk Wikis mir die Information zusammengetragen, um die Firmware selbst bauen und signieren zu können und den Autoupdate Mechanismus von Gluon zu verwenden. Diese Seite hat das Ziel, vorhandene Infos zu verlinken und Neues zu ergänzen.

Voraussetzungen

  • Linux System (getestet mit Ubuntu 14.04 LTS)

Privaten und öffentlichen Schlüssel zum Signieren erzeugen

Auf den Seiten von Freifunk Hamburg gibt es eine gute Erklärung, wie man sich selbst eine Signatur anlegt: Wiki Freifunk Hamburg Firmware Kapitel Schlüssel erzeugen.

Eventuelle Probleme

Falls eine Shared Library libuecc.so.0 nicht gefunden werden kann, könnte es sein, dass die Umgebungsvariable LD_LIBRARY_PATH noch nicht vorhanden ist. Diese kann so gesetzt werden:

LD_LIBRARY_PATH=/usr/local/lib
export LD_LIBRARY_PATH

Freifunk Stuttgart spezifische Konfiguration herunterladen

öffentlichen Schlüssel der site.conf hinzufügen

In der Datei site.conf befindet sich der Abschnitt autoupdater. Hier muss der zuvor erzeugte Public Key jeweils in die Bereich stable, beta und nightly eingetragen werden. Hier mit Beispiel des stable Bereichs:

autoupdater = {
       ...
       branches = {
             stable = {
                ...
                pubkeys = {
                         'pasteYourPublicKeyHereIntoTheSingleQuotes', -- YourNameForIdentification
                },
                ...

Gluon Quellen herunterladen

Die Gluon Dokumentation fasst die Schritte zum Herunterladen von Github zusammen.

Freifunk Stuttgart Konfiguration in Gluon einbauen

  • Im Gluon Verzeichnis das Unterverzeichnis site anlegen
  • Die zwei Dateien site.conf und site.mk in das gerade angelegte Verzeichnis site kopieren

Firmware Images erzeugen

Die Gluon Dokumentation fasst die Schritte zum Kompilieren gut zusammen.

Gegebenenfalls fehlen noch ein paar Pakete, die nachinstalliert werden müssen ( Freifunk Flensburg listet diese auf):

sudo apt-get install <Paketname>

Firmware Image manuell flashen

Prinzipiell ist so vorzugehen, wie auf der Seite router_flashen beschrieben. Kurzzusammenfassung:

  • Reset-Knopf am Router drücken, bis der Router in den Konfig-Modus neustartet
  • Verbinden über IP 192.168.1.1
  • Auf der Konfig-Oberfläche Expert Mode auswählen.
  • Firmware aktualisieren auswählen und Image laden und Upload anklicken.
  • Nach einem Neustart sollte nach kurzer Zeit die Nodelist auch bereits die neue Firmware anzeigen.

Firmware Image per Autoupdate ausrollen

Damit die Firmware an alle Stuttgart-Knoten verteilt wird, muss die Firmware noch signiert werden.

Die Beschreibung stammt vom Freifunk Flensburg:

Erstellen einer Manifest-Datei für den jeweiligen Zweig 'stable', 'beta', 'nightly' und danach das Signieren der Manifest-Datei

make manifest GLUON_BRANCH=stable
./contrib/sign.sh path/To/secret/key  images/sysupgrade/stable.manifest
  • technik/software/firmware_selbst_kompilieren_und_signieren.1431430788.txt.gz
  • Zuletzt geändert: vor 5 Jahren
  • (Externe Bearbeitung)