.\" @(#)$Id: Config.guid,v 4.1 90/04/28 22:41:00 syd Exp $
.\"
.\"  A guide to the ELM alias system and so on.
.\"  format with:
.\"      'troff tmac.n Config.guid > Config.fmtd'
.\"
.\"  (C) Copyright 1986, 1987 Dave Taylor
.\"  (C) Copyright 1988, 1989, 1990 Usenet Community Trust
.\"  Elm is now in the public trust. Bug reports, comments, suggestions, flames
.\"  etc. should go to:
.\"	Syd Weinstein		elm@DSI.COM (dsinc!elm)
.\"
.\"  $Log:	Config.guid,v $
.\" Revision 4.1  90/04/28  22:41:00  syd
.\" checkin of Elm 2.3 as of Release PL0
.\" 
.\"
.tm Have we been run through "tbl" first?? I hope so!
.po 1i
.ds h0
.ds h1
.ds h2
.ds f0
.ds f1
.ds f2
.nr Hy 1
.nr Pt 1
.nr Pi 0
.lg 0
.nf
.na
.rs
.za
.sp |3.0i
.ce 99
.ps 20
\f3Elm Configuration Guide\f1
.sp 4
.ps 12
.ss 14
.vs 14
\f2How to install and customize the Elm mail system\f1
.sp 2
Dave Taylor
.sp
Hewlett-Packard Laboratories
1501 Page Mill Road
Palo Alto CA
94304
.sp 3
email: taylor\s-1@\s+1hplabs.HP.COM  or  hplabs\s-1!\s+1taylor
.sp 3
>>> Elm is now in the public trust. Bug reports, comments, etc. to: <<<
.sp
Syd Weinstein
Datacomp Systems, Inc.
3837 Byron Road
Huntingdon Valley, PA 19006-2320
.sp
email: elm\s-1@\s+1DSI.COM  or  dsinc\s-1!\s+1elm
.sp 3
.ps 18
\f3\(co\f1\s12 Copyright 1986,1987 by Dave Taylor
.ps 18
\f3\(co\f1\s12 Copyright 1988, 1989, 1990 by The USENET Community Trust
.ps 10
.ss 12
.vs 12
.fi
.ad
.bp 1
.sv 5v
.ps 14
\f3Elm Configuration Guide\f1
.ds h0 "Elm Configuration Guide
.ds h1
.ds h2 "Version 2.3
.ds f0 "May 1, 1990
.ds f1 "Page %
.sp
.ps 10
(Version 2.3)
.sp 2
Dave Taylor
.sp
Hewlett-Packard Laboratories
1501 Page Mill Road
Palo Alto CA
94304
.sp 
email: taylor\s-1@\s+1hplabs.HP.COM  or  hplabs\s-1!\s+1taylor
.sp 2
>>> Elm is now in the public trust. Bug reports, comments, etc. to: <<<
.sp
.sp
Syd Weinstein
Datacomp Systems, Inc.
3837 Byron Road
Huntingdon Valley, PA 19006-2320
.sp
email: elm\s-1@\s+1DSI.COM  or  dsinc\s-1!\s+1elm
.sp 2
May 1, 1990
.ce 0
.sp 3
.pg
This document is intended as a supplement to the \f2Elm Users Guide\f1
and \f2Elm Reference Guide\f1
and should be of interest mainly to people at a site either installing
or maintaining the source code to the \f3Elm\f1 mail system, or
modifying the code.
.sp 
It is \f2required\f1 that installation be done by using the
\f2Configure\f1 script supplied with the system.  Please see the
file \f2Instruct\f1 for further information on running \f2Configure\f1.
.sp
The remainder of this document will discuss the various questions
asked by the \f2Configure\f1 script and the
options available via direct editing of various files and
parameters.  As indicated above, almost all of the sites that install
\f3Elm\f1 should find the \f2Configure\f1 script more than
sufficient.
.hu Using Configure
.pg
\f2Configure\fP is a shell script that will automatically determine the
type of system it is running on and tune the parameters of Elm to fit
that system and its environment.  Where the installer has a choice, it
asks questions of the installer.  \f2Configure\fP provides its own
instructions when run, so they are not repeated here.  However, when
the installer is presented with a choice, this next section explains
some of the options available.  Not all the questions or options to
those questions are explained.
.sp 2
.pg
Enable calendar feature?
.sp
Elm has a feature to take specially marked lines within mail messages
and add them to a file for use by the system calendar program.  The
command to do this extraction needs to be enabled to work.  There is
also a follow on question regarding the name of the calendar file:
.pg
Default calendar file?
.sp
which is usually calendar on most systems.  This file will reside in the
users home directory, not their .elm directory.
.pg
Does your /etc/passwd file keep full names in Berkeley/V7 format (name
first thing after ':' in GCOS field)?
.sp
Elm uses the full name from the password file if it is available.
There are two major ways this name is stored.  Berkeley/V7 systems
place the name as the entire GCOS field string, that is it starts
directly after the ':' that delimits the fields.  USG
.ux " Systems" (
Group, or AT&T) systems put the users name after a department number
and separate it from that number by a '-'.  The end of the users full
name in these systems is a '('.  Look at your /etc/password file and if
either version applies, answer yes to that version.  If neither
applies, answer no.  Elm can still get the users name from the
".fullname" file in their home directory.
.pg
Every now and then someone has a (gethostname, uname) that lies about
the hostname but can't be fixed for political or economic reasons.
Would you like to pretend (gethostname, uname) isn't there and maybe
compile in the hostname?
.sp
Elm needs to know the correct name of the host on which it is executing
to be able to create the proper headers for the outbound mail.  Some systems
use one name for uucp and another name for the system and others just don't
reply to the subroutines with the proper name.  In this case it will be
necessary to compile in the name.  In all other cases this should not
be needed.  It is provided just in case there is a problem with your
system.
.pg
Does your mailer understand INTERNET addresses?
.sp
Elm will work with systems that can process the `@' character of INTERNET
format addresses or with the `!' format of uucp addresses.  If your
mail delivery agent understands the `@' format addresses, they should be
used and this question is answered yes.  If when you send mail with the
`@' format addresses (such as elm@dsi.com), they bounce, then answer this
question no.
.pg
Am I going to be running as a setgid program?
.sp
On USG type systems and many other types,
access to the mailboxes and the mailbox directory
is via the group permissions.  The mail user agents, such as Elm, need
write access into this directory to be able to move the mailbox around
due to internal editing and to create lock files.  If the permissions
on your mailbox directory are drwxrwxr-x, then Elm needs to be a setgid
program.
.pg
What is the default editor on your system?
.sp
If no editor is specified in the users \f2.elm/elmrc file,\f1 this is which
editor to use.  The editor is used to compose outbound mail messages.
.pg
What pager do you prefer to use with Elm?
.sp
This is the standard pager to use for reading messages.
Besides the usual system pagers, two Elm specific internal options
exist: builtin and builtin+.  The built-in pager is faster to execute
but much less flexible than the system provided pagers.  The + version
just clears the page before displaying the next page.  Otherwise the
two versions are identical.
.hu Other Configurable Parameters
.pg
The following parameters rarely need to be changed, but are provided if
you need them.  \f2Configure\fP does not prompt for their values.  To
change them, edit the \f2hdrs/sysdefs.h\f1 file directly after running
Configure.
.lp FIND_DELTA 1.0i
This is the delta that the binary search of the pathalias database
will use to determine when it's slicing up a single line, rather than
a multitude of lines.   Ideally, this should be set to 1 byte less
than the shortest line in the file...the default is 10 bytes.
.lp MAX_IN_WEEDLIST 1.0i
The maximum number of headers that can be specified in the weedout
list of the \f2.elm/elmrc\f1 file.  A suggested alternative approach if this
number is too small is to specify initial substrings in the file
rather than increasing the number.  For example, say you want to 
weedout the headers ``Latitude:'' and ``Latitudinal-Coords:'', you
could simply specify ``Latitud''" and match them both!  Furthermore
you could also specify headers like ``X-'' and remove all the user
defined headers!
.lp MAX_HOPS 1.0i
When replying to a G)roup, this is the maximum number of hops that
a message can have taken.  This is used to try to optimize the 
return address (remove cyclic loops and so on) and regular use
should show that the default of 35 is plenty more than you'll
ever need!
.lp system_text_file 1.0i
This is the source text file for the system level aliases.
See either the \f2newalias(1L)\f1 man page, or \f2The Elm
Alias System Users Guide\f1 for further details.
.lp system_hash_file 1.0i
This is the file that contains the hashed version of the system 
aliases.  
.lp system_data_file 1.0i
This is the other file the \f2newalias\f1 command installs in the system
alias area and contains the actual addresses for each of the aliases
contained in the hashed data file.
.lp ALIAS_TEXT 1.0i
This is where the individual users alias text file lives.
.lp ALIAS_HASH 1.0i
Where the hashed aliases are stored,
.lp ALIAS_DATA 1.0i
and where the alias address data itself is kept.
.lp DEBUGFILE 1.0i
The name of the file to put in the users home directory if they choose to
use the `-d' debug option. 
.lp OLDEBUG 1.0i
The name of the file to save the previous debug output as.  (this feature
was added to ensure that users wanting to mail bug reports wouldn't 
automatically overwrite the debug log of the session in question)
.lp temp_lock_dir 1.0i
Directory for lock files for XENIX.
.lp temp_file 1.0i
Temporary file for sending outbound messages.
.lp temp_form_file 1.0i
A place to store temporary forms (for Forms Mode) while answering them.
.lp temp_mbox 1.0i
Place to keep copy of incoming mailbox to avoid collisions with newer
mail.
.lp temp_print  1.0i
File to use when creating a printout of a message.
.lp temp_edit 1.0i
File to use when editing the mailbox file on XENIX.
.lp temp_uuname 1.0i
Where to redirect output of the \f2uuname(1M)\f1 command.
.lp mailtime_file 1.0i
File to compare date to to determine if a given message is New
since the last time the mail was read or not.
.lp readmsg_file 1.0i
File to use when communicating with the \f2readmsg\f1 program (see
that program for more information)
.lp smflags  1.0i
Defines the flags to hand to \f2sendmail\f1 if and when the program
chooses to use it.
.lp smflagsv 1.0i
Defines the flags to hand to \f2sendmail\f1 in verbose voyuer mode.
.lp mailer 1.0i
If you don't have \f2sendmail\f1, this is the mailer that'll be used.
.lp helpfile 1.0i
The help file name prefix.
.lp ELMRC_INFO 1.0i
The file containing textual messages associated with each
\f3Elm\f1 variable setting in the users \f2``.elm/elmrc''\f1
file.  This is used when the user chooses to auto-save the
options from within the main program.
.lp elmrcfile 1.0i
The name of the automatic control file within the \f2.elm\f1
directory. (currently \f2elmrc\f1)
.lp old_elmrcfile 1.0i
When a new elmrc file is saved, the old one is also saved, being
renamed to whatever this identifier is set to.
.lp mailheaders  1.0i
The name of the optional file that users may have that will be
included in the headers of each outbound message.
.lp dead_letter 1.0i
If the user decides not to send a message it will instead be saved
to this filename in their home directory.
.lp unedited_mail 1.0i
In the strange case when the mailer suddenly finds all the directories
it uses shut off (like \f2/usr/mail\f1 and \f2/tmp\f1) 
then it'll put the current
mailbox into this file in the users home directory.
.lp newalias 1.0i
How to install new aliases..(note: you MUST have the '-q' flag!)
.lp readmsg 1.0i
What the \f2readmsg(1L)\f1 program is installed as.
