diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2013-07-28 02:30:20 +0200 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2013-07-28 02:30:20 +0200 |
commit | 48a589b8c526b34e79e8cdddc4cb7f5fc7b76815 (patch) | |
tree | 0f30d90998669b60a0aa840f824cc3d4ea7ddc66 /Setup | |
download | kshutdown-48a589b8c526b34e79e8cdddc4cb7f5fc7b76815.tar.gz kshutdown-48a589b8c526b34e79e8cdddc4cb7f5fc7b76815.zip |
Initial import of kshutdown 1.0.4
Diffstat (limited to 'Setup')
-rwxr-xr-x | Setup | 266 |
1 files changed, 266 insertions, 0 deletions
@@ -0,0 +1,266 @@ +#!/bin/bash + +# TODO: 2.0: use kdialog + +META_FULL_NAME="KShutDown" +META_VERSION="`cat VERSION`" + +#if [[ (("$TERM" == "dumb") || ("$TERM" == "xterm")) && ("${1}" != "--launch-in-konsole") ]]; then +# echo +# echo "Press Ctrl+C to exit $META_FULL_NAME installer" +# konsole --notabbar --notoolbar --workdir `dirname "${0}"` -T "$META_FULL_NAME Installer" -e ${0} --launch-in-konsole +# exit +#fi + +# installation dirs +DEFAULT_DIR=`kde-config --prefix` +if [ -z "$DEFAULT_DIR" ]; then + DEFAULT_DIR="/usr" +fi +INSTALL_DIR="$DEFAULT_DIR" + +# colors +DEF_C="\E[37;40m" +KEY_C="\E[31;40m" + +# configure options +CONFIGURE_OPTIONS="" +FAST_COMPILATION="true" + +# i18n +# english +I18N_TITLE_DOCS="Documentation and License" +I18N_TITLE_SETUP="Compilation and Installation" +I18N_CHANGE_DIR="Change installation directory (prefix)" +I18N_DISABLE_FAST="Disable fast compilation" +I18N_ENABLE_FAST="Enable fast compilation" +I18N_INSTALL="Install" +I18N_LICENSE="License" +I18N_NEWS="What's new? (q - quit)" +I18N_PRESS_ENTER="Press <Enter> to exit" +I18N_QUIT="Quit" +I18N_THANKS="Thank you for using" +I18N_MENU="K Menu: Accessories -> KShutDown" +I18N_CONF_WITH="Configuring with" +I18N_INST_FAILED="Installation failed!" +I18N_COMP_FAILED="Compilation failed!" +I18N_CONF_FAILED="Configuration failed!" +I18N_COMP_START="Compiling..." +I18N_MINU=" This may take a few minutes." +I18N_MISSING_DEPEN1="Make sure you have installed the 'kdelibs-devel' package" +I18N_MISSING_DEPEN2=" which is required to compile any KDE application." +I18N_ENTER_DIR="Enter a new prefix" +I18N_SETUP="Setup" +I18N_README="Readme" + +# polish +if [[ ("$LANG" == "pl_PL.UTF-8") || ("$LANG" == "pl_PL") || ("$LANG" == "pl") ]]; then + I18N_TITLE_DOCS="Dokumentacja i licencja" + I18N_TITLE_SETUP="Kompilacja i instalacja" + I18N_CHANGE_DIR="Zmien katalog instalacji (prefix)" + I18N_DISABLE_FAST="Wylacz szybka kompilacje" + I18N_ENABLE_FAST="Wlacz szybka kompilacje" + I18N_INSTALL="Instaluj" + I18N_LICENSE="Licencja" + I18N_NEWS="Co nowego? (q - wyjscie)" + I18N_PRESS_ENTER="Nacisnij <Enter>, aby wyjsc" + I18N_QUIT="Zakoncz" + I18N_THANKS="Dziekujemy za uzycie" + I18N_MENU="Menu K: Akcesoria -> KShutDown" + I18N_CONF_WITH="Konfigurowanie z" + I18N_INST_FAILED="Instalacja nie powiodla sie!" + I18N_COMP_FAILED="Kompilacja nie powiodla sie!" + I18N_CONF_FAILED="Konfiguracja nie powiodla sie!" + I18N_COMP_START="Kompilowanie..." + I18N_MINU=" To moze potrwac kilka minut." + I18N_MISSING_DEPEN1="Upewnij sie, ze masz zainstalowana paczke 'kdelibs-devel'," + I18N_MISSING_DEPEN2=" ktora jest wymagana do kompilacji jakiejkolwiek aplikacji KDE." + I18N_ENTER_DIR="Wprowadz nowy prefix" + I18N_SETUP="Instalator" + I18N_README="Przeczytaj (readme)" +fi + +#italian +if [[ ("$LANG" == "it_IT.UTF-8") || ("$LANG" == "it_IT") || ("$LANG" == "it") ]]; then + I18N_TITLE_DOCS="Documentazione e Licenza" + I18N_TITLE_SETUP="Compilazione ed Installazione" + I18N_CHANGE_DIR="Cambia la cartella di destinazione (prefix)" + I18N_DISABLE_FAST="Disabilita compilazione veloce" + I18N_ENABLE_FAST="Abilita compilazione veloce" + I18N_INSTALL="Installa" + I18N_LICENSE="Licenza" + I18N_NEWS="Cosa c'è di nuovo? (q - esci)" + I18N_PRESS_ENTER="Premi <Enter> per uscire" + I18N_QUIT="Esci" + I18N_THANKS="Grazie di usare" + I18N_MENU="Menu K: Accessori -> KShutDown" + I18N_CONF_WITH="Configurazione con" + I18N_INST_FAILED="Installazione fallita!" + I18N_COMP_FAILED="Compilazione fallita!" + I18N_CONF_FAILED="Configurazione fallita!" + I18N_COMP_START="Compilazione..." + I18N_MINU=" Per questo potrebbero volerci alcuni minuti." + I18N_MISSING_DEPEN1="Assicurati di aver installato il pacchetto 'kdelibs-devel'" + I18N_MISSING_DEPEN2=" che è necessario per compilare ogni applicazione KDE." + I18N_ENTER_DIR="Inserisci una nuova destinazione" + I18N_SETUP="Installazione" + I18N_README="Leggimi" +fi +# internal functions + +ks_kill() +{ + echo + echo + echo "$I18N_SETUP: ${1}" + echo + echo "$I18N_PRESS_ENTER" + read + ks_quit 1 +} + +ks_quit() +{ + ks_reset + exit ${1} +} + +ks_reset() +{ + tput sgr0 +} + +ks_show_finish_info() +{ + echo + echo "$I18N_THANKS $META_FULL_NAME!" + echo " The $META_FULL_NAME Team" + echo + echo "HOW TO RUN?" + echo + echo "$I18N_MENU" + echo "Command: kshutdown" + echo "Command line options: kshutdown --help" + echo + echo -e "$I18N_PRESS_ENTER" + read +} + +ks_show_menu() +{ + echo -e "$DEF_C" + clear + echo + echo + echo " $I18N_SETUP" + echo " $META_FULL_NAME $META_VERSION" + echo + echo + echo -e " ${KEY_C}${I18N_TITLE_SETUP}${DEF_C}" + echo -e " [${KEY_C}i${DEF_C}] $I18N_INSTALL (./configure --prefix=${INSTALL_DIR}, make, kdesu -c \"make install\")" + echo -e " [${KEY_C}p${DEF_C}] $I18N_CHANGE_DIR" + if [ -n "$FAST_COMPILATION" ]; then + echo -e " [${KEY_C}f${DEF_C}] $I18N_DISABLE_FAST"; + else + echo -e " [${KEY_C}f${DEF_C}] $I18N_ENABLE_FAST (--enable-final)"; + fi + echo + echo -e " ${KEY_C}${I18N_TITLE_DOCS}${DEF_C}" + echo -e " [${KEY_C}n${DEF_C}] $I18N_NEWS" + echo -e " [${KEY_C}l${DEF_C}] $I18N_LICENSE (GNU GPL)" + echo -e " [${KEY_C}r${DEF_C}] $I18N_README" + echo + echo -e " [${KEY_C}q${DEF_C}] $I18N_QUIT" + echo + echo + echo " http://kshutdown.sourceforge.net" +} + +while [ 1 ]; do + ks_show_menu + # wait for a single key + read -n 1 -s + + # install + if [[ ("$REPLY" == "i") || ( "$REPLY" == "I" ) ]]; then + if [ -n "$FAST_COMPILATION" ]; then + CONFIGURE_OPTIONS="--prefix=${INSTALL_DIR} --enable-final"; + else + CONFIGURE_OPTIONS="--prefix=${INSTALL_DIR}"; + fi + echo + echo "$I18N_SETUP: $I18N_CONF_WITH '$CONFIGURE_OPTIONS'..." + echo + # configure + if ! [ -f ./configure ]; then + make -f admin/Makefile.common cvs + fi + if ./configure $CONFIGURE_OPTIONS; then + echo "$I18N_SETUP: $I18N_COMP_START" + echo "$I18N_MINU" + if make; then + if [ -w "${INSTALL_DIR}" ]; then + if make install; then + ks_show_finish_info + ks_quit + else + ks_kill "$I18N_INST_FAILED" + fi + else + if kdesu -c "make install"; then + ks_show_finish_info + ks_quit + else + ks_kill "$I18N_INST_FAILED" + fi + fi + else + ks_kill "$I18N_COMP_FAILED" + fi + else + echo + echo + echo "$I18N_SETUP: $I18N_MISSING_DEPEN1" + echo "$I18N_MISSING_DEPEN2" + ks_kill "$I18N_CONF_FAILED" + fi + ks_quit + + # prefix + elif [[ ("$REPLY" == "p") || ( "$REPLY" == "P" ) ]]; then + echo + echo "$I18N_ENTER_DIR [${DEFAULT_DIR}]: " + read -e + if [ -z "$REPLY" ]; then + REPLY="$DEFAULT_DIR" + fi + INSTALL_DIR="$REPLY" + + # toggle fast compilation + elif [[ ("$REPLY" == "f") || ( "$REPLY" == "F" ) ]]; then + if [ -z "$FAST_COMPILATION" ]; then + FAST_COMPILATION="true"; + else + FAST_COMPILATION=""; + fi + + # news + elif [[ ("$REPLY" == "n") || ( "$REPLY" == "N" ) ]]; then + less "NEWS" + + # license + elif [[ ("$REPLY" == "l") || ( "$REPLY" == "L" ) ]]; then + less "COPYING" + + # readme + elif [[ ("$REPLY" == "r") || ( "$REPLY" == "R" ) ]]; then + less "README" + + # quit + elif [[ ("$REPLY" == "q") || ( "$REPLY" == "Q" ) ]]; then + ks_reset + clear + exit + fi + +done |