summaryrefslogtreecommitdiff
path: root/build/unix_installer/installer.config
diff options
context:
space:
mode:
Diffstat (limited to 'build/unix_installer/installer.config')
-rw-r--r--build/unix_installer/installer.config139
1 files changed, 139 insertions, 0 deletions
diff --git a/build/unix_installer/installer.config b/build/unix_installer/installer.config
new file mode 100644
index 0000000..aeb9a03
--- /dev/null
+++ b/build/unix_installer/installer.config
@@ -0,0 +1,139 @@
+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"
+}
+
+