Go to file
Oliver Gerlich 92eec4df2d
Merge pull request #51 from FreifunkBremen/fix/modules-url
fix(modules): use https for git protocol
2022-05-22 16:22:58 +02:00
domains fix(sites): dns and ntp per site 2022-05-22 15:16:17 +02:00
gluon@250b623fb4 gluon: Update for CVE-2022-24884 2022-05-05 20:10:10 +02:00
i18n add description for domain selection 2020-01-18 13:10:19 +01:00
.gitignore build.sh: Allow an aborted build process to resume 2015-08-30 16:44:44 +02:00
.gitmodules Add gluon repository as submodule 2015-07-02 17:14:37 +02:00
README.md Added package python2.7 as dependency 2018-01-19 20:33:48 +01:00
build.sh build.sh: GLUON_TARGETS without if 2020-08-09 18:35:44 +02:00
modules fix(modules): use https for git protocol 2022-05-22 16:14:35 +02:00
site.conf fix(sites): dns and ntp per site 2022-05-22 15:16:17 +02:00
site.mk add ssid-changer (#45) 2020-08-07 20:33:13 +02:00

README.md

Anleitung

Um die Bremer Firmware zu bauen sind folgende Vorbereitungen notwendig:

# Build-Dependencies installieren (Debian/Ubuntu)
sudo apt-get install coreutils schedtool build-essential subversion git libncurses5-dev zlib1g-dev unzip gawk libssl-dev python2.7
# Dieses und das Gluon-Repository clonen
git clone --recursive https://github.com/FreifunkBremen/gluon-site-ffhb.git

Um eine bestimmte Version der Bremer Firmware zu bauen sind folgende Befehle nötig:

# In das Verzeichnis wechseln
cd gluon-site-ffhb/
# Die gewünschte Version auschecken ($tag ist z.B. v2016.2.3+bremen2)
git checkout $tag
# Gluon auf die passende Version bringen
git submodule update
# Build-Prozess anstoßen
./build.sh

Lief der Build-Prozess erfolgreich durch, liegen in gluon/output/images/ die fertigen Images inklusive eines Manifests für den Autoupdater, das schon mit dem eigenen ECDSA-Key signiert wurde falls dieser unter ~/.ecdsakey liegt. In gluon/output/packages/ liegen außerdem per opkg auf dem Knoten nachinstallierbare Kernel-Module.

Will man ohne build.sh manuell make im Verzeichnis gluon aufrufen, wie in der offiziellen Gluon-Doku, muss man jedem Aufruf von make den Parameter GLUON_SITEDIR=$PWD/../ nachstellen (oder wie in build.sh einmal per export GLUON_SITEDIR=$PWD/../ setzen), damit Gluon das site-Repository findet. Alternativ kann man einen Symlink anlegen, indem man während man im site-Repository ist den Befehl ln -s $PWD gluon/site ausführt.

In jedem Fall wird der Gluon-Release-Name automatisch aus dem ausgecheckten Tag generiert - auch falls kein Tag, sondern z.B. der master-Branch ausgecheckt wurde! Falls das nicht gewünscht ist lässt sich durch folgenden Aufruf vor dem entsprechenden Build-Befehl (./build.sh oder make) ein eigener Release-Name festlegen:

export GLUON_RELEASE="2017.1+bremen1+dein-nickname"

Analog lassen sich alle anderen GLUON_*-Variablen überschreiben, außerdem die folgenden build.sh-spezifischen Variablen:

  • GLUON_TARGETS: Welche Architekturen werden von build.sh gebaut
  • KEYFILE: Der Ort des Schlüssels, mit dem das testing/nightly-Manifest automatisch unterschrieben werden soll