diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/autoinstall-includes.sh | 35 | ||||
-rw-r--r-- | includes/cd-includes.sh | 2 | ||||
-rw-r--r-- | includes/cd-list.sh~ | 97 | ||||
-rw-r--r-- | includes/generic-includes.sh | 29 |
4 files changed, 127 insertions, 36 deletions
diff --git a/includes/autoinstall-includes.sh b/includes/autoinstall-includes.sh index 8f80036..933e731 100644 --- a/includes/autoinstall-includes.sh +++ b/includes/autoinstall-includes.sh @@ -38,41 +38,6 @@ 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)" - echo "6 | Icewind Dale (2CD UK version)" - echo "7 | Icewind Dale 2 (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 ;; - 6 ) export CDMD5="b79582f4f80270d48e6b26f529ba31dd" - return 0 ;; - 7 ) export CDMD5="77307366ba3e8a246f6f238cbb3b7874" - return 0 ;; - esac - done -} - function recommendcfg { # usage: recommendcfg [numofcds] diff --git a/includes/cd-includes.sh b/includes/cd-includes.sh index 3ef9670..86359ea 100644 --- a/includes/cd-includes.sh +++ b/includes/cd-includes.sh @@ -32,7 +32,7 @@ export IWD_2CD_US_MD5="b79582f4f80270d48e6b26f529ba31dd" export IWD_2CD_UK_MD5="b79582f4f80270d48e6b26f529ba31dd" export IWD_HOW_1CD_US_MD5="d2c42de47026f6384053965319ff511b" -export IWD2_2CD_US_MD5="77307366ba3e8a246f6f238cbb3b7874" +export IWD2_2CD_INTL_MD5="77307366ba3e8a246f6f238cbb3b7874" # a record of every IE collection I can find. export IWD_ULTIMATE_COLLECTION_MD5="" diff --git a/includes/cd-list.sh~ b/includes/cd-list.sh~ new file mode 100644 index 0000000..17cdfe6 --- /dev/null +++ b/includes/cd-list.sh~ @@ -0,0 +1,97 @@ +#!/bin/bash +# 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. +# +# Selects the appropriate installer(s) for an Infinity Engine game, +# based on the CD inserted + +while [ -z "$MINSCRIPT" ]; do + case "$1" 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" + EXPANSIONSCRIPT= + 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 diff --git a/includes/generic-includes.sh b/includes/generic-includes.sh index ac62dd2..1ed5472 100644 --- a/includes/generic-includes.sh +++ b/includes/generic-includes.sh @@ -152,6 +152,24 @@ function copylower fi } +function setlower +{ + # usage: setlower target + if [ "$1" ] + then + cd "$1" + for each_file in "`find ./ -iname "*"`" + do + lower="`echo "$each_file" | tr "[:upper:]" "[:lower:]"`" + + if [ "$each_file" != "$lower" ] + then + mv "$each_file" "$lower" + fi + done + fi +} + function move_and_remove { # usage: move_and_remove source destination @@ -160,3 +178,14 @@ function move_and_remove cp -R "$1/"* "$2" || die rm -r "$1" } + +function teardown +{ + # usage: teardown target + if [ "$1" ] + then + cleanuptmp + setperms "$1" + setlower "$1" + fi +} |