Neues Paket in Firmware aufnehmen

==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