From 5a8c6778fe784c4a0a9f0d5ff84b95b4ed18d26e Mon Sep 17 00:00:00 2001 From: Chris Lamb Date: Fri, 8 Aug 2008 18:36:08 +0100 Subject: [PATCH] Print friendly error message on live-initramfs panic. --- scripts/live | 3 +++ scripts/live-functions | 43 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) diff --git a/scripts/live b/scripts/live index d3c86a2..fb61d01 100755 --- a/scripts/live +++ b/scripts/live @@ -1350,6 +1350,9 @@ mountroot () tail -f live.log >&7 & tailpid="${!}" + # Ensure 'panic' function is overridden + . /scripts/live-functions + Arguments set_usplash_timeout diff --git a/scripts/live-functions b/scripts/live-functions index c5055a0..d86a3f6 100644 --- a/scripts/live-functions +++ b/scripts/live-functions @@ -58,3 +58,46 @@ lang2locale() { echo "C" 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/live.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-initramfs' package or email the Debian\n" + printf " Live mailing list at , making\n" + printf " sure to note the exact version, name and distribution of the image you were\n" + printf " 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-initramfs will now restart your system. " + else + printf " live-initramfs will now start a shell. " + fi + printf "The error message was:\n\n " + + # Call original panic + . /scripts/functions + panic "$@" +} -- 2.1.4