/usr/share/initramfs-tools/scripts/live-functions is in live-boot-initramfs-tools 3.0~a24-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | . /scripts/functions
. /live.vars
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"
}
really_export ()
{
STRING="${1}"
VALUE="$(eval echo -n \${$STRING})"
if [ -f /live.vars ] && grep -sq "export ${STRING}" /live.vars
then
sed -i -e 's/\('${STRING}'=\).*$/\1'${VALUE}'/' /live.vars
else
echo "export ${STRING}=\"${VALUE}\"" >> /live.vars
fi
eval export "${STRING}"="${VALUE}"
}
lang2locale() {
langpart="${1%%_*}"
if [ "$1" != "C" ]; then
# Match the language code with 3rd field in languagelist
line=$(grep -v "^#" /usr/share/live-boot/languagelist | cut -f1,3,6 -d\; | grep -v ';C$' | grep "^$langpart;")
if [ -n "$line" ]; then
if [ "$(echo "$line" | grep -c '')" -gt 1 ]; then
# More than one match; try matching the
# country as well.
countrypart="${1#*_}"
if [ "$countrypart" = "$1" ]; then
countryline="$(echo "$line" | head -n1)"
echo "${countryline##*;}"
return
fi
countrypart="${countrypart%%[@.]*}"
countryline="$(echo "$line" | grep ";$countrypart;" | head -n1 || true)"
if [ "$countryline" ]; then
echo "${countryline##*;}"
return
fi
fi
echo "${line##*;}"
fi
else
echo "C"
fi
}
# 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/live-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 <debian-live@lists.debian.org>, 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 "$@"
}
|