jffs2reset_hook=
no_fo_hook=
-. /lib/functions/boot.sh
+. /lib/functions.sh
firstboot_skip_next=false
. $fb_source_file
done
+set_mtd_part
+set_rom_part
+set_jffs_part
+
# invoked as an executable
if [ "${0##*/}" = "firstboot" ]; then
if [ "$1" = "switch2jffs" ]; then
boot_run_hook switch2jffs
- elif [ -z "$jffs" ]; then
- reset_has_fo=true
- echo "firstboot has already been run"
- echo "jffs2 partition is mounted, only resetting files"
- boot_run_hook jffs2reset
else
- mtd erase "$partname"
- mount "$mtdpart" /jffs -t jffs2
- fopivot /jffs /rom 1
+ if [ -t 0 ] && [ "$1" != "-y" ]; then
+ local input
+
+ echo -n "firstboot will erase all settings and remove any installed packages. Are you sure? [N/y]"
+ read input
+ [ "$input" = "y" ] || [ "$input" = "Y" ] || return 0
+ fi
+
+ if [ -n "$jffs" ]; then
+ reset_has_fo=true
+ echo "firstboot has already been run"
+ echo "jffs2 partition is mounted, only resetting files"
+ boot_run_hook jffs2reset
+ else
+ mtd erase "$partname"
+ mount -o noatime "$mtdpart" /overlay -t jffs2
+ fopivot /overlay /rom 1
+ fi
fi
-else
- set_mtd_part
- set_rom_part
- set_jffs_part
fi