1Welcome to Heirloom mailx!
2==========================
3
4Mailx is derived from Berkeley Mail and is intended provide the
5functionality of the POSIX mailx command with additional support
6for MIME, IMAP, POP3, SMTP, and S/MIME. It provides enhanced
7features for interactive use, such as caching and disconnected
8operation for IMAP, message threading, scoring, and filtering.
9It is also usable as a mail batch language, both for sending
10and receiving mail.
11
12Until March 2006, this project has been developed under the
13name "nail"; it is integrated into the Heirloom project now.
14The old name will persist at some places. If you were calling
15the program under the name "nail" and want to continue to do
16so, create a symbolic link to the mailx binary.
17
18New releases of mailx are announced on Freshmeat. If you want to get
19notified by email on each release, use their subscription service at
20<http://freshmeat.net/projects/mailx/>.
21
22The project homepage is currently at
23<http://heirloom.sourceforge.net/mailx.html>.
24
25
26How to build
27============
28
29To compile and install mailx, look at the file 'INSTALL'. You can also
30build mailx RPMs using 'rpmbuild -tb mailx-<version>.tar.bz2'.
31
32You should always install the template for the system-wide configuration
33file. If this is not possible because you lack the necessary permissions,
34integrate its contents into your ~/.mailrc. This is because some of the
35built-in defaults are not appropriate anymore for the Unix platforms of
36today, but are still being kept for compatibility.
37
38Mailx has been built successfully in the following environments using
39the current configuration system:
40
41Linux               Kernel 2.0 and above; libc4, libc5, glibc 2.2 and above,
42                    diet libc, uClibc; gcc, Intel C
43Sun Solaris         2.6 and above; Sun C, gcc
44Open UNIX           8.0.0
45FreeBSD             4.9 and above
46HP HP-UX            B.11.11, B.11.23; HP C/ANSI C, gcc
47HP Tru64 UNIX       4.0G, 5.1B; Developers' Toolkit C, gcc
48NetBSD              1.6, 2.0
49IBM AIX             5.1; VisualAge C, gcc
50Cray UNICOS         9.0.2.2
51Control Data EP/IX  2.2.1AA; /svr4/bin/cc
52OpenBSD             3.3
53Apple Darwin        6.8
54Apple Mac OS X      10.2 Server
55NEC UX/4800         Release11.5 Rev.A
56NEC SUPER-UX        10.2
57DragonFlyBSD        1.3.7-DEVELOPMENT
58
59If your system does not appear in this list, just try it out. Whether
60it works or not, you should contact the development list and report the
61results.
62
63But note that I strongly discourage from porting mailx to Windows
64and environments that make Windows look Unix-like; I won't accept any
65patches or suggestions that go in this direction. There are two major
66reasons for this: First, any port makes maintaining harder; there are
67always more work-arounds in the source, and introducing new features
68involves the question whether they will work an all supported platforms.
69The more different a platform behaves from, let's say, the common Unix
70way, the more hacks have to be made, costing human time that could
71otherwise have been used to enhance the software for Unix platforms.
72Windows is just not worth this, and here we are at the second point:
73Porting software to Windows encourages people to use -- that is: to buy
74-- Windows. It supports a company that is known to threaten Open Source
75software like mailx. In short, porting mailx (or similar free software)
76to Windows has an ill effect on that software. Don't do it.
77
78Note that my statement doesn't legally restrict you if you want to port
79mailx to any platform. This would not be the way of free software either,
80especially since I might be wrong in the future; as an example, porting
81free software to mainframes of a certain company is considered a good
82thing today. I just wish to express my opinion as a free software
83developer, and to inform you that I don't maintain such a port.
84
85
86Mailbox formats
87===============
88
89Mailx supports the mbox and maildir mailbox formats.
90
91The mbox format variant based on the 'Content-Length:' header field that
92is used on most SVr4 systems by default is not supported by mailx. As this
93format generally is a design flaw, you should fix your system by either
94using procmail for local mail delivery, which is a good idea anyway, or
95at least add the -E flag to the Mlocal line in /etc/sendmail.cf if using
96/usr/lib/mail.local.
97
98Although it is not bad, just obsolete, similar considerations apply
99to the MMDF format used on OpenServer systems; unless you switch to
100procmail (or contribute support for this format), mailx will not be
101able to read your mailbox there.
102
103
104Questions, suggestions, bug reports
105===================================
106
107Please use the 'nail-devel' mailing list for questions, suggestions,
108or bug reports. This has at least three advantages over contacting me
109directly:
110
1111. Other people can comment on the issue. They might have solved a similar
112   problem, or might be willing to implement improvements.
113
1142. Since all posts are archived, a problem needs to be commented once only,
115   and the answers are readily available on the web then.
116
1173. Unless you had an acceptable reason to contact me directly, I will refuse
118   to give you technical answers by personal mail. Thus if you ignore this
119   advice, you will just have to resend your message to the list.
120
121Also before you send something to the list, make sure that you did the
122following:
123
1241. Check out that you are using a binary made from pristine sources of the
125   latest release. This is particularly important if you received your mailx
126   binaries from a third-party vendor. If you are unwilling to do this for
127   whatever reason, use the support channels of your vendor and avoid abusing
128   the Open Source development model.
129
1302. Check that your issue is not already solved or commented in the existing
131   documentation. This does not only involve reading this file; you also
132   need to look at the manual page and the ChangeLog. After doing that, you
133   need to search the mailing list archive for related topics. Remember that
134   you are spending other people's spare time when you ask questions, and
135   that you just waste it if your question was a superfluous one.
136
1373. If you are reporting a bug, try to reproduce it and include detailed
138   instructions for doing that in your report. If you cannot reproduce the
139   bug, document carefully what you have done before the problem occurred.
140   The more information you provide, the greater are the chances that the
141   bug can be fixed quickly.
142
143Both the contact instructions and the list archive are available at
144<https://lists.sourceforge.net/lists/listinfo/nail-devel>. You need
145to subscribe in order to post to the list.
146
147
148Enjoy!
149
150Gunnar Ritter
151Freiburg i. Br.
152Germany
153<gunnarr@acm.org>                                                 01/03/07
154