From fa402fa078cf2db27f6f9925ff609e2aa6285a06 Mon Sep 17 00:00:00 2001
From: Daniel Frank <git@danielfrank.net>
Date: Fri, 6 Apr 2018 21:33:30 +0200
Subject: [PATCH 1/4] update build.sh shebang

(cherry picked from commit 7381c864acdfbf252cef7b1eb99c6c657e75c6af)
---
 build.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/build.sh b/build.sh
index ad86111..d7ff90b 100755
--- a/build.sh
+++ b/build.sh
@@ -1,4 +1,5 @@
-#!/bin/bash -e
+#!/usr/bin/env bash
+set -e
 
 function announce () {
 	echo '############################' $* >&2

From 8e68e1da00ef4adf50771bba70e748ebc5596e68 Mon Sep 17 00:00:00 2001
From: Daniel Frank <git@danielfrank.net>
Date: Fri, 6 Apr 2018 21:46:23 +0200
Subject: [PATCH 2/4] rework build.sh option parsing

(cherry picked from commit d7a554c430acada1275f74556121610b3bdcc6e7)
---
 build.sh | 71 +++++++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 52 insertions(+), 19 deletions(-)

diff --git a/build.sh b/build.sh
index d7ff90b..2f8f21a 100755
--- a/build.sh
+++ b/build.sh
@@ -4,34 +4,67 @@ set -e
 function announce () {
 	echo '############################' $* >&2
 }
-
-proc=$(nproc)
-gluon_out="${HOME}/firmware"
-
-while getopts g:j:l:o:s:u:bmv opt; do
-	case "$opt" in
-		g) gluon_path="$OPTARG" ;;
-		l) sites="$OPTARG" ;;
-		o) gluon_out="$OPTARG" ;;
-		s) signature="$OPTARG" ;;
-		u) uploadscript="$OPTARG" ;;
-		b) export BROKEN=1 ;;
-		m) dont_make_sites=1 ;;
-		j) proc="$OPTARG" ;;
-		v) verbose=V=s ;;
-	esac
-done
-if [ -z "${gluon_path}" ]; then
+function usage () {
 	echo "Usage: $0 -g GLUON_PATH" >&2
 	echo "       -g GLUON_PATH   Path to a checkout of the gluon repository." >&2
 	echo "       -l SITES        Comma separated list of sites to build" >&2
 	echo "       -o OUT_PATH     Path to the firmware output directory. Default: ${gluon_out}" >&2
 	echo "       -s SIGNATURE    Sign firmware with signature" >&2
-	echo "       -u UPLOADSCRIPT Run UPLOADSCRIPT after building. Argument: $gluon_out/<GLUON_RELEASE>" >&2
+	echo "       -u UPLOADSCRIPT Run UPLOADSCRIPT after building. Will be run with one argument: $gluon_out/<GLUON_RELEASE>" >&2
 	echo "       -b              BROKEN=1" >&2
 	echo "       -m              Do not regenerate the sites" >&2
 	echo "       -v              verbose" >&2
 	echo "       -j JOBS         Run build with -jJOBS. Default: ${proc}" >&2
+}
+
+proc=$(nproc)
+gluon_out="${HOME}/firmware"
+
+while [ $# -gt 0 ]; do
+	case "$1" in
+		-g)
+			gluon_path="$2"
+			shift
+			;;
+		-l)
+			sites="$2"
+			shift
+			;;
+		-o)
+			gluon_out="$2"
+			shift
+			;;
+		-s)
+			signature="$2"
+			shift
+			;;
+		-u)
+			uploadscript="$2"
+			shift
+			;;
+		-b)
+			export BROKEN=1
+			;;
+		-m)
+			dont_make_sites=1
+			;;
+		-j)
+			proc="$2"
+			shift
+			;;
+		-v)
+			verbose=V=s
+			;;
+		*)
+			usage
+			exit 1
+			;;
+	esac
+	shift
+done
+
+if [ -z "$gluon_path" ]; then
+	usage
 	exit 1
 fi
 

From 514d1ae7bfeee7e3280221088f634da1259271fb Mon Sep 17 00:00:00 2001
From: Daniel Frank <git@danielfrank.net>
Date: Mon, 9 Jul 2018 19:13:55 +0200
Subject: [PATCH 3/4] Update readme for v0.9.2

(cherry picked from commit 16d601c9c902b69506f742d4733229c609157678)
---
 README.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/README.md b/README.md
index 4af811c..ee5360f 100644
--- a/README.md
+++ b/README.md
@@ -19,6 +19,7 @@ Please see [the official Gluon repository](https://github.com/freifunk-gluon/glu
 
 #### Gluon versions used for specific Hamburg Freifunk Firmware builds
 
+- 0.9.2: site-ffhh: v0.9.2, gluon: v2017.1.8
 - 0.9.1: site-ffhh: v0.9.1, gluon: v2017.1.5
 - 0.9.0: site-ffhh: 60f30382209ffc050baa82be9bad3622a1d88d5b, gluon: v2017.1.x (9295abcea7b016b0fe4b05c534ea0731b48ef593) (never rolled out due to 0.9.1)
 - 0.8.6: v2016.2.7 Fix gw01-new key, add 3.ntp.services.ffhh to NTP servers, add Firmware signing keys for Alexander and Olli, remove old domain

From dd49444ef8c5c06a8ed861c3cbb64ca31c5f4bd8 Mon Sep 17 00:00:00 2001
From: Daniel Frank <git@danielfrank.net>
Date: Mon, 9 Jul 2018 19:30:56 +0200
Subject: [PATCH 4/4] Update version to v0.9.2

---
 config/defaults.erb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/config/defaults.erb b/config/defaults.erb
index 59c18c8..85e28f3 100644
--- a/config/defaults.erb
+++ b/config/defaults.erb
@@ -1,7 +1,7 @@
 <%
 gluon_branch = "stable"
 #gluon_branch = "experimental"
-gluon_release = "0.9.1"
+gluon_release = "0.9.2"
 
 # Add the +exp and current date if this is an experimental release
 gluon_release += "~exp" + Time.new.strftime("%Y%m%d") if gluon_branch == "experimental"