Files
meep-eep 4a55a2ca80 Using share/ for system-independant data.
git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@1096 8092fc87-c524-0410-9efc-e669fe64eaf9
2003-08-10 18:49:58 +00:00

140 lines
3.5 KiB
Plaintext

MENU_main_ITEMS="components install_prefix"
MENU_main_TITLE="The Ur-Quan Masters installation"
MENU_main_ITEM_components_TYPE=MENU
MENU_main_ITEM_install_prefix_TYPE=INPUT
MENU_components_TITLE="Optional components"
MENU_components_TEXT=\
" Here you can select which components you'd like to have installed. If you
can spare the space, you are adviced to select all, for the maximum game
experience.
"
package_filename() {
local FILENAME PACKNAME
eval PACKNAME="\${UQM_PACKAGE_$1_NAME}"
# Check complete package first for reinstall or downgrade.
# If they're not found, we'll settle for an upgrade package,
# maybe it will work, maybe it won't.
case "$UQM_INSTALL" in
NEW|REINSTALL|DOWNGRADE)
FILENAME="${CONTENT_PATH}uqm-${UQM_VERSION}-$PACKNAME.zip"
if [ -f "$FILENAME" ]; then
# Found complete package.
echo "$FILENAME"
return 0
fi
;;
esac
# A full package is needed for a new install
if [ "$UQM_INSTALL" = NEW ]; then
return 1
fi
# Check for upgrade package.
FILENAME="${CONTENT_PATH}uqm-${UQM_OLDVERSION}_to_${UQM_VERSION}-$PACKNAME.zip"
if [ -f "$FILENAME" ]; then
# Found upgrade package.
echo "$FILENAME"
return 0
fi
# Check complete package again, as you can upgrade with a complete
# package.
if [ "$UQM_INSTALL" = UPGRADE ]; then
FILENAME="${CONTENT_PATH}uqm-${UQM_VERSION}-$PACKNAME.zip"
if [ -f "$FILENAME" ]; then
# Found complete package.
echo "$FILENAME"
return 0
fi
fi
return 1
}
package_available() {
package_filename "$@" > /dev/null
return $?
}
set_components_menu() {
local TITLE OPTIONAL DEFAULT
MENU_install_components_TITLE="Optional components selection"
MENU_install_components_ITEMS="$UQM_PACKAGES"
for PACKAGE in $UQM_PACKAGES; do
eval TITLE="\"\${UQM_PACKAGE_${PACKAGE}_TITLE}\""
eval OPTIONAL="\${UQM_PACKAGE_${PACKAGE}_OPTIONAL}"
eval DEFAULT="\${UQM_PACKAGE_${PACKAGE}_DEFAULT}"
eval MENU_install_components_ITEM_${PACKAGE}_TYPE=CHECK
eval CHECK_${PACKAGE}_TITLE=\"\$TITLE\"
if [ "$DEFAULT" = "TRUE" ]; then
eval CHECK_${PACKAGE}_DEFAULT=CHECKED
else
eval CHECK_${PACKAGE}_DEFAULT=UNCHECKED
fi
if package_available "$PACKAGE"; then
if [ "$OPTIONAL" = "FALSE" ]; then
eval CHECK_${PACKAGE}_VALUE=CHECKED
eval CHECK_${PACKAGE}_FIXED=TRUE
fi
else
if [ "$OPTIONAL" = "TRUE" ]; then
eval CHECK_${PACKAGE}_VALUE=UNCHECKED
eval CHECK_${PACKAGE}_FIXED=TRUE
else
echo "Can't find '$PACKAGE' package"
return 1
fi
fi
done
return 0
}
show_components_menu() {
do_menu MENU install_components ""
}
INPUT_install_prefix_TITLE="Installation prefix"
#INPUT_install_prefix_TEXT=\
#" This is the top directory where the game data will be installed.
# In the directory you specify directories like 'bin', 'lib' and 'share'
# will be used.
#"
if [ "$(id -u)" -eq 0 ]; then
INPUT_install_prefix_DEFAULT="/usr/local/games/"
else
INPUT_install_prefix_DEFAULT="$HOME/uqm/"
fi
INPUT_install_prefix_VALIDATOR=validate_path
show_install_prefix_menu() {
do_menu INPUT install_prefix ""
INPUT_install_prefix_VALUE="${INPUT_install_prefix_VALUE%/}/"
}
INPUT_content_path_TITLE="Location of content packages"
INPUT_content_path_DEFAULT="${PWD%/}/"
INPUT_content_path_VALIDATOR=validate_path
show_content_path_menu() {
do_menu INPUT content_path ""
INPUT_content_path_VALUE="${INPUT_content_path_VALUE%/}/"
}
selected_packages() {
local RESULT PACKAGE VALUE
RESULT=""
for PACKAGE in $UQM_PACKAGES; do
eval VALUE="\$CHECK_${PACKAGE}_VALUE"
if [ "$VALUE" = CHECKED ]; then
RESULT="${RESULT:+$RESULT }$PACKAGE"
fi
done
echo "$RESULT"
}