Setting up leafnode
Leafnode is a newsserver which runs locally and act like a proxy between your newsreader and one or more servers, with or without password and other special parameters.
Why?
For speed.
Depending on your newsreader, before you read an article you have to fetch it from the intertubes. This slows down the process of reading the next article, unless you have some caching mechanism.
Leafnode does this for you, in a trasparent way. You connect to localhost, the articles are given to you in a flash, and you don't have to mess anymore with broken connections, slow servers, etc.
Also, it prevents you from having the ossessive-compulsive syndrome of checking the news every 2 minutes, eventually pissing off the upstream server
How?
It's a matter of a couple of minutes.
apt-get install leafnode
Apt will ask you the name of the upstream server to make leafnode to connect. I put news.gmane.org (which is also the source of my RSS/Atom feeds, via Gwene).
It will also ask for a connection profile (ppp, permanent, none). I chose “permanent”, but it's dial-up friendly, in case, with the “ppp” method (the fetching will be done when the network is up).
That's it. Just point the newsreader to localhost instead of
news.gmane.org (but you'll have to clear the cache, so you'll have to
mark the articles are read and alike, when you'll be ready). For Gnus
run M-x gnus-group-clear-on-native-groups
to clear the cache and the
.newsrc references.
The first time
When you access a group the first time, you'll find a strange message, with a placeholder. Leafnode is smart enough not to download the whole internet to give you a bunch of newgroup. So it waits for you to access one group. The next cronjob run will fetch the articles.
Tweaks
If you have a permanent connection, change the cronjob to run more
often than once an hour. It's in /etc/cron.d/leafnode
on debian.
You may want to add more servers. I have gmane, eternal-september, and the provider's one. Eternal-september requires a password.
Take a look at /etc/news/leafnode/config
, there is plenty of
examples, but everything shinks downs to:
server = news.gmane.org
server = news.eternal-september.org
username = myname
password = mypassword
server = news.my-provider.org
That's all