]> Pileus Git - ~andy/fetchmail/blob - indexgen.sh
Improve processing of truncated messages.
[~andy/fetchmail] / indexgen.sh
1 #!/bin/sh
2 #
3 # indexgen.sh -- generate current version of fetchmail home page.
4 #
5 goldvers="6.1.0"
6 goldname="6.1.0"
7 version=`sed -n <Makefile.in "/VERSION *= */s/VERSION *= *\([^  ]*\)/\1/p"`
8 date=`date "+%d %b %Y"`
9
10 set -- `timeseries | grep -v "[%#]" | head -1`
11 subscribers=$4
12 make fetchmail
13 set -- `ls -ks fetchmail`
14 fetchmailsize=$1
15 set -- `(cd /lib; ls libc-*)`
16 glibc=`echo $1 | sed 's/libc-\(.*\)\.so/\1/'`
17 glibc="glibc-$glibc"
18
19 rm -f index.html
20
21 # Compute MD5 checksums for security audit
22 rm -f checksums
23 for file in fetchmail-$version.tar.gz fetchmail-$version-1.i386.rpm fetchmail-$version-1.src.rpm
24 do 
25     md5sum $file >>checksums
26 done
27
28 if [ $version != $goldvers ]
29 then
30     for file in /usr/src/redhat/SOURCES/fetchmail-$goldvers.tar.gz /usr/src/redhat/RPMS/i386/fetchmail-$goldvers-1.i386.rpm /usr/src/redhat/SRPMS/fetchmail-$goldvers-1.src.rpm
31     do
32         md5sum $file | sed -e "s: .*/:  :" >>checksums
33     done
34 fi
35
36 # Cryptographically sign checksums 
37 su esr <<EOF
38 gpg --clearsign checksums
39 mv checksums.asc checksums
40 gpg --detach-sign --armor fetchmail-$version.tar.gz
41 EOF
42
43 cat >index.html <<EOF
44 <?xml version="1.0" encoding="ISO-8859-1"?>
45 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
46     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
47 <html xmlns="http://www.w3.org/1999/xhtml">
48 <head>
49 <title>Fetchmail Home Page</title>
50 <link rev=made href=mailto:esr@snark.thyrsus.com />
51 <meta name="description" content="The fetchmail home page." />
52 <meta name="keywords" content="fetchmail, POP, POP3, IMAP, IMAP2bis, IMAP4, IMAP4rev1, ETRN, OTP, RPA" /> 
53 </head>
54 <body>
55 <table width="100%" cellpadding=0 summary="Canned page header"><tr>
56 <td width="30%">Back to
57 <a href="http://$WWWVIRTUAL/~esr/software.html">Software</a>
58 <td width="30%" align=center>Up to <a href="http://$WWWVIRTUAL/~esr/sitemap.html">Site Map</a>
59 <td width="30%" align=right>$date
60 </tr></table>
61 <hr />
62 <center>
63 <table border="10" summary="framed fetchmail logo">
64 <tr>
65 <td>
66 <center><img src="bighand.png" alt="fetchmail logo" /></center>
67 </td>
68 </tr>
69 </table>
70 <h1>The fetchmail Home Page</h1>
71 </center>
72
73 <p><b>Note: if you are a stranded fetchmail.com user, we're sorry but
74 we have nothing to do with that site and cannot help you.  It's just an
75 unfortunate coincidence of names.</b></p>
76
77 <h1>What fetchmail does:</h1>
78
79 <p>Fetchmail is a full-featured, robust, well-documented
80 remote-mail retrieval and forwarding utility intended to be used over
81 on-demand TCP/IP links (such as SLIP or PPP connections). It supports
82 every remote-mail protocol now in use on the Internet: POP2, POP3,
83 RPOP, APOP, KPOP, all flavors of <a
84 href="http://www.imap.org">IMAP</a>, ETRN, and ODMR. It can even
85 support IPv6 and IPSEC.</p>
86
87 <p>Fetchmail retrieves mail from remote mail servers and forwards it via
88 SMTP, so it can then be read by normal mail user agents such as <a
89 href="http://www.mutt.org/">mutt</a>, elm(1) or BSD Mail.
90 It allows all your system MTA's filtering, forwarding, and aliasing
91 facilities to work just as they would on normal mail.</p>
92
93 <p>Fetchmail offers better security than any other Unix remote-mail
94 client.  It supports APOP, KPOP, OTP, Compuserve RPA, Microsoft NTLM,
95 and IMAP RFC1731 encrypted authentication methods including CRAM-MD5
96 to avoid sending passwords en clair. It can be configured to support
97 end-to-end encryption via tunneling with <a
98 href="http://www.openssh.com/">ssh, the Secure Shell</a>.</p>
99
100 <p>Fetchmail can be used as a POP/IMAP-to-SMTP gateway for an entire DNS
101 domain, collecting mail from a single drop box on an ISP and
102 SMTP-forwarding it based on header addresses. (We don't really
103 recommend this, though, as it may lose important envelope-header
104 information.  ETRN or a UUCP connection is better.)</p>
105
106 <p>Fetchmail can be started automatically and silently as a system daemon
107 at boot time.  When running in this mode with a short poll interval,
108 it is pretty hard for anyone to tell that the incoming mail link is
109 not a full-time "push" connection.</p>
110
111 <p>Fetchmail is easy to configure.  You can edit its dotfile directly, or
112 use the interactive GUI configurator (fetchmailconf) supplied with the
113 fetchmail distribution.  It is also directly supported in linuxconf
114 versions 1.16r8 and later.</p>
115
116 <p>Fetchmail is fast and lightweight.  It packs all its standard
117 features (POP3, IMAP, and ETRN support) in ${fetchmailsize}K of core on a
118 Pentium under Linux.</p>
119
120 <p>Fetchmail is <a href="http://www.opensource.org">open-source</a>
121 software.  The openness of the sources is your strongest possible
122 assurance of quality and reliability.</p>
123
124 <h1>Where to find out more about fetchmail:</h1>
125
126 <p>See the <a href="fetchmail-features.html">Fetchmail Feature List</a> for more
127 about what fetchmail does.</p>
128
129 <p>See the on-line <a href="fetchmail-man.html">manual page</a> for
130 basics.</p>
131
132 <p>See the <a href="fetchmail-FAQ.html">HTML Fetchmail FAQ</a> for
133 troubleshooting help.</p>
134
135 <p>See the <a href="design-notes.html">Fetchmail Design Notes</a>
136 for discussion of some of the design choices in fetchmail.</p>
137
138 <p>See the project's <a href="todo.html">To-Do list</a> for indications
139 of known problems and requested features.</p>
140
141 <h1>How to get fetchmail:</h1>
142
143 <p>You can get any of the following leading-edge resources here:</p>
144 <ul>
145 <li> <a href="fetchmail-$version.tar.gz">
146         Gzipped source archive of fetchmail $version</a>
147 <li> <a href="fetchmail-$version-1.i386.rpm">
148         Intel binary RPM of fetchmail $version (uses $glibc)</a>
149 <li> <a href="fetchmail-$version-1.src.rpm">
150         Source RPM of fetchmail $version</a>
151 </ul>
152
153 <p>The <a href="fetchmail-$version.tar.gz.asc">detached GPG
154 signature</a> for the binary tarball can be used to check it for
155 correctness, with the command</p>
156
157 <pre>
158 gpg --verify fetchmail-$version.tar.gz.asc fetchmail-$version.tar.gz
159 </pre>
160
161 <p>MD5 <a href="checksums">checksums</a> are available for these files; the
162 checksum file is cryptographically signed and can be verified with the
163 command:</p>
164
165 <pre>
166 gpg --verify checksums.asc
167 </pre>
168
169 EOF
170
171 if [ $version != $goldvers ]
172 then
173     cat >>index.html <<EOF
174
175 <p>Or you can get the last \`gold' version, $goldname:</p>
176 <ul>
177 <li> <a href="fetchmail-$goldvers.tar.gz">
178         Gzipped source archive of fetchmail $goldname</a>
179 <li> <a href="fetchmail-$goldvers-1.i386.rpm">
180         Intel binary RPM of fetchmail $goldname (uses glibc)</a>
181 <li> <a href="fetchmail-$goldvers-1.alpha.rpm">
182         Alpha binary RPM of fetchmail $goldname (uses glibc)</a>
183 <li> <a href="fetchmail-$goldvers-1.src.rpm">
184         Source RPM of fetchmail $goldname</a>
185 </ul>
186
187 <p>The <a href="fetchmail-$goldvers.tar.gz.asc">detached GPG
188 signature</a> for the binary tarball can be used to check it for
189 correctness, with the command</p>
190
191 <pre>
192 gpg --verify fetchmail-$goldvers.tar.gz.asc fetchmail-$goldvers.tar.gz
193 </pre>
194
195 <p>For differences between the leading-edge $version and gold $goldname versions,
196 see the distribution <a href="NEWS">NEWS</a> file.</p>
197 EOF
198 fi
199
200 cat >>index.html <<EOF
201 <p>(Note that the binary RPMs don't have the POP2, OTP, IPv6, Kerberos,
202 GSSAPI, Compuserve RPA, Microsoft NTLM, or GNU gettext
203 internationalization support compiled in.  To get any of these you
204 will have to build from sources.)</p>
205
206 <p>The latest version of fetchmail is also carried in the 
207 <a href="http://metalab.unc.edu/pub/Linux/system/mail/pop/!INDEX.html">
208 Metalab remote mail tools directory</a>.</p>
209
210 <h1>Getting help with fetchmail:</h1>
211
212 <p>There is a fetchmail-friends list for people who want to discuss
213 fixes and improvements in fetchmail and help co-develop it.  It's a
214 MailMan list, which you can sign up for at <a
215 href="http://lists.ccil.org/mailman/listinfo/fetchmail-friends">
216 fetchmail-friends@ccil.org</a>.  There is also an announcements-only
217 list, <a
218 href="http://lists.ccil.org/mailman/listinfo/fetchmail-announce">
219 fetchmail-announce@lists.ccil.org</a>.</p>
220
221 <p>Note: before submitting a question to the list, <strong>please read
222 the <a href="fetchmail-FAQ.html">FAQ</a></strong> (especially item <a
223 href="fetchmail-FAQ.html#G3">G3</a> on how to report bugs).  We
224 tend to get the same three newbie questions over and over again.  The
225 FAQ covers them like a blanket.</p>
226
227 <p>Fetchmail was written and is maintained by <a
228 href="../index.html">Eric S. Raymond</a>.  There are some designated
229 backup maintainers (<a href="mailto:funk+@osu.edu">Rob Funk</a>, <a
230 href="http://www.dallas.net/~fox/">David DeSimone aka Fuzzy Fox</a>,
231 <a href="mailto:imdave@mcs.net">Dave Bodenstab</a>).  Other backup
232 maintainers may be added in the future, in order to ensure continued
233 support should Eric S.  Raymond drop permanently off the net for any
234 reason.</p>
235
236 <h1>You can help improve fetchmail:</h1>
237
238 <p>I welcome your code contributions.  But even if you don't write code,
239 you can help fetchmail improve.</p>
240
241 <p>If you administer a site that runs a post-office server, you may be
242 able help improve fetchmail by lending me a test account on your site.
243 Note that I do not need a shell account for this purpose, just a 
244 maildrop.  Nor am I interested in collecting maildrops per se --
245 what I'm collecting is different <em>kinds of servers</em>.</p>
246
247 <p>Before each release, I run a test harness that sends date-stamped 
248 test mail to each site on my regression-test list, then tries to
249 retrieve it.  Please take a look at my <a href="testservers.html">
250 list of test servers</a>.  If you can lend me an account on a kind
251 of server that is <em>not</em> already on this list, please do.</p>
252
253 <h1>Who uses fetchmail:</h1>
254
255 <p>Fetchmail entered full production status with the 2.0.0 version in
256 November 1996 after about five months of evolution from the ancestral
257 <code>popclient</code> utility. It has since come into extremely wide use
258 in the Internet/Unix/Linux community.  The Red Hat, Debian and
259 Suse Linux distributions and their derivatives all include it.  A
260 customized version is used at Whole Earth 'Lectronic Link. Several
261 large ISPs are known to recommend it to Unix-using SLIP and PPP
262 customers.</p>
263
264 <p>Somewhere around a thousand people have participated on the fetchmail
265 beta lists (at time of current release there were $subscribers on the
266 friends and announce lists).  While it's hard to count the users of
267 open-source software, we can estimate based on (a) population figures
268 at the WELL and other known fetchmail sites, (b) the size of the
269 Linux-using ISP customer base, and (c) the volume of fetchmail-related
270 talk on USENET.  These estimates suggest that daily fetchmail users
271 number well into the hundreds of thousands, and possibly over a million.</p>
272
273 <h1>The sociology of fetchmail:</h1>
274
275 <p>The fetchmail development project was a sociological experiment as well
276 as a technical effort.  I ran it as a test of some theories about why the
277 Linux development model works.</p>
278
279 <p>I wrote a paper, <a
280 href="http://www.tuxedo.org/~esr/writings/cathedral-bazaar/">The
281 Cathedral And The Bazaar</a>, about these theories and the project.
282 I developed the line of analysis it suggested in two later essays.
283 These papers became quite popular and (to my continuing astonishment) may
284 have actually helped change the world.  Chase the title link, above,
285 for links to all three papers.</p>
286
287 <p>I have done some analysis on the information in the project NEWS file.
288 You can view a <a href="history.html">statistical history</a> showing
289 levels of participation and release frequency over time.</p>
290
291 <h1>Recent releases and where fetchmail is going:</h1>
292
293 <p>Fetchmail is now sufficiently stable and effective that I'm getting
294 very little pressure to fix things or add features.  Development has
295 slowed way down, release frequency has dropped off, and we're
296 basically in maintainance mode.</p>
297
298 <p>Major changes or additions therefore seem unlikely until there are
299 significant changes in or additions to the related protocol RFCs.</p>
300
301 <h1>Where you can use fetchmail:</h1>
302
303 <p>The fetchmail code was developed under Linux, but has also been
304 extensively tested under 4.4BSD, SunOS, Solaris, AIX, and NEXTSTEP.  It
305 should be readily portable to other Unix variants (it requires only
306 POSIX plus BSD sockets, and uses GNU autoconf).</p>
307
308 <p>Fetchmail is supported only for Unix by its official maintainers.
309 However, it is reported to build and run correctly under BeOS,
310 AmigaOS, Rhapsody, and QNX as well.  There is a CygWin port.</p>
311
312 <h1>Related resources:</h1>
313
314 <p>Jochen Hayek is developing a set of
315 <a href="http://www.ACM.org/~Jochen_Hayek/JHimap_utils/">
316 IMAP tools in Python</a> that read your .fetchmailrc file and are
317 designed to work with fetchmail.   Jochen's tools can report selected
318 header lines, or move incoming messages to named mailboxes based on
319 the contents of headers.</p>
320
321 <p>Donncha O Caoihm has written a Perl script called 
322 <a href="http://cork.linux.ie/projects/install-sendmail/">install-sendmail</a>
323 that assists you in installing sendmail and fetchmail together.</p>
324
325 <p>Peter Hawkins has written a script called <a
326 href="http://linux.cudeso.be/linuxdoc/gotmail.php">gotmail</a> that
327 can retrieve Hotmail. Another script, <a
328 href="http://yosucker.sourceforge.net">yosucker</a>, can retrieve
329 Yahoo webmail.</p>
330
331 <p>A hacker identifying himself simply as \`Steines' has written a
332 filter which rewrites the to-line with a line which only includes
333 receipients for a given domain and renames the old to-line. It also
334 rewrites the domain-part of addresses if the offical domain is
335 different from the local domain. You can find it <a 
336 href="http://www.steines.com/mailf/">here</a>.</p>
337
338 <h1>Fetchmail's funniest fan letter:</h1>
339
340 <a href="funny.html">This letter</a> still cracks me up whenever I reread it. 
341
342 <h1>The fetchmail button:</h1>
343
344 <p>If you use fetchmail and like it, here's a nifty fetchmail button you
345 can put on your web page:</p>
346
347 <center><img src="fetchmail.png" alt="fetchmail logo" /></center>
348
349 <p>Thanks to <a href="http://www.gl.umbc.edu/~smatus1/">Steve
350 Matuszek</a> for the graphic design.  The hand in the button (and the
351 larger top-of-page graphic) was actually derived from a color scan of
352 the fetchmail author's hand.</p>
353
354 <h1>Fetchmail mirror sites:</h1>
355
356 <p>There is a FTP mirror of the current sources and RPMs in Japan at
357 <a href="ftp://ftp.win.ne.jp/pub/network/mail/fetchmail">
358 ftp://ftp.win.ne.jp/pub/network/mail/fetchmail</a>.
359
360 <h1>Reviews and Awards</h1>
361
362 <p>Fetchmail was DaveCentral's Best Of Linux winner for
363 <a href="http://linux.davecentral.com/bol_19990630.html">June 30 1999</a>.</p>
364
365 <p>Fetchmail was a five-star Editor's Pick at Softlandindia.</p>
366
367 <hr />
368 <table width="100%" cellpadding=0 summary="Canned page footer"><tr>
369 <td width="30%">Back to 
370 <a href="http://$WWWVIRTUAL/~esr/software.html">Software</a>
371 <td width="30%" align=center>Up to <a href="http://$WWWVIRTUAL/~esr/sitemap.html">Site Map</a>
372 <td width="30%" align=right>$date
373 </tr></table>
374
375 <br clear="left" />
376 <address>Eric S. Raymond <a href="mailto:esr@thyrsus.com">&lt;esr@snark.thyrsus.com&gt;</a></address>
377 </body>
378 </html>
379 EOF
380
381 # The following sets edit modes for GNU EMACS
382 # Local Variables:
383 # mode:html
384 # truncate-lines:t
385 # End: