INSTALLING UTMOST
-----------------

In this directory you will find the following files:

    documentation/
    es.code/
    include/
    menu.code/
    menus/
    stand.appt
    utmost*

documentation/ is the directory containing 2 manual pages to be installed
in /usr/man/man1. These files are menu.1 and utmost.1. Also in  this
directory are an overview document for the rand editor and a README file
for the first time utmost user. These should be left as is.

es.code/ contains the source, sccs, makefiles, and executable images of
the executive support software. There is a sub-directory of subroutines which
are common to exec support and a separate sub-directory of the executable
images (exec.dir). For both the subroutines and the exec support main
programs, there are sub-directories named source_sccs which contain the
sccs control for this release (2.1). what strings are included in each
module. Of special interest is the "susact" program which is a setuid
program which runs as the super user and accesses everybody's suspense and
dolist files to update them. There is also an "appact" program similar
to "susact" whose function is to delete expired appointments from the
users appointments directory. These should be run once a day, preferably off
the clock. To do this, modify /usr/lib/crontab to include the following
entry:

0 1 * * *  BASE/utmost/es.code/exec.dir/susact  2>>/usr/adm/susact.log
0 2 * * *  BASE/utmost/es.code/exec.dir/appact  2>>/usr/adm/appact.log

where BASE is the base directory where utmost is installed.
Susact and appact must be owned by root as well.


includes/ is the directory containing the include file used in compilation
of the utmost source.

menu.code/ is the directory containing the menu-driver code and sccs
source code

menus/ is a directory which contains all the utmost system menus and help
files

stand.appt is a data file used by the executive support appointment
software to format some of its output

utmost* is an example shell file which should be modified to fit your
installation parameters and installed in /bin/utmost or other area
accessible by the users. It looks like this:

UCB=/usr/ucb
RAND=/usr/local
BASE=/u/jan/utmost
MENU=$BASE/menu.code/menu
APPTIMES=$BASE/stand.appt
MENUDIR=$BASE/menus
EXECDIR=$BASE/es.code/exec.dir
PG=$UCB/more
DISPWIN=$EXECDIR/dispwin
UTDOC=$BASE/documentation
NL="
"
export MENU MENUDIR EXECDIR PG UTDOC NL APPTIMES UCB RAND
umask 0
exec $MENU $MENUDIR/main </dev/tty

UCB is an environment variable which points to the location of the
Berkely software used by the various menus.

RAND is the directory containing the RAND mail handler and news software.

BASE is an environment variable which should point to the base of the
installed utmost software

MENU points to the menu-driver program

APPTIMES points to the stand.appt file mentioned above

MENUDIR points to the menu directory

EXECDIR points to the executive support executable code images

PG is the name of the screen paging program

DISPWIN is the name of a program which displays certain UTMOST
Executive Support items (appointments, dolists) in a table-like format
allowing both horizontal and vertical scrolling. The "dispwin" program
provided uses the UCB Curses package for its screen management. If you
are running on a Perkin-Elmer processor then you can use this program
in its executable form. If you are on a non-P-E machine then you must
have access to "curses" and "termcap" from the UCB Unix sofware
distribution. You can also supply your own program and assign its name
to the DISPWIN environment variable. Your program should have the following
functionality:

	- reads from a pipe
	- records are separated by newlines...fields are separated by
	  colons
	- the first record is a table title record
	- subsequent records are data records
	- records/fields are variable length
	- fields/records may exceed physical screen size

Feel free to look at our "dispwin" which uses "curses" to see how we
did it.


UTDOC points to the utmost documentation


Normally, you should be able to install utmost by simply changing the
BASE variable.

Other environment variable the user should have set up in the .profile or
.cshrc file are:

setenv PATH .:/usr/local:/usr/bin:/bin:/usr/ucb
setenv PROGPATH /bin/le  <rand editor>
setenv USER <user-id>
setenv EKBFILE /etc/e/ekb/po.kb.djp    <rand editor keyboard definitions>
setenv SHELL /bin/csh
setenv TERM po


MENU NOTES
----------

This version of UTMOST has a set of pre-defined menus which assume certain
things such as the use of the RAND Editor, Mail Handler, and bulletin
board system. If you do not have these things then you will have to
modify the menus to reflect what you DO have. Read the menu creation
guidelines in the documentation section.

If you are using the standard Unix manual command (man) then you may
have to modify the menus that call "man". Our internal version uses
the UCB "man" command which is an actual binary program. The standard
Unix "man" command may be a shell script. Read the menu creation
guidelines to find out how to interface shell scripts to UTMOST.

The word processing format menu "wd.format" interfaces with the standard
Unix spooler for V7 "lpr". You may have to change this for different
Unix versions or to add spooling for letter quality printers. The "wd.format"
menu runs "nroff" with the "ms" macro package. Again, you can change
this by modifying the menu.
