#!/bin/sh
#
# Runs Wesnoth using a clean, throwaway config directory.
#
# The configuration directory is created on your temporary
# directory (i.e. /tmp) with a unique name every time, and
# deleted when finished.
#
# Usage:
#     wesnoth-defaults <command line>
#
# Examples:
#     wesnoth-defaults ~/src/wesnoth-1.12/wesnoth
#     wesnoth-defaults ~/src/wesnoth-1.12/wesnoth -s server.wesnoth.org
#     wesnoth-defaults ~/src/wesnoth-trunk/wesnoth-debug --campaign Heir_To_The_Throne
#

SELF=`basename $0`

do_error()
{
	echo "$SELF: $*" 1>&2
}

if [ -z "$1" ]; then
	do_error "You must specify a command line to run!"
	exit 1
fi

WESNOTH_BIN_PATH=$1
TEMP_CONFIG_DIR=`mktemp -qd`

if [ -z "$TEMP_CONFIG_DIR" ]; then
	do_error "Could not create temporary dir before launch!"
	exit 2
fi

do_cleanup()
{
	rm -rf "$TEMP_CONFIG_DIR" || do_error "Could not remove temporary config dir"
}

trap do_cleanup INT QUIT HUP TERM EXIT

shift

"$WESNOTH_BIN_PATH" --nocache --userdata-dir "$TEMP_CONFIG_DIR" --userconfig-dir "$TEMP_CONFIG_DIR" "$@"
