#!/bin/sh

KOLAB_VERSION="2.2-beta1"
PREFIX="/kolab"
TAG="kolab"

usage() {
	echo "Usage:"
	echo "  $0 directory/openpkg-*-*.src.sh"
	echo "  $0 directory/openpkg-*-*.ix86-debian4.0.sh"
	echo "  $0 directory"
	exit 1
}

[ $# -ne 1 ] && usage

if echo "$1" | grep '\.src\.sh$' >/dev/null; then
	# install from source
	SRC="$1"
	PLATTAG=`sh "$1" -t | tar xf - -O shtool | sh -s platform --type=binary`-$TAG
	BIN=`basename "$1" .src.sh`.$PLATTAG.sh
	DIR=`dirname "$SRC"`
elif echo "$1" | grep 'openpkg-.*\.sh$' >/dev/null; then
	# install from binary
	SRC=""
	BIN="$1"
	DIR=`dirname "$BIN"`
elif [ -d "$PREFIX/etc/openpkg" ]; then
	# upgrade
	SRC=""
	BIN=""
	DIR="$1"
fi

DIR=`cd $DIR; pwd`

if [ -n "$SRC" ]; then
	sh "$SRC" \
	--prefix="$PREFIX" \
	--tag="$TAG" --user="kolab" --group="kolab" \
	--muid="19414" --ruid="19415" --nuid="19416" \
	--mgid="19414" --rgid="19415" --ngid="19416" \
	|| exit $?
fi

if [ -n "$BIN" ]; then
	sh "$BIN" || exit $?
fi

if [ -n "$DIR" ]; then
	[ -z "$PLATTAG" ] && PLATTAG=`"$PREFIX/lib/openpkg/shtool" platform --type=binary`-$TAG
	if [ -n "$KOLAB_VERSION" ]; then
		DEFINE="
		-Dkolabd::kolab_version=$KOLAB_VERSION
		-Dkolab-webadmin::kolab_version=$KOLAB_VERSION
		"
	fi
	"$PREFIX/bin/openpkg" build -kK -r "$DIR" -p "$PLATTAG" $DEFINE \
	openpkg-tools kolabd kolab-webadmin kolab-resource-handlers kolab-horde-fbview | sh \
	|| exit $?
fi

exit 0
