INSTALLING HERMES ================= I recommend that you attempt to read this file from offset 0 to end-of-file ("cover to cover" just doesn't make sense here, does it?) before you install HERMES on your system. The file needs more work, but it will tell you a couple of things you'll want to know. ************************************************************************** I INSIST THAT YOU READ THE FILE "COPYRITE.TXT" (IF YOU HAVEN'T ALREADY) BEFORE READING ANY FURTHER! YOU MAY NOT INSTALL AND USE HERMES WITHOUT READING AND ACCEPTING THE CONTENTS OF THAT FILE! ************************************************************************** To install HERMES, you should have an empty hard disk partition available (one of C: through P:). Installing HERMES on a floppy-disk-only system might work if you only want to exchange e-mail, but working with such a system will be frustrating at best. I recommend 5 MB for a mail-only system, and 10 MB or more if you also want to access the world of Usenet news. You can also use of more than one partition. Your system should have a real-time clock. Furthermore, you will need a shell or command-line interpreter (HUSH.TTP is a simple but sufficient one) and an ASCII text editor (ME, TEMPUS,ELVIS, STEVIE ...). The editor must accept a file name on the commandline, and must be callable from any folder (that excludes WORDPLUS). GEM-based editors might spell trouble; for TEMPUS, a simple shellprogram called TED is provided. All examples in the text assume you have four users on your system (named joe, postmaster, root and server) and two UUCP neighbours (named heaven7 and cloud9), of which only heaven7 is allowed to call in. FOLDERS HERMES requires you to create quite a large number of directories. If you install HERMES on a partition of its own, I recommend you follow a UNIX-like style (okay, it's not all that UNIX-like), shown here for the F: partition: # The HERMES binaries go here: F:\bin # System-specific configuration files: F:\etc # Temporary files and lock files: F:\tmp # Just above everything else: F:\usr # Log files: F:\usr\adm # Other binaries, your own shell scripts, and such F:\usr\bin # F:\usr\lib # Mail routing information: F:\usr\lib\mail # News system configuration files: F:\usr\lib\news # Lock files F:\usr\lock # On-line documentation goes here F:\usr\man # Program maunal pages F:\usr\man\man1 # File format manual pages F:\usr\man\man5 # Files you want to share to the world: F:\usr\public # Everything that comes and goes all by itself: F:\usr\spool # All mail and news go here first: F:\usr\spool\mqueue # The news system will install a tree of folders under here: F:\usr\spool\news # Every UUCP neighbour needs a spool directory of its own: F:\usr\spool\uucp F:\usr\spool\uucp\cloud9 F:\usr\spool\uucp\heaven7 # Public folder for UUCP requests F:\usr\spool\uupublic # F:\usr\users # Every user needs a home folder: F:\usr\users\joe # A MAIL folder keeps incoming mails out of the home folder: F:\usr\users\joe\mail F:\usr\users\postmaster F:\usr\users\postmaster\mail F:\usr\users\root F:\usr\users\root\mail # Nobody needs the server's home folder, so there is no need for a MAIL # folder in this case. F:\usr\users\server If HERMES has to share a partition with other software, you can keep everything under a \HERMES folder. Although the rest of this document assumes you have installed HERMES in the UNIX-like folder structure outlined above, you can move things around to your heart's content. The CONFIG.SYS file, discussed next, tells HERMES where everything else is. If you don't quite get the hang of all the folders, don't worry. Maybe you won't need all of them. DOCUMENTATION FILES You'll see references to other documentation files written as "pathalia(1)" or some such. That means "look at a file named 'pathalia' with any extension in the folder 'man1'". CONFIG.SYS This is the central configuration file that tells HERMES where to find all the stuff it needs, and a lot of other things as well. It must be placed in a folder called either \ETC, \MERCURY (for historical reasons, you guessed it), or \HERMES, either on the current drive or on any drive from C: to P:. Under MiNT, the search will always begin on the "universal" drive, U:. It is simple text file that can be created and maintained with a text editor. It consists of lines in the following format: 0002 "cloud9" # Site name i. e., a four-digit number, a value enclosed in double quotes, and an optional comment after a '#' character. Comment-only lines are allowed, as are blank lines. Many of the lines are optional, and HERMES can sometimes find the values of other lines by itself. Every line has a NAME as well as a NUMBER. If there is an environment variable of the appropriate name, it silently overrides the CONFIG.SYS line (!). If (and only if) values are read from the file (rather than from the environment), they are checked for consistency (e. g. if files and directories exist, etc). The following table lists the CONFIG.SYS lines with their numbers, names, types, if they are mandatory or not, and a sample value. Types are explained after the table, as are the star marks after some of the lines. 2 "SITENAME" Str 1 "mysite" 3 "ORGA" Str 0 "Just my private little system" 4 "DOMAIN" Str 1 ".some.domain" 5 "LOGDIR" Dir 1 "F:\usr\adm" 6 "POSTMASTER" User 1 "postmaster" 9 "PASSWD" File 1 "F:\etc\passwd" * 10 "REDIAL" Num 1 "1" 12 "ACTIVE" File 1 "F:\usr\lib\news\active" 13 "SYSFILE" File 1 "F:\usr\lib\news\sys" 14 "MAILQ" Dir 1 "F:\usr\spool\mqueue" 15 "HOSTS" File 0 "F:\etc\hosts" * 17 "RELAY" Site 1 "cloud9" 18 "NEWSDIR" Dir 1 "F:\usr\spool\news" 19 "DOMAINFILE" File 0 "F:\etc\mydomain" 20 "EDITOR" Prog 1 "F:\bin\ted.ttp" 21 "TEMP" Dir 1 "F:\tmp" 22 "PATHSFILE" File 0 "F:\usr\lib\mail\paths" 27 "SERVER" User 0 "server" 28 "SERVDIR" Dir 0 "F:\usr\public" 102 "STDALIAS" File 0 "F:\usr\lib\mail\alias" 103 "XHOSTS" File 0 "F:\etc\xhosts" * 107 "DOQUEUE" Cmd 0 "F:\bin\hush.ttp F:\etc\doqueue.hsh" 108 "PATH" Path 1 "F:\bin;F:\usr\bin;C:\util" 109 "LOGIN" Cmd 0 "F:\bin\login.ttp -a" 110 "ENVINIT" File 0 "F:\etc\envinit" 111 "TZ" Str 1 "MET" 112 "SPATHS" File 0 "F:\usr\lib\mail\spaths" 113 "MDBS" File 0 "F:\usr\lib\mail\mdbs" 114 "UUCPPUBLIC" Dir 1 "F:\usr\spool\uupublic" 115 "MAILMODE" File 0 "F:\etc\mailmode" * 117 "MANPATH" Path 0 "F:\usr\man" 118 "MIDILOGIN" Cmd 0 "F:\bin\login.ttp -abMIDI" 119 "LOCKDIR" Dir 0 "F:\usr\lock" 120 "SEQF" File 0 "F:\etc\seqf" Check Types: ------------ Str: Can be any string value. No checks performed. Dir: The name of an existing folder. The root folder (of any drive) cannot be used. File: The name of an existing file. If no folder is specified, HERMES looks for the file in the folder where CONFIG.SYS resides. If the value is not present, the name of the value will be used instead (e g if CONFIG.SYS was found in F:\ETC, the assumed name of the password file is F:\ETC\PASSWD). Thus, the lines marked with a star are redundant if CONFIG.SYS is in F:\ETC. Prog: The name of an executable file. If no folder and extension is specified, and the PATH is already set at this point in the file (e g by putting line 0108 before the line with the Prog value), the program will be used on the path, with the extensions .TOS, .TTP, .PRG, and .APP (in that order). If the value is not present, the name of the value will be used instead (e g the editor will be used as "EDITOR.TOS" etc. on the path). Cmd: The name of an executable file, optionally followed by command-line arguments. See Prog above User: The name of user in the PASSWD file (see below). Num: An postive integer number, expressed in decimal. Path: A list of existing folders, separated by either spaces, commas, or semicolons. Site: The name of a site in the XHOSTS file (see below). "Mandatory" doesn't mean you have to put that line into the CONFIG.SYS file, as long as HERMES can find the name of the file or program by following the rules mentioned above. EXPLANATION OF CONFIG.SYS VALUES 2 "SITENAME" The so-called UUCP name of your system. It should consist of one to seven lower-case letters, decimal digits and hyphens, with a letter as the first and a letter or digit as the last character. These are rather strict rules. You'll be on the safe side of you adhere to them, but other names may work just as well. If possible, use a unique name for your site. Ask a local guru how to find out if your name is unique. 3 "ORGA" An optional description of your organization (if any). You can also use a funny organization name if you like, but remember that jokes get stale over time. 4 "DOMAIN" Your domain. The complete name of your site is formed by appending this value to the site name from line #2. Use ".uucp" if you don't have a domain. 5 "LOGDIR" A folder where all the log files go. Look at them regularly, or at least delete them regularly, else they take up all your disk space. 6 "POSTMASTER" The name of the local user that gets all mail about mailing problems. You can use your own login name, but I recommand a separate account. The user named here receives all mail addressed to "postmaster", no matter her login name is. 9 "PASSWD" The list of all local users. See passwd(5) for details. 10 "REDIAL" The number of times UUCICO will re-dial a number if the line is busy. 12 "ACTIVE" The list of all newsgroup that you tolerate on your site. See the separate file "man5/active" for details. 13 "SYSFILE" The list of all sites you will be sending news to, and what news. See sys(5) for details. 14 "MAILQ" The folder where every mail (and news article) is put first. This folder is written to by MMAIL and UUCICO, and read from by RSMTP, RMAIL and RNEWS. 15 "HOSTS" This file is written from the XHOSTS file (see hosts(5)). If you don't use other UUCP software, don't keep a file names "HOSTS" in your configuration folder, and don't put this line in your CONFIG.SYS file. 17 "RELAY" The neighbouring site that gets all the mail for sites that are not included in your PATHS or MDBS file (if any). If you don't name a relay host, such mail will fail. If you have only one neighbour, put it's name here. 18 "NEWSDIR" All news articles live in the folder tree that gets built here by RNEWS and NHM. Keep your hands off this folder (apart from maintaining the file EXPIRE.DEF that also lives here)! 19 "DOMAINFILE" This is a text file that contains the names of all domains you're in, one per line, each including the period. 20 "EDITOR" Your favourite text editor. If you use TEMPUS, use the shell program TED that is part of the HERMES distribution. 21 "TEMP" A folder for temporary files and lock files. Check regularly for forgotten files. 22 "PATHSFILE" Mail route database, normally built by PATHALIA (in UNIX, this program is called "pathalias", but that's nine characters) from map data. See pathalia(1) for details. 27 "SERVER" If you use the program FILESERV to implement a mail file server, you need this line to tell FILESERV to which local mailbox requests are mailed. Must be included in the PASSWD file. 28 "SERVDIR" If you use FILESERV, the FILESERV.INF (see fileserv(1)) file lives here. Normally, you would put all the stuff the server can send out somewhere in this folder or sub-folders. 102 "STDALIAS" A text file that contains mail aliases that are available to all users on the system. Each line holds one alias, with the alais name at the beginning, followed by white space, followed by the full mail address. See mmail(1). 103 "XHOSTS" The hosts database. Description in xhosts(5). 107 "DOQUEUE" Normally, the name of a shell (e g, HUSH) and a script file that the shell is to run to process files in the MAILQ folder. This script should at least include RSMTP, RMAIL, RNEWS, and (if you use it) FILESERV. 108 "PATH" A list of folders where binary programs reside. Same as for any run-of-the-mill command-line interpreter. 109 "LOGIN" If you want your site to be "pollable" (allow other computers to call your computer), UUWORK needs to know what proram to call once a connection to the calling modem is established. Usually, the HERMES program LOGIN is called with the option "-a", maybe also "-b AUX" or "-i". See login(1) and uuwork(1). 110 "ENVINIT" This text file contains line of the form "NAME=value". These lines are copied into the environment when the CONFIG.SYS file is read. A convenient way to set configuration parameters for other software. 111 "TZ" Your local timezone. You must change this value every time your set your system's real time clock (you'll need one!) to daylight- saving time (or back to normal time). 112 "SPATHS" The FILESERV program can make use of a separate PATHS file (this one). The idea is to limit access to the server to users on sites listed here (but that can be easily circumvented), or to keep the server from using fast but expensive links. 113 "MDBS" Binary form of the PATHS file, written by the MDBS program (see mdbs(1) and rmail(1)). Much faster to use and usually smaller than the PATHS file itself. 114 "UUCPPUBLIC" If you offer anonymous UUCP, or want to request files from your UUCP neighbours, you'll need this folder (see UUCICO(1)). 115 "MAILMODE" A text file that tells BATCHMAI how to prepare mail for your neighbours. You need this file for sending batched SMTP mail (see batchmai(1)). 117 "MANPATH" A list of folders with on-line documentation. See man(1). 118 "MIDILOGIN" Same as line #109, but called when characters (at least two of them in short succession) arrive at the MIDI port. See login(1) and uuwork(1). 119 "LOCKDIR" A directory where lock files are maintained. If you don't specify one, the TEMP directory (#21) is used. If you do, you can safely have TEMP point to a RAM disk. 120 "SEQF" Just a very small file that helps HERMES keep track of what temporary file names have already been generated. When you install HERMES, you should supply a file that consists of a single line "0" (without the quotes).