From 32df7e55fe9a00f480eb73275d6e452a085b73b7 Mon Sep 17 00:00:00 2001
From: Tim Niemeyer <tim@tn-x.org>
Date: Fri, 17 Feb 2017 08:07:05 +0100
Subject: [PATCH] bsp/default: remove/update etc/config/system

- This will fix the LEDs on LEDE
- We will lose the power heartbeat trigger on the LED
- We will lose the VPN signaling on the LEDs

While remove the default system config, the LEDE system now
configures wrong ntp service. We fix this by deleting these
entries in the fff-timeserver package.

If the file is already present on the devices, we need to upgrade it.
Therefore the 05-config-system-migration is now part of the fff-sysupgrade
package.

Signed-off-by: Tim Niemeyer <tim@tn-x.org>
Reviewed-by: Christian Dresel <fff@chrisi01.de>
Reviewed-by: Jan Kraus <mayosemmel@gmail.com>
---
 .../root_file_system/etc/config/system.tpl    | 29 -------------------
 .../uci-defaults/05-config-system-migration   | 21 ++++++++++++++
 .../files/etc/uci-defaults/51-fff-timeserver  |  4 +++
 .../files/lib/functions/fff/timeserver        |  1 +
 4 files changed, 26 insertions(+), 29 deletions(-)
 delete mode 100644 bsp/default/root_file_system/etc/config/system.tpl
 create mode 100644 src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/05-config-system-migration

diff --git a/bsp/default/root_file_system/etc/config/system.tpl b/bsp/default/root_file_system/etc/config/system.tpl
deleted file mode 100644
index 47e1a749..00000000
--- a/bsp/default/root_file_system/etc/config/system.tpl
+++ /dev/null
@@ -1,29 +0,0 @@
-config 'system'
-	option 'hostname' 'OpenWrt'
-	option 'timezone' 'CET-1CEST,M3.5.0,M10.5.0/3'
-
-config 'led' 'status_led_green'
-	option 'name' 'status'
-	option 'sysfs' 'tp-link:green:system'
-	option 'trigger' 'heartbeat'
-
-config 'led' 'status_led_blue'
-	option 'name' 'status'
-	option 'sysfs' 'tp-link:blue:system'
-	option 'trigger' 'heartbeat'
-
-config 'led' 'led_vpn_green'
-	option 'name' 'VPN'
-	option 'sysfs' 'tp-link:green:qss'
-	option 'trigger' 'netdev'
-	option 'dev' '${VPN_PROJECT}VPN'
-	option 'mode' 'link'
-
-config 'led' 'led_vpn_blue'
-	option 'name' 'VPN'
-	option 'sysfs' 'tp-link:blue:qss'
-	option 'trigger' 'netdev'
-	option 'dev' '${VPN_PROJECT}VPN'
-	option 'mode' 'link'
-
-# vim: noexpandtab
\ No newline at end of file
diff --git a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/05-config-system-migration b/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/05-config-system-migration
new file mode 100644
index 00000000..0e365876
--- /dev/null
+++ b/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/05-config-system-migration
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+UPGRADE_hostname=$(uci -q get "system.@system[0].hostname")
+UPGRADE_description=$(uci -q get "system.@system[0].description")
+UPGRADE_latitude=$(uci -q get "system.@system[0].latitude")
+UPGRADE_longitude=$(uci -q get "system.@system[0].longitude")
+UPGRADE_position_comment=$(uci -q get "system.@system[0].position_comment")
+UPGRADE_contact=$(uci -q get "system.@system[0].contact")
+
+/bin/rm -rf /etc/config/system
+
+/bin/config_generate
+
+test -n "${UPGRADE_hostname}" && uci -q set "system.@system[0].hostname=${UPGRADE_hostname}"
+test -n "${UPGRADE_description}" && uci -q set "system.@system[0].description=${UPGRADE_description}"
+test -n "${UPGRADE_latitude}" && uci -q set "system.@system[0].latitude=${UPGRADE_latitude}"
+test -n "${UPGRADE_longitude}" && uci -q set "system.@system[0].longitude=${UPGRADE_longitude}"
+test -n "${UPGRADE_position_comment}" && uci -q set "system.@system[0].position_comment=${UPGRADE_position_comment}"
+test -n "${UPGRADE_contact}" && uci -q set "system.@system[0].contact=${UPGRADE_contact}"
+
+uci -q commit system
diff --git a/src/packages/fff/fff-timeserver/files/etc/uci-defaults/51-fff-timeserver b/src/packages/fff/fff-timeserver/files/etc/uci-defaults/51-fff-timeserver
index d2893cb3..aa485ab5 100755
--- a/src/packages/fff/fff-timeserver/files/etc/uci-defaults/51-fff-timeserver
+++ b/src/packages/fff/fff-timeserver/files/etc/uci-defaults/51-fff-timeserver
@@ -4,3 +4,7 @@
 . /etc/community.cfg
 
 setTimeserver "${NTPD_IP}"
+
+uci -q set "system.@system[0].timezone=CET-1CEST,M3.5.0,M10.5.0/3"
+
+uci -q commit system
diff --git a/src/packages/fff/fff-timeserver/files/lib/functions/fff/timeserver b/src/packages/fff/fff-timeserver/files/lib/functions/fff/timeserver
index fb69e71a..d25b9be7 100644
--- a/src/packages/fff/fff-timeserver/files/lib/functions/fff/timeserver
+++ b/src/packages/fff/fff-timeserver/files/lib/functions/fff/timeserver
@@ -12,6 +12,7 @@ setTimeserver() {
 	local ntp=$1
 
 	uci batch <<-__EOF__
+		delete system.ntp
 		set system.ntp='timeserver'
 		add_list system.ntp.server='$ntp'
 		set system.ntp.enable_server='0'
-- 
GitLab