DataMuseum.dk

Presents historical artifacts from the history of:

Regnecentalen RC-900

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Regnecentalen RC-900

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦87eb13918⟧ TextFile

    Length: 7042 (0x1b82)
    Types: TextFile
    Notes: UNIX file
    Names: »install«

Derivation

└─⟦bee8f15db⟧ Bits:30004169/disk2.imd Uniplex II+ V.6 release 1.0 (dansk)
└─⟦bee8f15db⟧ UNIX Filesystem
    └─⟦this⟧ »up/new/usr/UAP/install« 

TextFile


: 'install - Main Uniplex installation script

L..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..T..R

Usage:   UAP/install

Exits:   undefined
'

: Support standard UNIPLEX "-V" argument

case "$1" in
 -V) exec echo "$0: version 6.00";;
esac

: '
Get something onto users screen as soon as possible - do not want him to
lose interest! In normal operation, folling prompt will be followed, after
a pause, by the copyright notice
'
DEBUG=:
export DEBUG
: '
UNINAME designed to echo as centred banner. All sub-text should be
appropriately aligned
'
UNINAME="
          *********************************************************
             U N I P L E X    B U S I N E S S    S O F T W A R E
          *********************************************************"
echo "


Welcome to$UNINAME
"

Uredirect=`pwd`
cd UAP || exec echo "You must invoke install program as \"UAP/install\""

EXIT="
Terminating Installation"

: set defaults for product

if test -z "$INFORMIXDIR"; then
   INFORMIXDIR=/usr/informix
fi
UNIPLEX_NAME=uniplex
UNIPLEX_DIR=/usr/bin
export UNIPLEX_NAME UNIPLEX_DIR INFORMIXDIR

TMPFILE=/tmp/uinstall$$
trap "rm -f $TMPFILE; exit" 2 3

PATH=$Uredirect/UAP/install.cmds:$Uredirect/UAP/bin:$PATH:/etc
PATH=$PATH:$Uredirect/UAP/cmds
export Uredirect PATH UNINAME

: Check for UID 0
if NOT.superuser; then
   echo "$EXIT"
   exit
fi

umask 0

: 'establish method of no-return after echo'
. set.ECHO.args

: Now display notice and then check system
cat install.cmds/NOTICE
echo $EN "
Press  <RETURN>  to continue when you have read the above
 or   *<RETURN>  to stop  this  installation program now: $CEE"
read ans
case "$ans" in
 '*') exit 0;;
esac

: Now check system. Run Checks, abort if any fail.

echo "
Please wait, UNIPLEX is checking your system and utilities..."

check.SHELL || exec echo "$EXIT"

check.COMMANDS || exec echo "$EXIT"
TERM_DATA=`uinfo -t`
export TERM_DATA

case "$TERM_DATA" in
        TERMINFO) check.tic || exec echo "$EXIT";;
               *) ;;
esac

echo "             UNIPLEX is unpacking any packed files..."
find . -name '*.z' -exec unpack {} \; >/dev/null 2>&1

: '
.PA
  Main menu processing starts here

  Find default language
'
INSLANG="`sed -n 's/^\* *LANGUAGE: *\(.*\)/\1/p' list_of_files 2>/dev/null`"
test -z "$INSLANG" && INSLANG='USA english'
case "$INSLANG" in
   USA*) : 'Check in uniplex.sys to see if, on later AOS install,
            for instance, we actually have UK dates'
         case "`sed -n '/^DATEFMT/p' uniplex.sys 2>/dev/null`" in
         *DD/MM/YY*) INSLANG='UK english';;
         esac
         ;;
esac

export INSLANG

MSG=
while :
do

: 'now to find what is already installed'

eval `check.uins`

if test -z "$INSTLD"; then
   INSTLD=NONE
fi

if test -z "$UINSTLD"; then
   : If no modules left to install, default entry is Q
   DEFANS=q
else
   DEFANS=$UINSTLD
fi

: ' Set up CHNGDEF to be displayed if BASE is not installed and
    is available.
