#!/bin/sh

## live-config(7) - System Configuration Scripts
## Copyright (C) 2006-2012 Daniel Baumann <daniel@debian.org>
##
## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
## This is free software, and you are welcome to redistribute it
## under certain conditions; see COPYING for details.


set -e

_DIRECTORY="${1:-/lib/live/config}"

if [ ! -e "${_DIRECTORY}" ]
then
	echo "E: cannot access ${_DIRECTORY}: No such directory."
	exit 1
fi

if [ ! -x "$(which lsb_release 2>/dev/null)" ]
then
	echo "E: lsb_release: command not found."
	echo "I: lsb_release can be optained from:"
	echo "I:   http://www.linux-foundation.org/en/LSB"
	echo "I: On Debian based systems, lsb_release can be installed with:"
	echo "I:   sudo apt-get install lsb-release"
	exit 1
fi

_DISTRIBUTION="$(lsb_release -is | tr [A-Z] [a-z])"
_RELEASE="$(lsb_release -cs | tr [A-Z] [a-z])"

case "${_DISTRIBUTION}" in
	debian)
		NOSCRIPTS="apport ureadahead"

		LIVE_HOSTNAME="debian"
		LIVE_USERNAME="user"
		LIVE_USER_FULLNAME="Debian Live user"
		LIVE_USER_DEFAULT_GROUPS="audio cdrom dip floppy video plugdev netdev powerdev scanner bluetooth debian-tor"

		case "${_RELEASE}" in
			squeeze)
				LIVE_USER_DEFAULT_GROUPS="audio cdrom dip floppy video plugdev netdev powerdev scanner bluetooth"
				;;

			*)
				NOSCRIPTS="${NOSCRIPTS} gdm"
				;;
		esac

		PROC_OPTIONS="onodev,noexec,nosuid"
		;;

	progress)
		NOSCRIPTS="upstart apport ureadahead"

		LIVE_HOSTNAME="progress"
		LIVE_USERNAME="user"
		LIVE_USER_FULLNAME="Progress Linux user"
		LIVE_USER_DEFAULT_GROUPS="audio cdrom dip floppy video plugdev netdev powerdev scanner bluetooth debian-tor sudo"

		case "${_RELEASE}" in
			artax|artax-backports)
				LIVE_USER_DEFAULT_GROUPS="audio cdrom dip floppy video plugdev netdev powerdev scanner bluetooth sudo"
				;;

			*)
				NOSCRIPTS="${NOSCRIPTS} gdm"
				;;
		esac

		PROC_OPTIONS="onodev,noexec,nosuid,hidepid=2"
		;;

	ubuntu)
		NOSCRIPTS="gdm3"

		LIVE_HOSTNAME="ubuntu"
		LIVE_USERNAME="user"
		LIVE_USER_FULLNAME="Ubuntu Live user"
		LIVE_USER_DEFAULT_GROUPS="adm cdrom dip lpadmin plugdev sambashare"

		PROC_OPTIONS="onodev,noexec,nosuid"
		;;
esac

echo "Removing unused scripts..."

for NOSCRIPT in ${NOSCRIPTS}
do
	if ls "${_DIRECTORY}"/*-"${NOSCRIPT}" > /dev/null 2>&1
	then
		rm -f "${_DIRECTORY}"/*-"${NOSCRIPT}"
	fi
done

echo  "Setting distribution specific defaults..."

sed -i  -e "s|^LIVE_HOSTNAME=.*$|LIVE_HOSTNAME=\"${LIVE_HOSTNAME}\"|" \
	-e "s|^LIVE_USERNAME=.*$|LIVE_USERNAME=\"${LIVE_USERNAME}\"|" \
	-e "s|^LIVE_USER_FULLNAME=.*$|LIVE_USER_FULLNAME=\"${LIVE_USER_FULLNAME}\"|" \
	-e "s|^PROC_OPTIONS=.*$|PROC_OPTIONS=\"${PROC_OPTIONS}\"|" \
"$(dirname ${_DIRECTORY})/config.sh"
