move firstboot to preinit for now (until a better solution is implemented), required...
[openwrt-10.03/.git] / package / base-files / default / etc / preinit
index d64fdaa5130e5fc94645a8d7ce2a7f424b9da73c..ac9039ca7175f5d7681b3704a118877827e57764 100755 (executable)
@@ -7,7 +7,7 @@ insmod diag
 sleep 1
 if [ -f /proc/sys/reset ] && [ $(cat /proc/sys/reset) = 1 -o "$(nvram get failsafe)" = 1 ]; then
        export FAILSAFE=true
-       [ "$(nvram get boot_wait)" != "on" ] && {
+       [ -x /usr/sbin/nvram -a "$(nvram get boot_wait)" != "on" ] && {
                nvram set boot_wait=on
                nvram commit
        }
@@ -16,4 +16,9 @@ fi
 
 mount_root ${FAILSAFE:+failsafe}
 
+# automagically run firstboot
+[ -z "$FAILSAFE" -a -z "$(nvram get no_root_swap)" ] && {
+       { mount|grep "on / type jffs2" 1>&-; } || firstboot
+}
+
 exec /sbin/init