Neues Paket in Firmware aufnehmen: Unterschied zwischen den Versionen
Rola (Diskussion | Beiträge) |
Rola (Diskussion | Beiträge) |
||
Zeile 1: | Zeile 1: | ||
==Am Beispiel des Tunneldigger für l2tp== | ==Am Beispiel des Tunneldigger für l2tp== | ||
Aktuelle Version vom 2. März 2016, 18:16 Uhr
Am Beispiel des Tunneldigger für l2tp
Also der aktuelle Entwicklungsstand liegt aktuell hier:
https://github.com/FreifunkFranken/firmware/commits/master
Da kannst du auch sehen welche Entwicklungen zuletzt aufgenommen wurden.
Das letzte beta Relase findest du hier:
https://github.com/FreifunkFranken/firmware/commits/20160213-beta
Ich würde jetzt so vorgehen:
- gucken was das is:
https://github.com/wlanslovenija/tunneldigger
- Oha.. Da gibts Doku:
http://tunneldigger.readthedocs.org/en/latest/
- Hm, da könnte unter "Client installation" stehen wie man das
installiert: http://tunneldigger.readthedocs.org/en/latest/client.html#openwrt-package
- *große Augen* .. Prima. Es gibt ein OpenWRT Package!
- Kurz vor Freude in die Luft springen
- buildscript anpassen
Ich füge dort den OpenWRT Feed von WlanSlovanija hinzu, weil laut der Doku oben da drin das Tunneldigger OpenWRT Package liegt:
WLANSLOVENIJA=(wlanslovenija$ https://github.com/wlanslovenija/firmware-packages-opkg$ fec592e0540ef883bc8b27b77e7ff45d93ed3f24)$
Dann sage ich, dass wir von diesem Feed nur dieses eine Package benötigen:
WLANSLOVENIJA_PKGS="tunneldigger"$
Zuletzt aktiviere ich den Feed:
FEEDS=(OPENWRT ROUTING BATMAN_ADV WLANSLOVENIJA FFF)$
- Danach muss ich natürlich meine komplette Buildumgebung
neuaufbauen weil sich die Quellen ja ändern. Zum Glück kann das das buildscript für machen:
./buildscript prepare
Nun möchte ich wissen, ob das in unserem OpenWRT drin ist:
./buildscript config openwrt
- Ui, viele Sachen.. Ich geb einfach ein Slash ('/') ein und kann damit
nach "tunneldigger" suchen. In der Anzeige wird mir sogar gezeigt wo ich das finde. In dem Fall hier: Location: -> Network Also .. Exit, danach ins Network Menü. Dann mit dem Curser auf Tunneldigger und zweimal die Leertaste drücken, damit da ein '*' steht. Sternchen bedeutet: Wird fest eincompiled. Das Mmmm bedeutet: Wird als nachinstallierbares OPKG erzeugt.
- Danach paar mal Exit und Speichern
- das buildscript hatte am Anfang die OpenWRT config zurecht gebastelt.
Nun möchte es wissen, ob die neue Config auch verwendet werden soll. -> Ja, natürlich! Also 'y'..
- Gucken was passiert ist..
git status
- Ui da tauchen nun zwei Sachen auf:
a) geändert: bsp/ar71xx/.config b) Unbeobachtete Dateien: src/packages/wlanslovenija/
b) nervt nur rum, also wollen wir das ignorieren. Dazu tragen wir den Pfad in die .gitignore Datei ein:
echo 'src/packages/wlanslovenija' >> .gitignore
a) ist spannender. Wollen wir sehen:
git diff bsp/ar71xx/.config
Wir sehen, dass Tunneldigger angegangen ist und noch dessen Abhängigkeiten.
- Coool.. Dann kann ich jetzt bauen?
Joar, für einen ersten Schuss sollte es reichen.
Was danach noch zu tun ist:
- Tunneldigger experimentell auf dem Knoten einrichten/konfigurieren
- Ein src/packages/fff/fff-tunneldigger Package schreiben, was diese
Konfiguration erledigen kann.
- fff-tunneldigger sollte von tunneldigger abhängig sein
- Wenn tunneldigger dann per default aktiviert sein soll, muss das Paket
fff von fff-tunneldigger abhängig gemacht werden.
Ich will einfach nur den tunneldigger auf dem Router haben!
In dem Fall kannst du einfach die Patches, die unmittelbar nach dieser Mail auf der dev-Mailingliste landen verwenden.
[RFC PATCH 1/3] buildscript: add tunneldigger from wlanslovenija [RFC PATCH 2/3] fff-tunneldigger: new placeholder for tunneldigger [RFC PATCH 3/3] fff: activate fff-tunneldigger
Dazu die Patch E-Mails einfach komplett als mbox speichern und mit git am <path/to/mail.mbox> anwenden. (bei Thunderbird scheint das eml und nicht mbox zu heißen)
Tim
Hier entsteht eine Anleitung, wie der Tunneldigger und Broker installiert und konfiguriert wird.
Die Patches :
Signed-off-by: Tim Niemeyer <tim@tn-x.org> --- .gitignore | 1 + buildscript | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 243d3c8..504abec 100644 --- a/.gitignore +++ b/.gitignore @@ -8,5 +8,6 @@ src/packages/fastd src/packages/openwrt src/packages/batman_adv src/packages/routing +src/packages/wlanslovenija .project ./*.patch diff --git a/buildscript b/buildscript index ec9ae64..b0d3d1b 100755 --- a/buildscript +++ b/buildscript @@ -39,10 +39,15 @@ ROUTING=(routing e870c3373eea80df852d42fac3f40aaffd7a0f58) ROUTING_PKGS="alfred" +WLANSLOVENIJA=(wlanslovenija + https://github.com/wlanslovenija/firmware-packages-opkg + fec592e0540ef883bc8b27b77e7ff45d93ed3f24) +WLANSLOVENIJA_PKGS="tunneldigger" + FFF=(fff) FFF_PKGS="-a" -FEEDS=(OPENWRT ROUTING BATMAN_ADV FFF) +FEEDS=(OPENWRT ROUTING BATMAN_ADV WLANSLOVENIJA FFF) checkout_git(){ local DIRECTORY=$1 -- 2.1.4 Signed-off-by: Tim Niemeyer <tim@tn-x.org> --- src/packages/fff/fff-tunneldigger/Makefile | 40 ++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/packages/fff/fff-tunneldigger/Makefile diff --git a/src/packages/fff/fff-tunneldigger/Makefile b/src/packages/fff/fff-tunneldigger/Makefile new file mode 100644 index 0000000..0526e7b --- /dev/null +++ b/src/packages/fff/fff-tunneldigger/Makefile @@ -0,0 +1,40 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=fff-tunneldigger +PKG_VERSION:=1 +PKG_RELEASE:=1 + +PKG_BUILD_DIR:=$(BUILD_DIR)/fff-tunneldigger + +include $(INCLUDE_DIR)/package.mk + +define Package/fff-tunneldigger + SECTION:=base + CATEGORY:=Freifunk + TITLE:= Freifunk-Franken tunneldigger + URL:=http://www.freifunk-franken.de + DEPENDS:=+tunneldigger +endef + +define Package/fff-tunneldigger/description + This is tunneldigger for the Freifunk Franken Firmware + Currently this package is a placeholder +endef + +define Build/Prepare + echo "all: " > $(PKG_BUILD_DIR)/Makefile +endef + +define Build/Configure + # nothing +endef + +define Build/Compile + # nothing +endef + +define Package/fff-tunneldigger/install + # nothing +endef + +$(eval $(call BuildPackage,fff-tunneldigger)) -- 2.1.4 Signed-off-by: Tim Niemeyer <tim@tn-x.org> --- src/packages/fff/fff/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/packages/fff/fff/Makefile b/src/packages/fff/fff/Makefile index f480031..2ca416a 100644 --- a/src/packages/fff/fff/Makefile +++ b/src/packages/fff/fff/Makefile @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fff PKG_VERSION:=0.0.1 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PKG_BUILD_DIR:=$(BUILD_DIR)/fff @@ -14,7 +14,7 @@ define Package/fff-base DEFAULT:=y TITLE:= Freifunk-Franken Base URL:=http://www.freifunk-franken.de - DEPENDS:=+micrond +fff-nodewatcher +fff-web +fff-uradvd + DEPENDS:=+micrond +fff-nodewatcher +fff-web +fff-uradvd +fff-tunneldigger endef define Package/fff-base/description -- 2.1.4