flm01/openwrt/package/luci/modules/freifunk/root/etc/rc.local.d/01-config-migration

52 lines
1.2 KiB
Plaintext

# Fixup various configurations to remove quirks
# from former versions.
_log() {
logger -t "Config Migration" "$1"
}
_uci() {
uci ${2:+-c $2} get "$1" 2>/dev/null
}
# Splash redirector had a wrong virtual url match
# which resulted in "No such handler"
[ "$(_uci lucid.splashredir.virtual)" == "/" ] && {
_log "Fix splash redirector configuration"
uci set lucid.splashredir.virtual=''
uci commit lucid
/etc/init.d/lucid restart
}
# Newer OLSR versions have the MinTCVtime hack active,
# ensure proper timings or olsrd won't start
FIX=0
for i in 0 1 2 3 4; do
[ -z "$(_uci olsrd.@Interface[$i].TcInterval)" ] && \
[ -z "$(_uci olsrd.@Interface[$i].TcValidityTime)" ] || {
uci delete olsrd.@Interface[$i].TcInterval
uci delete olsrd.@Interface[$i].TcValidityTime
FIX=1
}
done
[ "$FIX" == 1 ] && {
_log "Fix olsrd configuration for MinTCVTime hack"
uci commit olsrd
/etc/init.d/olsrd restart
}
# Ensure that the community definitions are in the
# new format
[ -z "$(_uci freifunk.leipzig.mesh_network)" ] && \
[ -n "$(_uci freifunk.leipzig.mesh_network /rom/etc/config)" ] && {
_log "Converting freifunk configuration to new format"
cp /rom/etc/config/freifunk /etc/config/freifunk
}