diff options
Diffstat (limited to 'includes')
| -rw-r--r-- | includes/autoinstall-includes.sh | 47 | ||||
| -rw-r--r-- | includes/cd-includes.sh | 27 | ||||
| -rw-r--r-- | includes/generic-includes.sh | 40 | ||||
| -rw-r--r-- | includes/patch-includes.sh | 23 | 
4 files changed, 118 insertions, 19 deletions
| diff --git a/includes/autoinstall-includes.sh b/includes/autoinstall-includes.sh index a3bfa52..7ee3024 100644 --- a/includes/autoinstall-includes.sh +++ b/includes/autoinstall-includes.sh @@ -1,3 +1,18 @@ +# Copyright 2009 Nick White +# +# This program 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 2 +# of the License, or (at your option) any later version. +# +# This program 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. +# +# See <http://www.gnu.org/licenses/> for a copy of the GNU General +# Public License. +  ### variables ###  [ -z "$FULLINSTALL" ] && export FULLINSTALL=1 @@ -7,7 +22,8 @@  # a simplified version of query() from sorcery  # $1 = question  # $2 = default boolean answer [yYnN] -function query { +function query +{  	while true; do  		RESPONSE=""  		echo -e -n "$1 [$2] " @@ -22,6 +38,35 @@ function query {  	done  } +function choosegame +{ +	while true; do +		choice=0 +		echo "Choose the game to install from the list:" +		echo "1  | Baldur's Gate 1 (5CD International version)" +		echo "2  | Baldurs Gate & Tales of the Sword Coast (3CD US version)" +		echo "3  | Tales of the Sword Coast (1CD UK version)" +		echo "4  | Planescape: Torment (4CD version)" +		echo "5  | Planescape: Torment (2CD version)" + +		read -n 1 choice +		echo + +		case $choice in +			1 ) export CDMD5="138528155dfeb695bd63f90eacee7dc0" +				return 0 ;; +			2 ) export CDMD5="1a6828b97a27967e8c4acc25e1ef48d2" +				return 0 ;; +			3 ) export CDMD5="e27d259ddc0171ff945dbba136e60309" +				return 0 ;; +			4 ) export CDMD5="5e8c2075163aca124de4a467fb33063d" +				return 0 ;; +			5 ) export CDMD5="640b61443cc86c434f1b6826e63c0e33" +				return 0 ;; +		esac +	done +} +  function recommendcfg  {  	# usage: recommendcfg [numofcds] diff --git a/includes/cd-includes.sh b/includes/cd-includes.sh index 877aa57..e7c2526 100644 --- a/includes/cd-includes.sh +++ b/includes/cd-includes.sh @@ -1,3 +1,18 @@ +# Copyright 2009 Nick White +# +# This program 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 2 +# of the License, or (at your option) any later version. +# +# This program 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. +# +# See <http://www.gnu.org/licenses/> for a copy of the GNU General +# Public License. +  ### default variables ###  [ -z "$CDMOUNT" ] && export CDMOUNT="/media/cdrom" @@ -62,15 +77,3 @@ function getcd  	return 0  } - -function copycdextras -{ -	# usage: copycdextras cdnum -	# essentially a case insensitive cp -R cd#/* -	CDNUMBER=$1 - -	for filename in $(find $CDMOUNT/[cC][dD]$CDNUMBER/ -type f || die); do -		relativepath=$(echo $filename|gawk -F "$CDMOUNT/[cC][dD]$CDNUMBER" '{print   $2}'|tr A-Z a-z) -		cp $filename "$TARGETDIR"/$relativepath || die -	done -} diff --git a/includes/generic-includes.sh b/includes/generic-includes.sh index 07de078..51cffcb 100644 --- a/includes/generic-includes.sh +++ b/includes/generic-includes.sh @@ -1,3 +1,18 @@ +# Copyright 2009 Nick White +# +# This program 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 2 +# of the License, or (at your option) any later version. +# +# This program 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. +# +# See <http://www.gnu.org/licenses/> for a copy of the GNU General +# Public License. +  ### default variables ###  [ -z "$TMPDIR" ] && export TMPDIR="/tmp/iepatch" @@ -10,17 +25,30 @@  function die  { -	#echo "Install can not continue, cleaning up partial install" -	#rm -rf "$TARGETDIR" +	echo "Install can not continue" + +	if [ "$alwaysdiesafely" != "1" ]; then +		echo "Cleaning up partial install" +		rm -rf "$TARGETDIR" +	fi  	echo ""  	echo "The install failed; sorry." -	echo "Please make sure you have the correct CDs for $FULLGAMENAME" +	echo "Please make sure you have the correct CDs for the game"  	echo "and enough free disk space, and try again."  	exit 1  } +function diesoftly +{ +	# a non-destructive die + +	echo " ! The install failed; sorry." 1>&2 + +	exit 1 +} +  function diequietly  {  	exit 1 @@ -59,7 +87,7 @@ function checkforbin  function setperms  { -	# usage setperms targetdir +	# usage: setperms targetdir  	if ! [ -d "$1" ]; then  		return 1 @@ -94,6 +122,8 @@ function usage  function parseargs  { +	# usage: parseargs args... +  	while getopts ":i:p:c:l:" options; do  		case $options in  			i ) export TARGETDIR="$OPTARG";; @@ -110,7 +140,7 @@ function parseargs  function copylower  { -	#usage: copylower source destination +	# usage: copylower source destination  	if [ -d "$1" ]; then  		for filename in $(find "$1" -type f); do  			lowerpath="$(echo $filename|gawk -F "$1" '{print $2}'|tr A-Z a-z)" diff --git a/includes/patch-includes.sh b/includes/patch-includes.sh index 0f76409..7081e9d 100644 --- a/includes/patch-includes.sh +++ b/includes/patch-includes.sh @@ -1,3 +1,18 @@ +# Copyright 2009 Nick White +# +# This program 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 2 +# of the License, or (at your option) any later version. +# +# This program 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. +# +# See <http://www.gnu.org/licenses/> for a copy of the GNU General +# Public License. +  ### default variables ###  [ -z "$PATCHDIR" ] && export PATCHDIR="$PWD" @@ -6,8 +21,14 @@  function getpatch  { +	# usage: getpatch url [filename] +  	url=$1 -	filename=$(basename $url) +	if [ $# -gt 1 ]; then +		filename="$2" +	else +		filename=$(basename $url) +	fi  	if [ -f "$PATCHDIR/$filename" ]; then  		cp "$PATCHDIR/$filename" $TMPDIR || die | 
