# shellcheck disable=SC2001,SC2181
# error_handler {{{
-[ -n "$REPORT_TRAP_ERR" ] || REPORT_TRAP_ERR='no'
-[ -n "$FAIL_TRAP_ERR" ] || FAIL_TRAP_ERR='no'
-
error_handler() {
last_exit_code="$?"
last_bash_command="$BASH_COMMAND"
- if [ "$REPORT_TRAP_ERR" = "yes" ]; then
- echo "Unexpected non-zero exit code $last_exit_code in ${BASH_SOURCE[*]} at line ${BASH_LINENO[*]} detected!
+ echo "Unexpected non-zero exit code $last_exit_code in ${BASH_SOURCE[*]} at line ${BASH_LINENO[*]} detected!
last bash command: $last_bash_command"
- fi
- if [ ! "$FAIL_TRAP_ERR" = "yes" ]; then
- return
- fi
## Check if "bailout" function is available.
## This is not the case in chroot-script.
if command -v bailout >/dev/null 2>&1; then
bailout 1
else
- echo 'FAIL_TRAP_ERR is set to "yes", exit 1.'
exit 1
fi
}
-if [ "$REPORT_TRAP_ERR" = "yes" ] || [ "$FAIL_TRAP_ERR" = "yes" ]; then
- set -e
- set -E
- set -o pipefail
- trap "error_handler" ERR
- export -f "error_handler"
-fi
+set -e
+set -E
+set -o pipefail
+trap "error_handler" ERR
+export -f "error_handler"
# }}}
# variables {{{
einfo "Not unmounting $MNTPOINT as you requested me to install into a directory of your own choice."
else
einfo "Unmounting $MNTPOINT"
- umount "$MNTPOINT"
- eend $?
+ umount "$MNTPOINT" || eend $?
fi
if [ -n "$STAGES" ] ; then
# remove directory only if we used the default with process id inside the name
if echo "$MNTPOINT" | grep -q '/mnt/debootstrap\.' ; then
einfo "Removing directory ${MNTPOINT}"
- rmdir "$MNTPOINT"
- eend $?
+ rmdir "$MNTPOINT" || eend $?
fi
fi
fi
if [ -n "${ORIG_TARGET}" ] ; then
einfo "Removing loopback mount of file ${ORIG_TARGET}."
- kpartx -d "${ORIG_TARGET}"
+ kpartx -d "${ORIG_TARGET}" || eend $?
# Workaround for a bug in kpartx which doesn't clean up properly,
# see Debian Bug #891077 and Github-PR grml/grml-debootstrap#112
if dmsetup ls | grep -q "^${LOOP_PART} "; then
- kpartx -d "/dev/${LOOP_DISK}" >/dev/null
+ kpartx -d "/dev/${LOOP_DISK}" >/dev/null || eend $?
fi
- eend $?
fi
}
checkconfiguration()
{
-if efi_support ; then
- if [ -z "$_opt_efi" ] ; then
- ewarn "EFI support detected but no --efi option given, please consider enabling it."
- fi
-else
- if [ -n "$_opt_efi" ] ; then
- eerror "EFI option used but no EFI support detected."
- bailout 1
+if [ -z "$VIRTUAL" ] ; then
+ if efi_support ; then
+ if [ -z "$_opt_efi" ] ; then
+ ewarn "EFI support detected but no --efi option given, please consider enabling it."
+ fi
+ else
+ if [ -n "$_opt_efi" ] ; then
+ eerror "EFI option used but no EFI support detected."
+ bailout 1
+ fi
fi
fi