From c93108cc3cbc1cc685811776b9b771aef34fa25f Mon Sep 17 00:00:00 2001 From: NickDaly Date: Sat, 6 Jun 2009 17:55:30 -0500 Subject: Moved the list of games into an external file (includes/cd-list.sh). --- auto-installer.sh | 101 ++++++++++-------------------------------------------- 1 file changed, 18 insertions(+), 83 deletions(-) (limited to 'auto-installer.sh') diff --git a/auto-installer.sh b/auto-installer.sh index e51d19e..beffa06 100755 --- a/auto-installer.sh +++ b/auto-installer.sh @@ -28,89 +28,14 @@ source "$scriptdir/includes/generic-includes.sh" source "$scriptdir/includes/cd-includes.sh" source "$scriptdir/includes/patch-includes.sh" source "$scriptdir/includes/autoinstall-includes.sh" +source "$scriptdir/includes/cd-list.sh" parseargs "$@" echo "Checking CD version" -CDMD5=$(md5sum $CDMOUNT/data1.cab|awk '{print $1}') +export CDMD5=$(md5sum "${CDMOUNT}/data1.cab"|awk '{print $1}') -while [ -z "$MINSCRIPT" ]; do - case "$CDMD5" in - $BG1_5CD_INTL_MD5 ) - FULLGAMENAME="Baldurs Gate 1: 5CD International version" - SHORTGAMENAME="baldursgate1" - MINSCRIPT="bg1/install-5cd-minimal.sh" - EXTRASCRIPT="bg1/install-5cd-extra.sh" - PATCHES="bg1/install-patch-intl.sh bg1/install-patch-baldurdash-fix.sh bg1/install-patch-baldurdash-text.sh" - WINDOWSFILES="baldur.exe bgmain.exe config.exe keymap.ini luaauto.cfg update.url" - CDNO=5 - ;; - $BG1_TOTSC_3CD_US_MD5 ) - FULLGAMENAME="Baldurs Gate 1 & Tales of the Sword Coast: 3CD US version" - SHORTGAMENAME="baldursgate1totsc" - MINSCRIPT="bg1/install-3cd-minimal.sh" - EXTRASCRIPT="bg1/install-3cd-extra.sh" - PATCHES="bg1/install-patch-baldurdash-fix.sh bg1/install-patch-totsc-baldurdash-text.sh" - WINDOWSFILES="baldur.exe bgmain.exe config.exe keymap.ini luaauto.cfg update.url" - CDNO=3 - ;; - $BG1_TOTSC_1CD_UK_MD5 ) - FULLGAMENAME="Baldurs Gate 1 & Tales of the Sword Coast: 1CD UK version" - SHORTGAMENAME="baldursgate1totsc" - MINSCRIPT="bg1/install-1cd-totsc-uk.sh" - PATCHES="bg1/install-patch-totsc-uk.sh bg1/install-patch-baldurdash-fix.sh bg1/install-patch-totsc-baldurdash-text.sh" - WINDOWSFILES="bgmain2.exe baldur.exe config.exe mconvert.exe" - ;; - $BG2_4CD_US_MD5 ) - FULLGAMENAME="Baldurs Gate 2 - Shadows of Amn: 4CD US version" - SHORTGAMENAME="baldursgate2soa" - MINSCRIPT="bg2/install-4cd-minimal-us.sh" - # TODO: uncomment when complete EXTRASCRIPT="bg2/install-4cd-extra-us.sh" - PATCHES="" # TODO: fill in patches - # bg2/install-patch-soa-us.sh bg2/install-patch-baldurdash-fix.sh bg2/install-patch-soa-baldurdash-text.sh" - WINDOWSFILES="bgdxtest.exe bggltest.exe glsetup.exe bgconfig.exe bgmain.exe charview.exe" - ;; - # $BG2_TOB_1CD_US_MD5 ) - # FULLGAMENAME="Baldurs Gate 2 - Throne of Bhaal: 1CD US version" - # SHORTGAMENAME="baldursgate2tob" - # MINSCRIPT="bg2/install-1cd-tob-us.sh" - # PATCHES="" # TODO: fill in patches - # # bg2/install-patch-totsc-uk.sh bg1/install-patch-baldurdash-fix.sh bg1/install-patch-totsc-baldurdash-text.sh" - # # TODO: correct the list of windows files. - # WINDOWSFILES="" # "bgmain2.exe baldur.exe config.exe mconvert.exe" - # ;; - $PST_2CD_MD5 ) - FULLGAMENAME="Planescape Torment: 2CD version" - SHORTGAMENAME="planescapetorment" - MINSCRIPT="pst/install-2cd-minimal.sh" - EXTRASCRIPT="pst/install-2cd-extra.sh" - WINDOWSFILES="torment.exe ereg" - CDNO=2 - ;; - $PST_4CD_MD5 ) - FULLGAMENAME="Planescape Torment: 4CD version" - SHORTGAMENAME="planescapetorment" - MINSCRIPT="pst/install-4cd-minimal.sh" - EXTRASCRIPT="pst/install-4cd-extra.sh" - PATCHES="pst/install-patch-official.sh" - WINDOWSFILES="torment.exe ereg" - CDNO=4 - ;; - $IWD_2CD_UK_MD5 ) - FULLGAMENAME="Icewind Dale 2CD UK version" - SHORTGAMENAME="icewinddale" - MINSCRIPT="iwd/install-2cd-uk-minimal.sh" - EXTRASCRIPT="iwd/install-2cd-uk-extra.sh" - PATCHES="iwd/install-patch-uk-fix.sh iwd/install-patch-us.sh" - WINDOWSFILES="3dfx.dll config.exe icewind.ini keymap.ini language.ini mpicewnd.mpi" - CDNO=2 - ;; - * ) - echo "Unrecognised CD - please select game from menu" - choosegame - ;; - esac -done +get_game [ -z "$TARGETDIR" ] && [ -n "$SHORTGAMENAME" ] && export TARGETDIR="$PWD/$SHORTGAMENAME" [ -z "$TARGETDIR" ] && diequietly @@ -130,13 +55,23 @@ if [ -n "$EXTRASCRIPT" ]; then fi fi +if [ -n "$EXPANSIONSCRIPT" && "$FULLINSTALL" -eq 0 ]; then + if query "Do you want to install the files needed by the expansion $EXPANSIONNAME?" y; then + EXPANSIONINSTALL=1 + "${scriptdir}/${EXPANSIONSCRIPT}" -i "$TARGETDIR" -c "$CDMOUNT" 1>/dev/null || diequietly + else + EXPANSIONINSTALL=0 + fi +fi + + if [ -n "$PATCHES" ]; then - for patch in $PATCHES; do + for patch in "$PATCHES"; do patch="$scriptdir/$patch" # grab 17th line from scripts (description line; after license) - patchtitle=$(sed -n 17p $patch|cut -d ' ' -f 2-) + patchtitle=$(sed -n 17p "$patch"|cut -d ' ' -f 2-) if query "Do you want to install $patchtitle" y; then - $patch \ + "$patch" \ -i "$TARGETDIR" \ -p "$PATCHDIR" \ -l "$LANGUAGE" \ @@ -148,8 +83,8 @@ fi if [ -n "$WINDOWSFILES" ]; then if query "Do you want to remove unneeded windows files?" n; then - for badfile in $WINDOWSFILES; do - rm -rf "$TARGETDIR"/$badfile + for badfile in "$WINDOWSFILES"; do + rm -rf "${TARGETDIR}/${badfile}" done fi fi -- cgit v1.2.3