#!/bin/sh ########################################################################### # Installationsprozedur fuer SISCAD-P # Copyright (c) 1993-1995 STAEDTLER MARS GmbH & Co ########################################################################### # @(#)install 1.21 of 7/28/95 SISCADPARCHIVE=`ls siscadp-*.tar.*` VERSION=`echo ${SISCADPARCHIVE}| sed -e 's|siscadp-||' -e 's|\(.*\)\.tar.*|\1|'` INSTALLBASE=/usr/siscadp-${VERSION} BACKUPDIR=/usr/siscadp.bak # hier wird alles gesichert was # neuer ist als das LOGFILE der # bereits installierten Version SISCAD_HOME=/usr/siscadp # wird symlink auf installierte Vers. LOGFILE=${SISCAD_HOME}/install.log # protokollfile zur Installation SELECT_LANGUAGE=/usr/siscadp/exe/sislanguage SISSTARTER=/usr/siscadp/exe/start SISBINFILES="siscadp" BINDIR=/usr/bin ############## set_language() # ask for SISLANGUAGE and set it to DEUTSCH or ENGLISH ############## { cat </dev/null SIZE=25329 #rm ${SIZEFILE} while true do echo echo $TXT_DISKOVERVIEW echo df echo " $TXT_SISKB1 ${SIZE} $TXT_SISKB2 ${INSTALLBASE} $TXT_INSTDIR1 $TXT_INSTDIR2 $TXT_INSTDIR3 ${INSTALLBASE} " echo_nl "$TXT_INSTDIR [${INSTALLBASE}] : " read dummy if [ "${dummy}" != "" ] then INSTALLBASE="${dummy}" fi echo_nl "$TXT_INSTDIR ${INSTALLBASE} ok ? $TXT_YESNO : " ; askyn && { break ; } ; done } check_oldversion() # rm old SISCAD-P version ; save modified files ################## { if [ -f ${LOGFILE} ] then CWD=`pwd` if [ ! -d ${BACKUPDIR} ] then echo echo "$TXT_BUPDIR1 ${BACKUPDIR} $TXT_BUPDIR2 " mkdir ${BACKUPDIR} fi cd ${SISCAD_HOME} # # Alles sichern, was Kunde seit der Installation eventuell # geaendert haben koennte, jedoch nicht sollte !!!! # Zur Ermittlung der geaenderten Dateien zuerst auf das Verzeichnis # setzen und anschliessend im find mit . arbeiten, da symbolische Links # im find-Befehl gesondert behandelt werden. # FILES2SAVE=`find . -type f -newer ${LOGFILE} -print` if [ " " != " ${FILES2SAVE}" ] then echo echo $TXT_SAVEOLD ${BACKUPDIR} ... tar cf - `echo ${FILES2SAVE}` | (cd ${BACKUPDIR}; tar xvf -) ||\ stopMsg "$TXT_SAVEERR" fi if [ ${TEST_LN} ${SISCAD_HOME} ] then # Loeschen des gelinkten Verzeichnisses LN_DIR=`ls -l ${SISCAD_HOME} | awk -F\> '{print $2}'` RM_DIR="${LN_DIR}" else LN_DIR="" RM_DIR="${SISCAD_HOME}" fi cd ${CWD} echo echo ${RM_DIR} $TXT_REMOVED rm -rf ${LN_DIR} ${SISCAD_HOME} 2>&1 >/dev/null fi } inst_newversion() # install new SISCAD-P ################# { if [ ! -d ${INSTALLBASE} ] then echo echo "$TXT_DIR ${INSTALLBASE} $TXT_CREATING" mkdir ${INSTALLBASE} fi echo echo $TXT_SISCREATE cd ${INSTALLBASE} zcat ${SOURCEDIR}/${SISCADPARCHIVE} | tar xvf - ||\ stopMsg "$TXT_CREATEERR" if [ "${SISCAD_HOME}" != "${INSTALLBASE}" ] then echo "Link ${INSTALLBASE} -> ${SISCAD_HOME}" ${LNCMD} ${INSTALLBASE} ${SISCAD_HOME} fi for i in ${SISBINFILES} do echo "Link ${SISSTARTER} -> ${BINDIR}/${i}" ${LNCMD} ${SISSTARTER} ${BINDIR}/${i} done cd ${SOURCEDIR} } # # Beginn der SISCAD-P Installation # clear set_language init_text_messages is_root clear echo_nl " $TXT_WELCOME ##### ### ##### ##### # ###### ###### # # # # # # # # # # # # # # # # # # # # # # # ##### # ##### # # # # # ##### ###### # # # # ####### # # # # # # # # # # # # # # # ##### ### ##### ##### # # ###### # Version ${VERSION} $TXT_CONTINST $TXT_YESNO : " askyn || stopMsg " " clear select_instdir check_oldversion inst_newversion $SELECT_LANGUAGE $SISLANGUAGE echo_nl " $TXT_INSTEND1 $TXT_INSTEND2 ${SISCADPARCHIVE} $TXT_INSTEND3 $TXT_DOYOULIKE ${SISCADPARCHIVE} $TXT_INSTALLRM ? $TXT_YESNO : " askyn && rm ${SISCADPARCHIVE} install clear echo " ##### ### ##### ##### # ###### ###### # # # # # # # # # # # # # # # # # # # # # # # ##### # ##### # # # # # ##### ###### # # # # ####### # # # # # # # # # # # # # # # ##### ### ##### ##### # # ###### # Version ${VERSION} " $TXTCMD_SUCCESS