From 7619fe0848dc5f31d5c4c4cadd2ec067bd5c55d1 Mon Sep 17 00:00:00 2001 From: nbd Date: Sun, 17 Jul 2005 22:52:59 +0000 Subject: move target/default/target_skeleton into package/base-files, put all the default files in ipkg packages, cleanup some junk in toolchain/, toolchain/ no longer changes build_mipsel/root git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@1494 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/base-files/default/bin/firstboot | 63 ++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100755 package/base-files/default/bin/firstboot (limited to 'package/base-files/default/bin/firstboot') diff --git a/package/base-files/default/bin/firstboot b/package/base-files/default/bin/firstboot new file mode 100755 index 000000000..cef258cf3 --- /dev/null +++ b/package/base-files/default/bin/firstboot @@ -0,0 +1,63 @@ +#!/bin/sh +# $Id$ + +mount | grep squashfs >&- || { + echo "You do not have a squashfs partition; aborting" + echo "(firstboot cannot be run on jffs2 based firmwares)" + return +} + +[ -f "/tmp/.firstboot" ] && { + echo "firstboot is already running" + return +} +touch /tmp/.firstboot + +jdev=$(mount | awk '/jffs2/ {print $3}') + +if [ -z "$jdev" ]; then + echo -n "Creating jffs2 partition... " + mtd erase OpenWrt >&- + mount -t jffs2 /dev/mtdblock/4 /jffs + echo "done" + cd /jffs +else + echo "firstboot has already been run" + echo "jffs2 partition is mounted, only resetting files" + cd $jdev +fi + +exec 2>/dev/null + +mount /dev/mtdblock/2 /rom -o ro + +echo -n "creating directories... " +{ + cd /rom + find . -type d + cd - +} | xargs mkdir +echo "done" + +echo -n "setting up symlinks... " +for file in $(cd /rom; find * -type f; find * -type l;) +do { + [ "${file%/*}" = "usr/lib/ipkg/info" ] && { + cp -f /rom/$file $file + } || { + ln -sf /rom/$file $file + } +} done +echo "done" + +touch /tmp/resolv.conf +ln -s /tmp/resolv.conf /etc/resolv.conf + +umount /rom +mount none /jffs/proc -t proc +pivot_root /jffs /jffs/rom +mount none /dev -t devfs +mount none /tmp -t ramfs +umount /rom/proc +umount /rom/tmp +umount /rom/dev -- cgit v1.2.3