From: Mike Baker <mbm@openwrt.org>
Date: Wed, 21 Jul 2004 03:13:56 +0000 (+0000)
Subject: Hacks to run firstboot automatically
X-Git-Tag: reboot~33598
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=ef2d52108aa43efd63548c2b0edaae676c29ae49;p=openwrt%2Fopenwrt.git

Hacks to run firstboot automatically

SVN-Revision: 110
---

diff --git a/root/bin/firstboot b/root/bin/firstboot
index b484e1a818..637f68896e 100755
--- a/root/bin/firstboot
+++ b/root/bin/firstboot
@@ -3,18 +3,26 @@
 
 exec 2>/dev/null
 
-umount /jffs 
-if [ -z "$(mount | grep jffs2)" ]; then
+[ -f "/tmp/.firstboot" ] && {
+	echo "firstboot is already running"
+	return
+}
+touch /tmp/.firstboot
+
+jdev=$(mount | awk '/jffs2/ {print $3}')
+
+if [ -z "$jdev" ]; then
 	mtd erase OpenWrt
 	mount -t jffs2 /dev/mtdblock/4 /jffs
-	mount /dev/mtdblock/2 /rom -o ro
 	cd /jffs
 else
 	echo "firstboot has already been run"
 	echo "fixing symlinks instead"
-	cd /
+	cd $jdev
 fi
 
+mount /dev/mtdblock/2 /rom -o ro
+
 {
 	cd /rom
 	find . -type d
diff --git a/root/etc/init.d/S99done b/root/etc/init.d/S99done
index c5211813fb..3ba15e8bc4 100755
--- a/root/etc/init.d/S99done
+++ b/root/etc/init.d/S99done
@@ -1,3 +1,6 @@
 #!/bin/sh
+[ -z "$FAILSAFE" ] && {
+	{ mount | grep jffs2 1>-; } || firstboot
+}
 # turn off DMZ led
 echo "0x00" > /proc/sys/diag