Skip to content

freifunk-pinneberg/firmware

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Freifunk Pinneberg Firmware

Fertige Downloads

Wenn du unsere Firmware einfach nur nutzen möchtest, empfiehlt sich der Download der fertigen Binärdateien. Folge dazu einfach den Anweisungen auf unserer Downloadseite

Selbst bauen

Benötigte Software

Für den Bau werden folgende Pakete benötigt, welche mit der bevorzugten Paketverwaltung installiert werden können. Unter Debian ist das beispielsweise: apt-get install build-essential git subversion python gawk unzip libssl-dev zlib1g-dev libncurses5-dev

Firmware auschecken

git clone https://github.com/freifunk-gluon/gluon.git
git clone https://github.com/freifunk-pinneberg/firmware.git gluon/site
cd gluon/site
git checkout v1.2.0
cd ..
git checkout v2022.1.4

Firmware bauen

make update
make -j10 GLUON_TARGET=ar71xx-generic GLUON_BRANCH=stable

Über den Parameter j passt man die anzahl der Threads an. Es empfiehlt sich hier so viele anzugeben wie die CPU Kerne hat. Über GLUON_TARGET definiert man die Zielplattform, möglich Angaben sind derzeit:

  • ar71xx-generic - Fast alle TP-Link & ubnt Router
  • ar71xx-tiny - Geräte mit sehr wenig RAM (z.b. TP-LINK WR841N(D))
  • ar71xx-nand
  • brcm2708-bcm2708 - Raspberry 1
  • brcm2708-bcm2709 - Raspberry 2
  • mpc85xx-generic - z.b. TLWDR4900
  • mpc85xx-p1020
  • ramips-mt7621
  • sunxi-cortexa7
  • x86-generic - Klassischer PC (32bit)
  • x86-geode - Klassischer PC (AMD Geode CPU)
  • x86-64 - Klassischer PC (64bit)

Die Angabe von GLUON_BRANCH bewirkt, daß der Autoupdater für die angegeben Branch aktiviert wird.

Das Bauen kann man mit einem kleinen bash Script auch in einem rutsch erledigen.
build.sh

#!/bin/bash

#BRANCH=experimental
#BRANCH=beta
BRANCH=stable

GLUON_BASE_VERSION=1.0.0+1


if [ "$BRANCH" == "stable" ]; then
    # Setze DEFAULT_GLUON_RELEASE ohne Datum für den stabilen Branch
    DEFAULT_GLUON_RELEASE="$GLUON_BASE_VERSION"
elif [ "$BRANCH" == "beta" ]; then
    # Beta-Version
    DEFAULT_GLUON_RELEASE="${GLUON_BASE_VERSION}-beta$(date '+%Y%m%d')"
else
    # Setze DEFAULT_GLUON_RELEASE mit Datum für andere Branches
    DEFAULT_GLUON_RELEASE="${GLUON_BASE_VERSION}-exp$(date '+%Y%m%d')"
fi

# Anzahl der PCU kerne bestimmen
CPU_CORES=$(nproc)
if [ "$CPU_CORES" -gt 1 ]; then
    JOBS=$((CPU_CORES - 1))
else
    JOBS=1
fi

make update

TARGETS=($(make list-targets))
TOTAL=${#TARGETS[@]}

for i in "${!TARGETS[@]}"; do
  TARGET=${TARGETS[$i]}
  IDX=$((i + 1))
  
  echo "[$IDX/$TOTAL] Building target: $TARGET"
  
  if [ "$i" -gt 0 ]; then
    # list already built targets
    echo "  Bereits gebaut: ${TARGETS[@]:0:$i}"
  else
    echo "  Bereits gebaut: (none)"
  fi
  
  make -j$JOBS GLUON_TARGET=$TARGET GLUON_BRANCH=$BRANCH GLUON_RELEASE=$DEFAULT_GLUON_RELEASE
  make clean GLUON_TARGET=$TARGET
done 

make manifest GLUON_BRANCH=$BRANCH

./contrib/sign.sh ../secret output/images/sysupgrade/$BRANCH.manifest 

About

Freifunk Pinneberg Firmware (Gluon site)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •