### BEGIN INIT INFO
# Provides: live-initramfs
# Required-Start: $syslog
-# Required-Stop: $syslog
+# Required-Stop:
# Should-Start: $local_fs
-# Should-Stop: $local_fs
-# Default-Start: 1 2 3 4 5
+# Should-Stop: halt reboot
+# X-Stop-After: umountroot
+# Default-Start:
# Default-Stop: 0 6
# Short-Description: live-initramfs init script
# Description: Resyncs snapshots, evantually caches files in order to
return 0
fi
+ # Don't prompt to eject the SD card on Babbage board, where we reuse it
+ # as a quasi-boot-floppy. Technically this uses a bit of ubiquity
+ # (archdetect), but since this is mostly only relevant for
+ # installations, who cares ...
+ if type archdetect >/dev/null 2>&1
+ then
+ subarch="$(archdetect)"
+
+ case $subarch in
+ arm*/imx51)
+ return 0
+ ;;
+ esac
+ fi
+
prompt=1
if grep -qs noprompt /proc/cmdline
then
prompt=
fi
- for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty)
+ for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty) /bin/plymouth /sbin/usplash_write
do
cache_path "${path}"
done
eject -p -m /live/image >/dev/null 2>&1
fi
- [ "$prompt" ] || return 0
fi
- stty sane < /dev/console
+ [ "$prompt" ] || return 0
- echo -n -e "\n\n${MESSAGE} and press ENTER to continue:" > /dev/console
-
- if [ -x /sbin/usplash_write ]
+ if [ -x /bin/plymouth ] && plymouth --ping
then
- /sbin/usplash_write "TIMEOUT 86400"
- /sbin/usplash_write "TEXT-URGENT ${MESSAGE}"
- /sbin/usplash_write "TEXT-URGENT and press ENTER to continue"
- fi
+ plymouth message --text="${MESSAGE} and press ENTER to continue:"
+ plymouth watch-keystroke > /dev/null
+ else
+ stty sane < /dev/console
+
+ printf "\n\n${MESSAGE} and press ENTER to continue:" > /dev/console
- read x < /dev/console
+ if [ -x /sbin/usplash_write ]
+ then
+ /sbin/usplash_write "TIMEOUT 86400"
+ /sbin/usplash_write "TEXT-URGENT ${MESSAGE}"
+ /sbin/usplash_write "TEXT-URGENT and press ENTER to continue"
+ fi
+
+ read x < /dev/console
+ fi
fi
}
case "${1}" in
- start|restart|reload|force-reload|status)
+ restart|reload|force-reload|status)
[ "${VERBOSE}" != no ] && log_end_msg 0
;;
- stop)
+ start|stop)
log_begin_msg "${NAME} is resyncing snapshots and caching reboot files..."
do_stop
[ "${VERBOSE}" != no ] && log_end_msg 1
;;
esac
+
+ mount -o remount,ro /live/cow
;;
*)