build instructions for your operating system. To build nmh, you will
need an ANSI C compiler such as gcc.
-1) Run the command
+1) From the top-level source directory, run the command
- sh configure [options]
+ ./configure [options]
- This will check the configuration of your OS, and create
- the include file config.h, as well as the various Makefiles.
+ This will check the configuration of your OS, and create the
+ include file config.h, as well as the various Makefiles.
- The configure script accepts various options. The options of
- most interest are listed below. To see the list of all available
- options, you can run
+ The configure script accepts various options. The options of
+ most interest are listed in a section below. To see the list
+ of all available options, you can run
- sh configure --help
+ ./configure --help
-2) (IMPORTANT) Edit the user configuration section at the beginning
- of the generated include file `config.h'. Currently, not everything
- is auto-configured, so some #defines must be set manually.
+2) Look through the user configuration section at the beginning
+ of the generated include file `config.h'. You may
+ want to customize some #defines for your environment.
-3) Edit the user configuration section at the top of the main Makefile.
+3) make
-4) make
+4) make install
-5) make install
+ Note that if you have [n]mh files in your install directories with the same
+ names as the files being installed, the old ones will get overwritten without
+ any warning. The only directory that isn't true for is the `etc' directory
+ -- in that directory, the previous copy of each <file> will be backed up as
+ <file>.prev if it differs from the newly-installed copy. Watch for any diff
+ output while make is processing that directory to see if you need to merge
+ changes from *.prev files into the new versions.
-6) Edit the file `mts.conf' (installed in the nmh `etc' directory)
+5) Edit the file `mts.conf' (installed in the nmh `etc' directory)
and make any necessary changes for the mail transport interface
you are using.
injecting the message to a mail transfer agent (such as sendmail)
on the local machine via SMTP.
- If you have enabled POP support and you want this to be the
- default method of accessing new mail, you will need to change
- the values of the variables "servers", "pophost", "localname",
- and possibly "mmailid".
+ If, instead, all your mail sending and receiving occurs on a
+ remote POP/SMTP server, you will need to look at the values of the
+ variables "localname", "pophost", and "servers":
- a) "servers" defines the server to which you send outgoing SMTP
- traffic.
+ a) "localname" defines the hostname that nmh considers local.
+ If not set, then nmh queries your OS for this value. You will
+ want to change this if you wish your e-mail to appear as if it
+ originated on the POP server.
- b) "pophost" defines the server that runs the POP daemon, and to
- which `inc' and `msgchk' will query for new mail.
+ b) "pophost" defines the server that runs the POP daemon, and to
+ which `inc' and `msgchk' will always query for new mail.
- c) "localname" defines the hostname that nmh considers local.
- If not set, then nmh queries your OS for this value. You may
- want to change this if you wish your e-mail to appear as if it
- originated on the POP server.
+ c) "servers" defines the server to which you send outgoing SMTP
+ traffic.
- d) "mmailid" is checked to see if nmh should do username
- masquerading. If the value of this field is non-zero, then
- nmh will check if the pw_gecos field in the password file
- has the form
+ If you compile with POP support, but don't want to use it exclusively,
+ you can use the `-host' and `-user' options to `inc' and `msgchk'
+ rather than hardcoding pophost in `mts.conf'.
- Full Name <fakeusername>
+ Check the `mh-tailor' man page for a list of all the available options
+ for this file ("masquerade" may be of particular interest).
- If the pw_gecos field has this form, then the internal nmh
- routines that find the username and full name of a user will
- return "fakeusername" and "Full Name" respectively. This is
- useful if you wish messages that you send to appear to come
- from the username of your POP account, rather than your username
- on the local machine.
-
- If you compile with POP support, but only want to use it occasionally,
- then you can always use the `-host' and `-user' options to `inc'
- and `msgchk' instead of changing `mts.conf'.
-
- Check the `mh-tailor' man page for a list of all the available
- options for this file.
-
-7) If you have enabled POP support, make sure that `pop3' (or more
+6) If you have enabled POP support, make sure that `pop3' (or more
precisely the value of the define POPSERVICE in config.h) is defined
in the /etc/services file (or its NIS/NIS+ equivalent) on the client
machine. It should be something equivalent to "110/tcp". This might
- have already been done when the pop daemon was installed.
+ have already been done when the POP daemon was installed.
-8) Edit the file `mhn.defaults' (installed in the nmh `etc' directory).
+7) Edit the file `mhn.defaults' (installed in the nmh `etc' directory).
This file contains the default profile entries for the nmh command
`mhn' and is created by the script `mhn.defaults.sh'. This script
will search a generic path (essentially your $PATH) for programs to
want to re-run this script later if you install new programs to
display content. An example of this is:
- cd support/general
- ./mhn.defaults.sh /usr/local/bin:/usr/X11/bin:/usr/ucb > mhn.defaults
+ % cd support/general
+ % ./mhn.defaults.sh /usr/local/bin:/usr/X11/bin:/usr/ucb > mhn.defaults
and then move `mhn.defaults' into the nmh `etc' directory.
--mandir=DIR (DEFAULT is ${prefix}/man)
nmh's man pages are installed here.
---with-mts=MTS (DEFAULT is smtp)
- specify the mail transport system you want to use. The two
- acceptable options are "smtp" (which is the default), and
- "sendmail".
+--enable-debug
+ Enable debugging support.
- If you use "smtp", this will enable a direct SMTP (simple
- mail transport protocol) interface in nmh. When sending
- mail, instead of passing the message to the mail transport
- agent, `post' will open a socket connection to the mail
- port on the machine specified in the `mts.conf' file
- (default is localhost), and speak SMTP directly.
+--enable-masquerade[='draft_from mmailid username_extension']
+ If this option is not specified, the mts.conf file will contain the line
+ "masquerade: " (with no value), which may be manually edited later. You
+ may find it convenient to specify a value at configure-time, however, so
+ that each time nmh is reinstalled, the right value will be there.
- If you use "sendmail", then `post' will send messages by
- passing forking a local copy of sendmail. Currently it
- will still speak SMTP with this local copy of sendmail.
+ The above usage shows all three masquerade options being specified, but any
+ subset of the three may be specified. If you do want to enable all three,
+ you can simply use `configure --enable-masquerade' as a shortcut.
- If you wish to use a transport agent other than sendmail, you will
- need to use a `sendmail wrapper'.
+ See the mh-tailor(5) man page for full documentation of "masquerade:".
+
+--enable-mhe (DEFAULT)
+ Add support for the Emacs front-end `mhe'.
+
+--enable-pop
+ Enable client-side support for pop.
+
+--enable-apop
+ Enable client-side support for apop (Authenticated POP).
--with-editor=EDITOR (DEFAULT is vi)
specify the full path of the default editor to use. If this
nmh command `prompter'. If you specify `prompter', then you don't
need to give the full pathname.
---with-pager=PAGER (DEFAULT is more)
- specify the default pager (file lister) to use. If this option
- is not given, then the configuration process will search for the
- command `more' and use it as the default.
+--with-hesiod=PREFIX
+ Specify the location of Hesiod.
---enable-nmh-mhe (DEFAULT)
- Add support for the Emacs front-end `mhe'.
+--with-krb4=PREFIX
+ Specify the location of Kerberos V4 for KPOP support. After
+ running configure, you will need to change the POPSERVICE #define in
+ config.h if you want to use KPOP exclusively (rather than being able
+ to switch between KPOP and normal POP3). See the comments inside
+ config.h for details.
---enable-nmh-pop
- Enable client-side support for pop.
+--with-mts=MTS (DEFAULT is smtp)
+ Specify the default mail transport system you want to use. The two
+ acceptable options are "smtp" (which is the default), and
+ "sendmail". This value will be put into the mts.conf file. You
+ may find it convenient to specify a value at configure-time,
+ however, so that each time nmh is reinstalled, the right value will
+ be there.
+
+ If you use "smtp", this will enable a direct SMTP (simple mail
+ transport protocol) interface in nmh. When sending mail, instead
+ of passing the message to the mail transport agent, `post' will
+ open a socket connection to the mail port on the machine specified
+ in the `mts.conf' file (default is localhost), and speak SMTP
+ directly.
+
+ If you use "sendmail", then `post' will send messages by forking a
+ local copy of sendmail. Currently it will still speak SMTP with
+ this local copy of sendmail.
---with-krb4=PREFIX
- Specify the location of Kerberos V4 for KPOP support. You will
- also need to specify the option `--enable-nmh-pop'. After running
- configure, you will probably need to change the POPSERVICE define
- in config.h. See the comments inside config.h for details.
+ If you wish to use a transport agent other than sendmail, you will
+ need to use a `sendmail wrapper'.
---with-hesiod=PREFIX
- Specify the location of Hesiod.
+--with-pager=PAGER (DEFAULT is more)
+ Specify the default pager (file lister) to use. If this option
+ is not given, then the configuration process will search for the
+ command `more' and use it as the default.
+
+--with-smtpservers='SMTPSERVER1[ SMTPSERVER2...]' (DEFAULT is localhost)
+ If this option is not specified, the mts.conf file will contain
+ the line "servers: localhost", which may be manually edited later.
+ You may find it convenient to specify a value at configure-time,
+ however, so that each time nmh is reinstalled, the right value will be
+ there.
---enable-nmh-debug
- Enable debugging support.
+ See the mh-tailor(5) man page for full documentation of "servers:".
--
The nmh team