Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
firmware:start [02.01.2017 17:01] – [Tools] jason | firmware:start [14.03.2023 10:57] (aktuell) – [Download] mars |
---|
====== Frankfurter Firmware ====== | ====== Frankfurter Firmware ====== |
In Frankfurt nutzen wir die Freifunk [[http://gluon.readthedocs.io/en/latest|Gluon-Firmware]], welche um einige Pakete erweitert wurde. | <WRAP warning center round todo 60%> Diese Seiteninformationen sind nicht mehr aktuell.\\ Hilf mit und bringe diese Seite auf einen aktuellen Stand.</WRAP> |
| Für die Frankfurter Freifunkfirmware wird das [[http://gluon.readthedocs.io/en/latest|Gluon-Framework]] verwendet. Die Firmware wurde um einige eigenentwickelte [[firmware:besonderheiten|Pakete]] erweitert. |
| \\ |
| \\ |
| Eine ausführliche Anleitung wie man die Frankfurter Freifunkfirmware auf einen eigenen Router bekommt, gibt es hier: [[firmware:flashen|Firmware Flashen]] |
| |
Eine ausführliche Anleitung wie man die Frankfurter Freifunkfirmware auf einen eigenen Router bekommt, gibt es hier: [[firmware:flashen|Firmware Flashen]] | In Frankfurt wird gerade auch an der Integration des babel-Mesh-Protokolls in die gluon-Firmware gearbeitet. Informationen dazu gibt es auf der [[https://wiki.ffm.freifunk.net/firmware:babel|Babel-Firmware-Entwicklungsseite]] |
===== Download ===== | ===== Download ===== |
Die aktuellste Frankfurter Firmware ist [[http://dl.ffm.freifunk.net/firmware/stable|auf unserem Download-Server]] erhältlich. | Die aktuellste Frankfurter Firmware ist [[https://ffm.freifunk.net/firmware|auf unserem Download-Server]] erhältlich. |
| |
| Die Änderungshistorie der Frankfurter Firmwareversionen gibt es hier: |
| * [[https://chaos.expert/FFFFM/site|Stable-Firmware]] (Stabiles Gluon Release) |
| * [[https://github.com/freifunk-ffm/site-ffffm/tree/test#frankfurter-test-version|Test-Firmware]] (Vorab-Feldtest stabiler Gluon Releases) |
| * [[https://github.com/freifunk-ffm/site-ffffm/tree/dev#frankfurter-development-version|Dev-Firmware]] (Entwicklungs-Bereich) |
| * [[https://github.com/freifunk-ffm/site-ffffm/tree/christf_next|Babel-Firmware]] (Babel-Entwicklungs-Bereich) |
===== Selberbauen ===== | ===== Selberbauen ===== |
Generelle Informationen zum Bauen einer Gluon-Firmware gibt es hier: http://gluon.readthedocs.io/en/latest/user/getting_started.html | Generelle Informationen zum Bauen einer Gluon-Firmware gibt es hier: http://gluon.readthedocs.io/en/latest/user/getting_started.html |
| |
Eine Kurzanleitung um eine Frankfurter Firmware zu bauen, gibt es hier: https://github.com/freifunk-ffm/site-ffffm#eine-eigene-firmware-bauen | Eine Kurzanleitung um eine Frankfurter Gluon-Firmware zu bauen, gibt es hier: https://github.com/freifunk-ffm/site-ffffm#eine-eigene-frankfurter-firmware-bauen |
Hierfür werden frei Frankfurter Git-Repos benötigt: | |
| Hierfür werden folgende Frankfurter GitHub-Repos verwendet: |
* https://github.com/freifunk-ffm/gluon | * https://github.com/freifunk-ffm/gluon |
* https://github.com/freifunk-ffm/site-ffffm | * https://github.com/freifunk-ffm/site-ffffm |
* https://github.com/freifunk-ffm/packages | * https://github.com/freifunk-ffm/packages |
Bei den Frankfurter Repos //'gluon'// und //'site-ffffm'// werden jeweils die Branches //'stable'//, //'test'// und //'dev'// verwendet. | |
Bei dem Frankfurter Repo //'packages'// muss immer der Branch //'master'// verwendet werden. | Bei den Frankfurter Repos //'gluon'// und //'site-ffffm'// werden jeweils die Branches //'stable'//, //'test'// oder //'dev'// verwendet. |
===== Tools ===== | Bei dem Frankfurter Repo //'packages'// muss immer der Branch //'master'// verwendet werden. |
=== FirmwareReleaseBuilder (FFM spezifisch) === | |
In Frankfurt benutzen wir für die Erstellung von Firmware-Releases ein eigens dafür entwickeltes Skript: Den [[https://github.com/freifunk-ffm/Firmware-Release-Builder|FirmwareReleaseBuilder]]. | Das Frankfurter gluon-Repo ist ein (meist aktueller) Release-Mirror des [[https://github.com/freifunk-gluon/gluon|Gluon-Frameworks]] ([[https://raw.githubusercontent.com/freifunk-gluon/gluon/master/LICENSE|Lizenzbedingungen]]). |
Der FirmwareReleaseBuilder ist weniger für den Entwicklungsprozess der Freifunk-Firmware vorgesehen. Es stellt aber für das automatisierte Bauen von Community-Firmware-Releases ein sehr einfaches Hilfsmittel dar. | ===== Tools rund um das Firmwarebauen ===== |
| === Firmware Release Builder === |
| In Frankfurt benutzen wir für die Erstellung von Firmware-Releases ein eigens dafür entwickeltes Skript: |
| Den [[https://github.com/freifunk-ffm/Firmware-Release-Builder|FirmwareReleaseBuilder]]. |
| |
| Der FirmwareReleaseBuilder ist weniger für den Entwicklungsprozess der Freifunk-Firmware geeignet. Das Skript stellt jedoch für das automatisierte Bauen von Community-Firmware-Releases ein sehr einfaches Hilfsmittel dar. |
=== Firmwarefetch == | === Firmwarefetch == |
Wurde mit dem frankfurter FirmwareReleaseBuilder ein FW-Release gebaut, so lässt sich dieses Release (inkl. opkg-Module) sehr einfach mit dem Frankfurter Skript [[https://github.com/freifunk-ffm/scripts/blob/master/firmwarefetch|firmwarefetch]] auf einen Download-Server übertragen. | Wurde mit dem frankfurter FirmwareReleaseBuilder ein FW-Release gebaut, so lässt sich dieses Release (inkl. opkg-Module) sehr einfach mit dem Frankfurter Skript [[https://github.com/freifunk-ffm/scripts/blob/master/firmwarefetch|firmwarefetch]] auf einen Download-Server übertragen. Der Aufruf des Skriptes lässt sich sehr einfach automatisieren. |
Auf dem entsprechenden Download-Server werden ältere FW-Releases archiviert. | Durch das Skript werden bereits vorhandene FW-Releases auf dem Download-Server automatisch archiviert. |
=== ECDSA-Utils === | === ECDSA-Utils === |
Falls die Firmware für '[[http://gluon.readthedocs.io/en/latest/features/autoupdater.html|Autoupdate]]' konfiguriert ist, so muss die Manifestdatei der Firmware mit Tools aus //'ecdsautils'// signiert verwendet. | Soll eine Firmware automatisch mit dem '[[http://gluon.readthedocs.io/en/latest/features/autoupdater.html|Autoupdater]]' ausgerollt werden, so muss die Firmware-Manifestdatei noch mit Tools aus //'ecdsautils'// signiert werden. |
Wie //'ecdsautils'// unter Debian und OS X installiert werden können, ist hier zu finden: https://wiki.freifunk.net/ECDSA_Util#Kompilieren_und_Installieren_von_ECDSA-Utils | Wie //'ecdsautils'// unter Debian und OS X bzw. macOS installiert und benutzt werden können, ist hier nachzulesen: https://wiki.freifunk.net/ECDSA_Util#Kompilieren_und_Installieren_von_ECDSA-Utils |
===== Weiterentwicklung ===== | ===== Weiterentwicklung ===== |
* [[firmware:Babel|firmware:Babel]] | * [[firmware:Babel|firmware:Babel]] |
* [[firmware:size_matters|Firmwaregröße]] | * [[firmware:size_matters|Firmwaregröße]] |
* [[firmware:Besonderheiten|Besonderheiten der Frankfurter Firmware]] | * [[firmware:Besonderheiten|Besonderheiten der Frankfurter Firmware]] |
| |
| ===== Sonstiges ====== |
| Aktuelle Arbeiten der lokalen Firmware-Entwicklung können u.a. im IRC-Channel #ffffm-dev auf [[https://hackint.org/connect|irc.hackint.org]] verfolgt werden. |
| |
| |