From db1314ac55df59e1fbecdae280cf2b4c1784dd5a Mon Sep 17 00:00:00 2001 From: Dubiousjim Date: Fri, 5 Jul 2013 00:21:16 -0400 Subject: various: move conf-loading and i/o to functions --- functions.sh.in | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 functions.sh.in (limited to 'functions.sh.in') diff --git a/functions.sh.in b/functions.sh.in new file mode 100644 index 0000000..d71ef38 --- /dev/null +++ b/functions.sh.in @@ -0,0 +1,76 @@ +# /usr/share/abuild/functions.sh + +sysconfdir=@sysconfdir@ +prog=${0##*/} + + +abuild_conf=${ABUILD_CONF:-"$sysconfdir/abuild.conf"} +abuild_home=${ABUILD_USERDIR:-"$HOME/.abuild"} +abuild_userconf=${ABUILD_USERCONF:-"$abuild_home/abuild.conf"} + +# read config +if [ -f "$abuild_conf" ]; then + . "$abuild_conf" || abuild_conf= +fi + +# read user config if exists +if [ -f "$abuild_userconf" ]; then + . "$abuild_userconf" || abuild_userconf= +fi + + +# output functions +case $prog in +abuild) + if [ -n "$USE_COLORS" ]; then + NORMAL="\033[1;0m" + STRONG="\033[1;1m" + RED="\033[1;31m" + GREEN="\033[1;32m" + YELLOW="\033[1;33m" + BLUE="\033[1;34m" + fi + + msg() { + local prompt="$GREEN>>>${NORMAL}" + local fake="${FAKEROOTKEY:+${BLUE}*${NORMAL}}" + local name="${STRONG}${subpkgname:-$pkgname}${NORMAL}" + [ -z "$quiet" ] && printf "${prompt} ${name}${fake}: $@\n" >&2 + } + + warning() { + local prompt="${YELLOW}>>> WARNING:${NORMAL}" + local fake="${FAKEROOTKEY:+${BLUE}*${NORMAL}}" + local name="${STRONG}${subpkgname:-$pkgname}${NORMAL}" + printf "${prompt} ${name}${fake}: $@\n" >&2 + } + + error() { + local prompt="${RED}>>> ERROR:${NORMAL}" + local fake="${FAKEROOTKEY:+${BLUE}*${NORMAL}}" + local name="${STRONG}${subpkgname:-$pkgname}${NORMAL}" + printf "${prompt} ${name}${fake}: $@\n" >&2 + } + ;; +*) + msg() { + # Here we write to stdout, but abuild's fancier messages write to stderr + [ -z "$quiet" ] && echo "$@" + } + + error() { + echo "$@" >&2 + } + ;; +esac + +# caller may override +cleanup() { + return 0 +} + +die() { + error "$@" + cleanup + exit 1 +} -- cgit v1.2.3