# This reads the settings we need to have to configure everything
# Argument $1: community
+. /lib/functions.sh
community="$1"
# reads variables from uci files, parameter $1 is the section
uci -q show $1 | cut -d "." -f 2-100 |grep "\." | sed -e 's/^\([A-Za-z0-9_]*\)\./\1_/g' -e 's/=\(.*\)$/="\1"/g'
}
+handle_widgets() {
+ widgets="$1 $widgets"
+}
+config_load freifunk
+config_foreach handle_widgets widget
+config_load profile_$community
+config_foreach handle_widgets widget
+echo "widgets=$widgets"
+
# read default values from /etc/config/freifunk
-for v in system wifi_device wifi_iface interface alias dhcp olsr_interface olsr_interfacedefaults zone_freifunk include; do
+for v in system wifi_device wifi_iface interface alias dhcp olsr_interface olsr_interfacedefaults zone_freifunk include $widgets; do
get_var freifunk.$v
done
# now read all values from the selected community profile, will override some values from the defaults before
-for v in system wifi_device wifi_iface interface alias dhcp olsr_interface olsr_interfacedefaults profile zone_freifunk include luci_splash ipv6; do
+for v in system wifi_device wifi_iface interface alias dhcp olsr_interface olsr_interfacedefaults profile zone_freifunk include luci_splash ipv6 $widgets; do
get_var profile_$community.$v
done
--- /dev/null
+#!/bin/sh
+. /lib/functions.sh
+ . $dir/functions.sh
+
+if [ -n "$widgets" ]; then
+ [ ! -f "/etc/config/freifunk-widgets" ] && touch /etc/config/freifunk-widgets
+ for w in $widgets; do
+ uci set freifunk-widgets.${w}=widget
+ set_defaults "${w}_" freifunk-widgets.${w}
+ uci delete profile_$community.${w}
+ done
+ uci commit profile_$community
+ uci_commitverbose "Added widget config." freifunk-widgets
+fi
$dir/helpers/setup_firewall.sh
$dir/helpers/setup_ssh.sh
$dir/helpers/setup_uhttpd.sh
+$dir/helpers/setup_widgets.sh
if [ "$wan_proto" == "static" ] && [ -n "$wan_ip4addr" ] && [ -n "$wan_netmask" ]; then
$dir/helpers/setup_wan_static.sh
echo "+ The wizard has finished and the router will reboot now."
-reboot
+#reboot