X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Fboot%2F9990-initramfs-tools.sh;fp=scripts%2Fboot%2F9990-initramfs-tools.sh;h=37aa0c35f1bee4ae613cf87624f059490340b072;hb=2e70d7be610c9e45787c37352d36241de3c155d7;hp=0000000000000000000000000000000000000000;hpb=4640db7ffcef9dbc7e335d4c0323a7920a178b04;p=live-boot-grml.git diff --git a/scripts/boot/9990-initramfs-tools.sh b/scripts/boot/9990-initramfs-tools.sh new file mode 100755 index 0000000..37aa0c3 --- /dev/null +++ b/scripts/boot/9990-initramfs-tools.sh @@ -0,0 +1,67 @@ +#!/bin/sh + +#set -e + +log_wait_msg () +{ + # Print a message and wait for enter + if [ -x /bin/plymouth ] && plymouth --ping + then + plymouth message --text="$@" + plymouth watch-keystroke | read nunya + fi + + _log_msg "Waiting: ${@} ... \n" +} + +# Override maybe_break from scripts/functions +maybe_break() +{ + if [ "${break}" = "$1" ]; then + # Call original panic + . /scripts/functions + panic "Spawning shell within the initramfs" + fi +} + +# Override panic from scripts/functions +panic() { + + DEB_1="\033[1;31m .''\`. \033[0m" + DEB_2="\033[1;31m: :' : \033[0m" + DEB_3="\033[1;31m\`. \`'\` \033[0m" + DEB_4="\033[1;31m \`- \033[0m" + + LIVELOG="\033[1;37m/boot.log\033[0m" + DEBUG="\033[1;37mdebug\033[0m" + + # Reset redirections to avoid buffering + exec 1>&6 6>&- + exec 2>&7 7>&- + kill ${tailpid} + + printf "\n\n" + printf " ${DEB_1}\n" + printf " ${DEB_2} \033[1;37mBOOT FAILED!\033[0m\n" + printf " ${DEB_3}\n" + printf " ${DEB_4} This Debian Live image failed to boot.\n\n" + + printf " Please file a bug against the 'live-boot' package or email the Debian\n" + printf " Live mailing list at , making sure to note the\n" + printf " exact version, name and distribution of the image you were attempting to boot.\n\n" + + printf " The file ${LIVELOG} contains some debugging information but booting with the\n" + printf " ${DEBUG} command-line parameter will greatly increase its verbosity which is\n" + printf " extremely useful when diagnosing issues.\n\n" + + if [ -n "${panic}" ]; then + printf " live-boot will now restart your system. " + else + printf " live-boot will now start a shell. " + fi + printf "The error message was:\n\n " + + # Call original panic + . /scripts/functions + panic "$@" +}