This site is outdated, please use https://leafnode.sourceforge.io/ instead.
Leafnode is a USENET software package designed for small sites running
any flavour of Unix, with a few tens of readers and only a slow link to
the net. It is currently being developed by Matthias Andree and Ralf
Wildenhues. The current version is 1.9.46.
The package consists of several programs:
- Leafnode is the NNTP server. It talks to the normal news clients,
and stores readership data.
- Fetchnews is the program which gets news from upstream servers and
sends your posted articles to the upstream servers. It also can find out
which groups you read and gets articles accordingly. Fetch supports
filtering incoming articles for regular expressions.
- Texpire is responsible for deleting old and uninteresting news. It
deletes all discussion threads that are old and not recently read.
- Applyfilter applies the contents of your filterfile to articles that
you have already retrieved.
- Checkgroups inserts the titles of newsgroups into the newsgroup
database.
- Newsq shows which news are waiting to be transferred to your upstream
server.
Only groups that someone has been reading in the past week are fetched
from the upstream NNTP server. When someone stops reading a group,
fetch will stop reading that group a week later, and when someone
starts reading a group, fetch will grab all the articles it can in
that group the next time it runs. This means that you only store
articles from those newsgroups you are really interested in.
Advantages of Leafnode (compared to other servers) are:
- Uses very little disk space and bandwidth compared to other servers.
Obviously truer for 3-user sites than for 30-user, and probably wholly
untrue for 300-user sites.
- Easy configuration and maintenance. Leafnode tries very hard to
recover automatically from error situations.
Of course, leafnode also has weaknesses. Some of these are:
- Loses news. In just about any error situation, leafnode tries to
fix its problems by deleting the offending article.
- Scales very badly.