1. It should not be necessary to edit the Makefile, except maybe to
   set SPOOLDIR and LIBDIR to other directories.

2. Create a "news" user if you don't have one.

3. make install

3a.If you are updating leafnode from a version before 1.6 (including
   1.6alpha), "make update". This will call the update.sh shell script
   provided with leafnode. Your groupinfo file will be reformatted and
   some other files will be moved around. In case something goes wrong,
   you will find your old groupinfo file in
   /var/spool/news/leaf.node/groupinfo.old. If everything works out
   correctly, you can delete this file (it is not needed any more).

4. Edit $(LIBDIR)/config. For documentation, see config.example and
   leafnode(8). It is absolutely necessary to change the "server"
   parameter to point it to your upstream news server (generally
   the one of your IP provider). Make sure $NNTPSERVER or
   /etc/nntpserver points to your own host so clients will talk to
   leafnode rather than try to go to the upstream server.

5. Set up a cron job (as user "news") to run texpire every night or
   maybe every week.  Here is my crontab line, which runs nightly:

0 4 * * * /usr/local/sbin/texpire

   I did "crontab -u news -e" as root to edit the crontab file, and added
   this line.  Substituting "1" for the third "*", thus:

0 4 * * 1 /usr/local/sbin/texpire

   tells cron to run texpire at 4am Monday morning.

6. Make sure fetch is run at the appropriate time.  If you have a
   full-time link, run it out of cron (as "news" again), if not, run it
   when your connection to the net is established.  If it is run as root,
   it will change user to "news".  I use PPP, and run fetch from
   /etc/ppp/ip-up.

7. Edit /etc/inetd.conf so that $(BINDIR)/leafnode is executed for incoming
   NNTP connections.  Here is my inetd.conf line:

nntp    stream  tcp     nowait  news    /usr/sbin/tcpd /usr/local/sbin/leafnode

   This starts leafnode for all connections on the nntp port, subject to
   /etc/hosts/allow and /etc/hosts.deny screening.  If you don't have
   /usr/sbin/tcpd you might use this line instead:

nntp    stream  tcp     nowait  news    /usr/sbin/leafnode

   Using leafnode without tcpd is strongly discouraged since it opens up your
   news server to abuse.

   After these changes, force inetd to read the changed configuration file
   by sending it the HANGUP signal. To achieve this, issue the following
   command (as root):

kill -HUP `cat /var/run/inetd.pid`

8. If you have tcpd installed, write the following into /etc/hosts.deny

leafnode: ALL

   and the following into /etc/hosts.allow

leafnode: 127.0.0.1
leafnode: <your IP number>

   to protect your news server from abuse. If you want to make leafnode
   accessible to additional IP numbers/domains, add them in /etc/hosts.allow
   in the format described above.

9. Run fetch.  The first run will take some time since fetch reads a list
   of all newsgroups from your upstream server.  With an 28.8 modem, it
   can take as long as 60 minutes (depending on how many newsgroups your
   provider offers). To see fetch working, run it with -vvv. If you
   update leafnode from a version previous to 1.6, the format of the
   groupinfo file has changed. You should therefore run fetch with the
   parameter -f.

10.Read news using an NNTP client (with $NNTPSERVER or /etc/nntpserver
   pointing to your own host). Select the groups you want to read in
   the future. You will find them empty except a default article.
   Reading this article is necessary with some newsreaders to select
   the groups for further fetching.

   After this, you should have empty files in
   /var/spool/news/interesting.groups/ for every group you want to read.

11.Run fetch again. This run should pick up all the groups you want
   to read.

Cornelius Krasel <krasel@wpxx02.toxi.uni-wuerzburg.de>
