#!/bin/bash

###################################################################################
# UCK - Ubuntu Customization Kit                                                  #
# Copyright (C) 2006-2010 UCK Team                                                #
#                                                                                 #
# UCK is free software: you can redistribute it and/or modify                     #
# it under the terms of the GNU General Public License as published by            #
# the Free Software Foundation, either version 3 of the License, or               #
# (at your option) any later version.                                             #
#                                                                                 #
# UCK is distributed in the hope that it will be useful,                          #
# but WITHOUT ANY WARRANTY; without even the implied warranty of                  #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                   #
# GNU General Public License for more details.                                    #
#                                                                                 #
# You should have received a copy of the GNU General Public License               #
# along with UCK.  If not, see <http://www.gnu.org/licenses/>.                    #
###################################################################################

SELF=`basename $0`
REMASTER_HOME=~/tmp

usage() {
	echo "Usage: $SELF [remaster-dir] [what-to-execute]"
	exit 1
}

failure() {
	echo "$SELF: $@" >&2
	exit 1
}

# Check arguments
if [ -n "$1" ]; then
	REMASTER_HOME="$1"; shift
fi
if [ -z "$1" ]; then
	set -- /bin/bash
fi

# Load common functionality, library requires
# REMASTER_HOME and REMASTER_DIR to be set!
REMASTER_DIR="$REMASTER_HOME/remaster-root"
. libraries/remaster-live-cd.sh 2>/dev/null ||
. /usr/lib/uck/remaster-live-cd.sh 2>/dev/null ||
failure "libraries not found"

# Prepare rootfs, run command, clean rootfs
prepare_rootfs_for_chroot "$REMASTER_HOME"
chroot "$REMASTER_DIR" "$@"; status=$?
clean_rootfs_after_chroot "$REMASTER_HOME"

# That's all folks!
exit $status