'
case "$INSTLD" in
 *1*)   CHNGDEF='';;
   *)   CHNGDEF='C - Change defaults';;
esac

: If BASE not yet installed and INSLANG is USA or UK, allow change option

case "$UINSTLD$INSLANG" in
 1*USA*) CHNGLANG='L - Change to UK english';;
 1*UK* ) CHNGLANG='L - Change to USA english';;
     * ) CHNGLANG= ;;
esac

: Add bell to any error message
test -z "$MSG" || MSG="$MSG$BELL"

echo $EN "


$MSG

$UNINAME
                       Installation Program - Main Menu


      Modules                                 Language selected: $INSLANG
      =======                                 =================
      1 - Uniplex II Plus Version Six (BASE)  $CHNGLANG
      2 - Advanced Office System (AOS)
      3 - Advanced Graphics System (AGS)      Operations
                                              ==========
                                              $CHNGDEF
                                              Q - Quit
Modules already installed: $INSTLD
        available for installation: $UINSTLD

NOTE: Enter 123 to install modules 1, 2 and 3

Enter option [$DEFANS]: $CEE"
   read ans scrap
   MSG=

:   If $ans is null substitute default options

   if test ! -z "$scrap"; then
      MSG="Invalid Option - \"$ans $scrap\""
      continue
   fi
   if test -z "$ans"; then
      ans=$DEFANS
   fi

   case "$ans" in
   [Qq]) exit 0
         ;;
   [Cc]) if test -z "$CHNGDEF"; then
            MSG="Invalid Option - \"$ans\""
         else
            rm -f $TMPFILE
            defaults.menu $TMPFILE
            . $TMPFILE
            rm -f $TMPFILE
         fi
         ;;
   [Ll]) if test -z "$CHNGLANG"; then
            MSG="Invalid Option - \"$ans\""
         else
            case "$INSLANG" in
             UK*) INSLANG='USA english';;
             US*) INSLANG='UK english';;
            esac
         fi
         ;;

     [0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9] )
         : Sort to-be-insalled option numbers into VALS
         rm -fr $TMPFILE
         mkdir $TMPFILE
         for f in `echo $ans|sed 's/\([1-3]\)/ \1 /g`;do
            >$TMPFILE/$f
         done
         VALS=`cd $TMPFILE; echo ?`
         rm -fr $TMPFILE

: '      The above sed script separates reply into fields
         so module options can be processed separately, and
         ensures these options only processed once.

         Now validate selections:
'
         case "$INSTLD" in
         1*) ONE=1;;
          *) ONE=;;
         esac

         if test -z "$VALS"; then
            MSG="No option selected"
         else
            for i in $VALS; do
               n=`map.option $i`

               case "$INSTLD" in
                 *$i*) MSG="Module \"$n\" already installed"; break;;
               esac
               case "$UINSTLD" in
                 *$i*) : Selection is in available list
                       ;;
                    *) MSG="Invalid module code - \"$i\""; break;;
               esac
               case "$i" in
                  1) ONE=1;;
                  *) case "$ONE" in
                        1) ;;
                        *) MSG="Cannot install \"$n\" without BASE"; break;;
                     esac
                     ;;
               esac
            done
         fi

         : Any error in validation above will set message in MSG non-null

         if test -z "$MSG"; then
            : 'Sort/merge installed and to-be-installed option numbers into
               CONF (contiguous string) and CONFS (space separated list)'
            rm -fr $TMPFILE
            mkdir $TMPFILE
            for f in `echo $VALS $INSTLD|sed 's/\([1-9]\)/ \1 /g`;do
               >$TMPFILE/$f
            done
            CONF=`cd $TMPFILE
                  C=
                  for f in ?; do C=$C$f; done
                  echo $C`
            CONFS="`cd $TMPFILE; echo ?`"
            rm -fr $TMPFILE

            echo
            install.module $CONF "$CONFS" $VALS
            echo $EN "

Please press <RETURN> to continue$CEE"
            read resp
         fi
         ;;

      *) MSG="Invalid Option - \"$ans\""
         ;;
   esac
done