From 10d6c1930d71b04b7e96bf03c93d7dee23c021a0 Mon Sep 17 00:00:00 2001
From: Matthias Schiffer <mschiffer@universe-factory.net>
Date: Tue, 21 Jan 2014 00:29:55 +0100
Subject: [PATCH] gluon-autoupdater: allow configuring the branch name
 independently of the UCI config section name

---
 package/gluon-autoupdater/files/etc/config/autoupdater | 3 +++
 package/gluon-autoupdater/files/usr/sbin/autoupdater   | 5 +++--
 package/gluon-autoupdater/invariant.pl                 | 2 +-
 3 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/package/gluon-autoupdater/files/etc/config/autoupdater b/package/gluon-autoupdater/files/etc/config/autoupdater
index 573f5666f..b07cf7fc7 100644
--- a/package/gluon-autoupdater/files/etc/config/autoupdater
+++ b/package/gluon-autoupdater/files/etc/config/autoupdater
@@ -3,6 +3,9 @@
 #	option branch "stable"
 
 #config branch stable
+	# The branch name given in the manifest
+#	option name 'stable'
+
 #	list mirror 'http://[fdef:ffc0:3dd7::8]/~freifunk/firmware/autoupdate'
 
 	# The updater will run once per hour and perform an update with a certain
diff --git a/package/gluon-autoupdater/files/usr/sbin/autoupdater b/package/gluon-autoupdater/files/usr/sbin/autoupdater
index 773d67c7d..5e351b402 100755
--- a/package/gluon-autoupdater/files/usr/sbin/autoupdater
+++ b/package/gluon-autoupdater/files/usr/sbin/autoupdater
@@ -19,6 +19,7 @@ if test "a$1" != "a-f"; then
   fi
 fi
 
+BRANCH_NAME=$(uci get autoupdater.${BRANCH}.name)
 MIRRORS=$(uci get autoupdater.${BRANCH}.mirror)
 PUBKEYS=$(uci get autoupdater.${BRANCH}.pubkey)
 GOOD_SIGNATURES=$(uci get autoupdater.${BRANCH}.good_signatures)
@@ -83,10 +84,10 @@ verify_manifest() {
 analyse_manifest() {
   local manifest_upper=$1
 
-  grep -q "^BRANCH=${BRANCH}$" $manifest_upper
+  grep -q "^BRANCH=${BRANCH_NAME}$" $manifest_upper
 
   if test $? -ne 0; then
-    echo "Wrong branch. We are on ${BRANCH}" >&2
+    echo "Wrong branch. We are on ${BRANCH_NAME}" >&2
     return 1
   fi
 
diff --git a/package/gluon-autoupdater/invariant.pl b/package/gluon-autoupdater/invariant.pl
index 493eb299f..c6bb3b720 100644
--- a/package/gluon-autoupdater/invariant.pl
+++ b/package/gluon-autoupdater/invariant.pl
@@ -28,7 +28,7 @@ delete autoupdater.$name
 set autoupdater.$name=branch
 END
 
-  for (qw(probability good_signatures)) {
+  for (qw(name probability good_signatures)) {
     print "set autoupdater.$name.$_=$branch->{$_}\n";
   }
 
-- 
GitLab