X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=grml-debootstrap;h=5964d55fc6103337cd62ac4f1942f3acffb61ffe;hb=c87dc4ae;hp=d456bce45e85fede1b8d4bb5390e98d5daf3667c;hpb=e47ca960d87ceca5765d77d58ae94f441fa292b7;p=grml-debootstrap.git diff --git a/grml-debootstrap b/grml-debootstrap index d456bce..5964d55 100755 --- a/grml-debootstrap +++ b/grml-debootstrap @@ -28,11 +28,6 @@ export LC_ALL=C INTERACTIVE='' # }}} -# source core functions {{{ -. /etc/grml/lsb-functions -. /etc/grml/script-functions -# }}} - # help text {{{ usage() { echo "$PN - wrapper around debootstrap for installing Debian @@ -103,6 +98,60 @@ if [ "$1" = '-h' ] || [ "$1" = '-help' ] || [ "$1" = "--help" ] ; then fi # }}} +# {{{ +GOOD='' +WARN='' +BAD='' +NORMAL='' +HILITE='' +BRACKET='' + +einfo() { + einfon "$1\n" + return 0 +} + +einfon() { + [ "${RC_ENDCOL}" != "yes" ] && [ "${LAST_E_CMD}" = "ebegin" ] && echo + printf " ${GOOD}*${NORMAL} $*" + LAST_E_CMD=einfon + return 0 +} + +eerror() { + [ "${RC_ENDCOL}" != "yes" ] && [ "${LAST_E_CMD}" = "ebegin" ] && echo + printf " ${BAD}*${NORMAL} $*\n" + LAST_E_CMD=eerror + return 0 +} + +eend() { + local retval="${1:-0}" + shift + if [ $retval -gt 0 ]; then + printf " ${BAD}-> Failed (rc=${retval})${NORMAL}\n" + fi +} + +check4root(){ + if [ "$(id -u 2>/dev/null)" != 0 ] ; then + echo 1>&2 "Error: please run this script with uid 0 (root)." ; return 1 + fi +} + +check4progs(){ + local RC='' + for arg in $* ; do + which $arg >/dev/null 2>&1 || RC="$arg" + done + if [ -n "$RC" ] ; then + echo "$RC not installed" + return 1 + fi +} + +# }}} + # make sure we have what we need {{{ check4progs debootstrap dialog || exit 1 # }}} @@ -742,9 +791,7 @@ stage() { return 0 elif grep -q done "${STAGES}/${1}" 2>/dev/null ; then ewarn "Notice: stage $1 has been executed already, skipping execution therefore." ; eend 0 - eindent - ewarn "To reexecute it clean up the according directory inside $STAGES" ; eend 0 - eoutdent + ewarn " To reexecute it clean up the according directory inside $STAGES" ; eend 0 return 1 fi }