Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
To build sn, read file INSTALL.  sn is obtainable from

What it is
sn is a small news system for small sites serving perhaps a few
dozen newsgroups, and with a slow connection to the internet.
It is similar to Leafnode (<>).
The target user is a home or SOHO with a single modem connection
to the Internet, maybe running IP masq or similar, and serving a
few workstations.

sn is different
sn is fast.  The news fetcher implements command pipelining and
parallel fetches, so high modem latency doesn't cost you.
(You can also throttle sn down, if it's too fast).

sn is flexible.  You can subscribe to newsgroups on several
upstream sites, and you can create local newsgroups that are not
propagated upstream.  sn can make mailing lists look like newsgroups

sn is non-intrusive.  It has no configuration files, only control
files with simple semantics, so it's suited to being run in an
automated fashion.

sn is small.  It batches 10 (default) articles per file, so
conserving inodes and reducing disk block fragments.  sn can also
compress the article bodies.  It aliases cross posts rather
than making separate copies.  It does not maintain a bulky overview
database; instead it gets overview information directly from the
articles.  Spool metadata is 5% to 10% of the total spool size,
even with compression.  You don't need to build a separate file
system just to spool news.

sn doesn't have to be set up for the system.  You can use it
privately, and your users can maintain their own news spool without
building sn.

sn has limitations
Because the news spool is in an unconventional format, news readers
can read news locally only via NNTP.

IHAVE is not supported.  Use POST instead.

sn has no idea of distributions.

sn can't handle thousands of newsgroups.  A hundred is comfortable.

The method sn uses to alias cross posts is similar to filesystem
symlinks rather than hard links, in that if the original article is
expired, the alias breaks.

sn doesn't know how to filter spam.

Newsgroup names are subject to the same length limitations as any

sn is beta. It should work on most UNIXish systems, as long as the GNU
tools are installed. (Tested on Linux (main development platform),
Solaris and FreeBSD.) If it runs on your machine, let me know. Or if it
doesn't run.

You need zlib (<>) if you decide to
compile in the compression feature.

You'll need inetd or tcpserver (<>)
to run the daemon.  If you use inetd you will probably also want tcpd
(tcp wrappers).

I am interested in bug reports, comments, and suggestions.

Read file INSTALL.upgrade first if you're upgrading from a
previous version.  Otherwise read file INSTALL, then,
then INSTALL.notes.

Mailing list
There is a mailing list ( available. If you have questions or
comments concerning sn, please join the list and post them there.

To subscribe, send "subscribe sn" in the body of an e-mail to (Or "subscribe sn me@my-isp.somewhere" to use the
specified e-mail address.)

Distribution of sn is covered by the GNU GPL.  See file COPYING.
Use of sn is not restricted.  No express or implied warranty of
fitness for any purpose (but I'm still interested in bug reports
and comments).

Known problems
It's possible that duplicate articles will be entered in the spool,
if more than one article stream is fed into it simultaneously.  This
probably will never be "fixed".

sn was created by Harold Tay <> and maintained by him
until version 0.3.2. From 0.3.3 onwards, sn is maintained by
Patrik Rådman <>. For details see the CHANGES file.