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