<!-- <date>$Id: news-howto,v 1.15 1995/04/01 05:40:31 vince Exp $ -->

<!doctype linuxdoc system>
<article>
<title>The Linux News HOWTO
<author>Vince Skahan, <tt>&lt;vince@halcyon.com></tt>
<date>v1.15, 31 March 1995
<abstract>
This document describes the setup and care+feeding of USENET News under Linux.
You need to read this if you plan to post or read USENET news either locally
on your site or between your site and other sites.  You probably do *not* need
to read this document if don't plan to provide USENET news as a feature of
your system.

</abstract>
<toc>
<sect>Introduction
<p>
The intent of this document is to answer some of the questions and comments
that appear to meet the definition of "frequently asked questions" about
USENET News software under Linux in general, and the version in the Linux
Slackware distribution in particular.

This document and the corresponding Mail and UUCP "HOWTO" documents
collectively supersede the UUCP-NEWS-MAIL-FAQ that has previously been posted
to comp.os.linux.announce.

<sect1>New versions of this document
<p>
New versions of this document will be periodically posted to
comp.os.linux.announce, comp.answers, and news.answers.  They will also be
added to the various anonymous ftp sites who archive such information
including <tt>sunsite.unc.edu:/pub/Linux/docs/HOWTO</tt>.

<p>
In addition, you should be generally able to find this document on the
Linux WorldWideWeb home page at <tt>http://sunsite.unc.edu/mdw/linux.html</tt>.

<sect1>Feedback
<p>
I am interested in any feedback, positive or negative, regarding the content
of this document via e-mail.  Definitely contact me if you find errors or
obvious omissions.

I read, but do not necessarily respond to, all e-mail I receive.  Requests for
enhancements will be considered and acted upon based on that day's combination
of available time, merit of the request, and daily blood pressure :-)

Flames will quietly go to /dev/null so don't bother.
 
In particular, the Linux filesystem standard for pathnames is an evolving
thing.  What's in this document is there for illustration only based on the
current standard at the time that part of the document was written and in
the paths used in the distributions or 'kits' I've personally seen.  Please
consult your particular Linux distribution(s) for the paths they use.

Feedback concerning the actual format of the document should go to the HOWTO
coordinator - Greg Hankins (<tt>gregh@sunsite.unc.edu</tt>).

<sect1>Copyright Information
<p>
The News-HOWTO is copyrighted (c)1994 Vince Skahan.

A verbatim copy may be reproduced or distributed in any medium physical or
electronic without permission of the author.  Translations are similarly
permitted without express permission if it includes a notice on who translated
it.

Short quotes may be used without prior consent by the author.  Derivative work
and partial distributions of the News-HOWTO must be accompanied with either a
verbatim copy of this file or a pointer to the verbatim copy.

Commercial redistribution is allowed and encouraged; however, the author would
like to be notified of any such distributions.

In short, we wish to promote dissemination of this information through as many
channels as possible. However, we do wish to retain copyright on the HOWTO
documents, and would like to be notified of any plans to redistribute the
HOWTOs.

We further want that ALL information provided in the HOWTOS is disseminated.
If you have questions, please contact Greg Hankins, the Linux HOWTO coordinator,
at <tt>gregh@sunsite.unc.edu</tt>.

<sect1>Standard Disclaimer
<p>
Of course, I disavow any potential liability for the contents of this
document.  Use of the concepts, examples, and/or other content of this
document is entirely at your own risk.

<sect1>Other sources of information
<p>
<sect2>USENET
<p><verb>
   news.admin.misc         General topics of network news administration.
   news.admin.policy       Policy issues of USENET.
   news.admin.technical    Maintaining network news. (Moderated)
   news.software.b         Discussion about B-news-compatible software.
   news.software.nn        Discussion about the "nn" news reader package.
   news.software.nntp      The Network News Transfer Protocol.
   news.software.readers   Software used to read network news.
   news.sysadmin           Comments directed to system administrators.
   news.announce.newusers  Explanatory postings for new users. (Moderated)
   news.newusers.questions Q & A for users new to the Usenet.
</verb>

<sect2>Books
<p>
The following is a non-inclusive set of books that will help

<itemize>
<item>"<tt>Managing UUCP and USENET</tt>" published by O'Reilly+Associates is in my
opinion the best book out there for figuring out the programs and protocols
involved in being a USENET site.

<item>"<tt>Unix Communications</tt>" published by The Waite Group contains a nice
description of all the pieces (and more) and how they fit together.

<item>"<tt>Practical Unix Security</tt>" published by O'Reilly+Associates has a nice
discussion of how to secure UUCP in general.

<item>"<tt>The Internet Complete Reference</tt>" from Osborne is a fine reference book
that explains the various services available on Internet and is a great
source for information on news, mail, and various other Internet resources.

<item>"<tt>The Linux Networking Administrators' Guide</tt>" from Olaf Kirch of the
Linux DOC Project is available on the net and is also published by (at least) 
O'Reilly and SSC.  It makes a fine <em>one-stop shopping</em> to learn about 
everything you ever imagined you'd need to know about Unix networking.

</itemize>

<sect1>Where NOT to look for help
<p>
There is nothing "special" about configuring and running USENET news under
Linux (any more).  Accordingly, you almost certainly do *NOT* want to be
posting generic news-related questions to the comp.os.linux.* newsgroups.

Unless your posting is truly Linux-specific (ie, "please tell me what patches
are needed to run INN with the bash1.12 in SLS v1.03") you should be asking
your questions in the newsgroups mentioned above.

Let me repeat that.

There is virtually no reason to post anything news-related in the
comp.os.linux hierarchy any more.  There are existing newsgroups in the news.*
hierarchy to handle *ALL* your questions.
<p>
<em>
IF YOU POST TO COMP.OS.LINUX.* FOR NON-LINUX-SPECIFIC QUESTIONS, YOU ARE
LOOKING IN THE WRONG PLACE FOR HELP.  THE USENET NEWS EXPERTS HANG OUT IN THE
PLACES INDICATED ABOVE AND GENERALLY DO NOT RUN LINUX.
</em>
<p>
<em>
POSTING TO THE LINUX HIERARCHY FOR NON-LINUX-SPECIFIC QUESTIONS WASTES YOUR
TIME AND EVERYONE ELSE'S AND IT FREQUENTLY DELAYS YOU FROM GETTING THE ANSWER
TO YOUR QUESTION.
</em>
<sect>Hardware Requirements
<p>
There are no specific hardware requirements for USENET News under Linux.  The
only requirement of any type is sufficient disk space to hold the software
itself, the threads database(s), and the amount of news you wish to keep on
the system.  Figure on a minimum of 10 MB of disk space for starters.

<sect>Getting USENET News software 
<p>
All the software referenced in this "HOWTO" is available on the usual Internet
anonymous ftp sites.

Looking in /networking/news on <tt>ftp.uu.net</tt> is usually a good way to start.

The newspak-2.4.tar.z distribution contains config files and readme files
related to building uucp, news, and mail software under Linux from the various
freely-available sources.  It can usually be found in 
<tt>sunsite.unc.edu:/pub/Linux/system/Mail/news</tt>.  If you can't find it on
sunsite, please send me mail and I'll make sure you get a copy of it.

<sect>News Transport Software
<p>
There are two main sets of news "transport" software for *nix these days,
Cnews and INN.  The old "Bnews" has been declared officially dead and
unsupported by its authors.

News "transport" is defined here to be the software that works behind the
scenes to post and propagate the news articles as well as making the articles
available for the newsreaders to access.

You can set your paths to anything you like, as long as UUCP has the absolute
path to rnews in the Permissions file and as long as you have your newsreaders
configured so that they can find "inews" and "mail".

Important - you're asking for trouble if you try to intermix Cnews and INN.
Pick one or the other.  It's ok to add the NNTP "Reference Release" into Cnews
since they're intended to play well together.

<sect1>Cnews Cleanup Release
<p>
The current de-facto standard news software is Cnews.  It has been around for
a number of years, I first saw it sometime around 1988.  The current version
is called "Cnews Cleanup Release, with patch CR.E".

Cnews's main benefit is its maturity.  It runs on about every *nix you can
find and there are literally thousands of systems running it worldwide.

Its main disadvantage is that it seems to have been intended for
uucp-over-modem connections between sites and as such requires the addition of
NNTP software to handle realtime Internet feeds and reading.

Regardless, the beginning USENET admin should probably run Cnews first since
it's so stable, well documented, and has many thousands of experienced
administrators who can answer questions.

The 'Cleanup Release' claims that "Overview support has been fully integrated
and is faster than it used to be."  The result is that you can do things like
use Cnews NOV support rather than running external threading packages for
newsreaders such as nn, tin, and trn.

I haven't quite figured how to implement this part yet, since I switched to
INN at home long ago.  If anybody wants to clue me in to update this 
document, please drop me a line via e-mail.

The newspak distribution on sunsite contains working config files
for the Cnews Cleanup Release under Linux as well as a couple line patch
you'll need to make to <tt>"doexplode"</tt> to get around some problems with
bash1.12.

Basically you run the new 'quiz' script and take the defaults.  You'll have to
refer to your /usr/include tree to answer a number of the questions, but
that's rather straightforward.

<sect2>Installing Cnews
<p>
Installing the Cleanup Release of Cnews is absolutely a "rtfm" project.
Just grab the sources, extract them, and follow the instructions.

The <tt>quiz.def</tt> in newspak was generated by running "quiz" the first time and
simply looking up the answers by checking out the /usr/include files to get
the right answers.

Steve Robbins also has determined that the recent 'cleanup release' of Cnews
has found a bug in GNU 'join' from shellutils-1.9.  There are a few patches
needed to the sources for join to deal with the problem.  Steve's put them
on sunsite as I recall.

<sect2>Configuring Cnews
<p>
At the very least, you need to edit or at least take a look at
the following files that all should be in /usr/local/lib/news:

<verb>
active             - the active file 
batchparms         - batch parameters
explist            - article expiration setup
mailname           - name in headers for mailed replies
mailpaths          - path to mail moderated postings to
organization       - your "org"
sys                - control what you take and feed
whoami             - your hostname for the Path: line
</verb>

<sect2>Maintaining a Cnews Site
<p>
First, a significant rule of thumb is to not mess with files by hand that have
utilities that configure them. In particular don't set up newsfeeds manually (run
"<tt>addfeed</tt>" instead) and don't mess with your active file (run "<tt>addgroup</tt>").
When in doubt, read and re-read the docs in the source distribution.

Everything else can be done via <tt>cron</tt>.  My crontab for "news" looks like the
following:

<verb>
	# take the compressed batches that came in from other systems
	# also, post (locally) articles that originated here
	20 *	   * * * /usenet/sw/news/bin/input/newsrun  

	# batch 'em up to go out
	0 *	   * * * /usenet/sw/news/bin/batch/sendbatches myfeedsite

	# expire C-news 
	59 0	   * * * /usenet/sw/news/bin/expire/doexpire 

	# monitor stuff and report if needed
	10 5       * * * /usenet/sw/news/bin/newsdaily 
	00 5       * * * /usenet/sw/new/bin/newswatch 

	# turn processing of incoming news batches off 6:30AM - 4:00 PM
	30 6	   * * * /usenet/sw/news/bin/input/newsrunning off 
	00 16	   * * * /usenet/sw/news/bin/input/newsrunning on 
</verb>

<sect1>InterNetNews (INN)
<p>
INN is the newcomer on the scene, but it's gaining popularity as it matures.
Its main benefit is speed and the fact that it contains an integrated nntp
package.  Its main drawback is that it's new and that it doesn't necessarily
install and run flawlessly on the many "standard *nixes" yet.  In addition, it
operates by having a daemon (the <tt>innd</tt>) always running plus potentially a
overchan daemon to do threading.  The tradeoff seems to be memory vs. speed.

I've run up to a 5 MB/night newsfeed incoming over UUCP with INN on a 8 MB
386-33 (no Xwindows running normally) over a 14.4 KB modem with no problems at all.

New USENET admins should probably not try INN until they have experience with
either B-news or Cnews.  While it's fast and reliable under Linux, it's
virtually undocumented for the beginning news administrator (though in
practice it's rather simple to run once you figure it out).

INN is very particular about its permissions.  Don't mess with them.

INN is also very particular about having a "quality" TCP/IP to work with.
Linux is not necessarily all the way there at this time, so it is recommended
that you grab a Linux-specific INN distribution from one of the usual Linux
archive sites.

<sect2>Installing INN
<p>
( <tt>from Arjan de Vet - devet@info.win.tue.nl</tt> )

I've made a patch + config kit for INN 1.4 to get it to run on Linux.  It can
be found at:

<tt>ftp.win.tue.nl:/pub/linux/ports/inn-1.4-linux.tar.gz</tt>

INN depends heavily on a good /bin/sh substitute. I use a beta version of bash
1.13 that is now available for Linux on the normal archive sites.  bash 1.12
gives some small problems with newgroups not being handled correctly (maybe
some other problems too, I don't remember).

<sect2>Configuring INN
<p>
Basically follow Arjan's instructions and you'll be all set.  Here's the
summary of what to do:

<itemize>
<item>In config.data, make sure you have <tt>"HAVE_UNIX_DOMAIN DONT"</tt>
<item>Add the hostname of the system running innd to hosts.nntp
For a uucp-only site, that's your sitename.
<item>Make sure you do not have a line for nntp in <tt>/etc/inetd.conf</tt>
<item>Make sure that you have innshellvars say <tt>"HAVE_UUSTAT DO"</tt>
rather than the "DONT" in his example config.data if you
have uustat from the Taylor UUCP package installed.  If you
have this defined wrong, it'll result in no outgoing news
getting batched.
<item>If you run INN, definitely define the recommended <tt>syslogd</tt>
stuff because it is very, very helpful.
</itemize>
There is a spectacular (!!!!) FAQ for INN that comes out monthly.
Look on <tt>rtfm.mit.edu:/pub/usenet-by-hierarchy/news</tt> for it.  You'll be glad you did.

<sect2>Maintaining a INN Site
<p>
I've found that there's essentially zero care-and-feeding of a Linux INN site
other than having a working cron.  Basically you want a crontab that looks
something like the following:

<verb>
	# daily maint, also expire the .overview database and articles
	1 0 * * * /usenet/sw/inn/bin/news.daily expireover delayrm < /dev/null

	# send 'em out
	5 * * * * /usenet/sw/inn/lib/send-uucp
</verb>

( if you switch to bash1.13, the <tt>"< /dev/null"</tt> above is not needed )

<sect1>Other News Transport Agents
<p>
The following is a non-inclusive list of other news transport software known
to work under Linux:
<itemize>
<item>dynafeed
<item>nntp1.5.11
<item>slurp1.05
</itemize>

<sect>News Readers
<p>
There is no "one true newsreader".  As a result, there are many well-known
newsreaders that port easily to Linux in particular.  At this writing,
"<tt>tin</tt>", "<tt>trn</tt>", and "<tt>nn</tt>" are in most of the commonly
available distributions of Linux and in newspak.

When picking a newsreader, you basically want to find something that is easy
to use, very configurable by the user, with threading and kill files (to
select interesting articles or make the non-interesting ones not appear at
all).

You can set your paths to anything you like as long as all the newsreaders can
find "<tt>inews</tt>" from your Cnews or INN installation and a
"<tt>mail</tt>" program to send mail replies to posts.

This section will talk briefly about several of the most popular ones.  Before
you ask, I use "<tt>nn</tt>" for lots of reasons :-)

<sect1>Tin
<p>
Tin is a threaded newsreader generally intended to be easy for new users.  It
supports kill files and NOV threading.  If you're running INN, it will read
NOV .overview files by default and not write index files.

To compile Tin under linux, basically just edit the makefile to set the
locations of the software (especially the location of inews) and type "make
linux".  There are no patches required for tin under Linux.

For threading, you can basically just say "tin -u" to update the index files.

To enable the ability to read via NNTP, compile with "NNTP_ABLE" defined.
This will result in a file called "tin" for local and one called "rtin" for
NNTP reading.  "tin -r" will also get the same behavior as "rtin".

Iain Lea recommends the following crontab entry and says that you need to do a
"make daemon" to make tind.

<verb>
	# thread the database
	35 * * * * /usenet/bin/tind -u
</verb>

I've run <tt>tin</tt> over a SLIP link as a NNTP-based newsreader.  If you're
connecting to a system that has a full newsfeed, you will grow extremely old
waiting for it to load up the "active" file.

<sect1>Trn/Mthreads
<p>
trn is a threaded derivative of the "rn" newsreader.  trn3.2 and newer has the
nice ability to select either the "mthreads" (trn's threading package) or NOV
(threader from INN) threading.

To compile it, just run Configure and take the calculated defaults.  You might
need to have lib4.4.1 and bash-1.13 (there is a beta now available on the
various Linux archive sites) to successfully run Configure.  You'll probably
need both bash1.13 and libs4.4.1 to get the new Configure to run properly.

The newspak distribution on sunsite contains working config files
for trn under Linux.

It's probably unwise to try to edit a trn config.sh by hand unless you're
doing something *VERY* simple like changing the paths to fit your tastes.  If
you do so, you'll need to run "Configure -S" before you "make depend", "make",
and "make install".

Although "Configure" fails generally under Linux with bash1.12, "Configure -S"
work fine so if you take the newspak config.sh as a starting point, you'll be
very close.

Compiling for NNTP reading is as simple as answering "yes" when Configure asks
you if you want to do so (assuming Configure runs ok on your system).  A
future release of newspak will include a config.sh for NNTP reading as well as
the existing one for local reading for those of us who are still
"bash-impaired" :-)

I've run <tt>trn</tt> over a SLIP link as a NNTP-based newsreader.  If you're
connecting to a system that has a full newsfeed, you will grow extremely old
waiting for it to load up the "active" file and to thread the articles.

There are dozens of command line switches for trn to get all kinds of
behavior.  Read the "trn" man page for details.  I use a nice feature to set
all the switches easily:

<itemize>
<item>make a file with all the settings in a file called ~/.trnrc
<item>export TRNINIT="~/.trnrc"
</itemize>

The current newspak has a copy of my .trnrc file as an example.

trn3.2 and above has support for NOV or mthreads threading that's
user-selectable.  Accordingly, I recommend building the software to allow both
threading mechanisms (it's a question in Configure).  To pick one at runtime,
try "trn -Zo" for NOV and "trn -Zt" for mthreads.  I do it my aliasing trn to
the right thing.

To build the mthreads database, do something like the following in the "news"
crontab:

<verb>
	# thread the trn database
	35 * * * * /usenet/bin/mthreads all
</verb>
<sect1>NN
<p>
The newspak distribution on sunsite contains working config files
for nn6.4.18 that you can drop into place and type "make" under Linux. They
also work with the 6.5b3 beta of the coming nn6.5 update.

When you're done compiling, you need to do the following:
<itemize>
<item>		- run the "inst" program to install things.  
			(install everything)
<item>		- initialize the database
<item>		- fire up nnmaster
</itemize>

See the nn docs for details.  Compiling, configuring, and running nn under
Linux is no different than running nn on any other *nix with the exception
that you may want to run nnmaster as a cron entry rather than as a daemon.  If
you run it as a daemon under linux, it may not tend to wake up properly (the
net effect of running it from cron is the same anyway).

Support of "nn" is as simple as the following crontab entries:
<verb>
	# run nnmaster to collect "nn" stuff
	# (not needed if you use NOV from INN in nn-6.5beta3)
	25 * * * * /usenet/sw/nn/lib/nnmaster

	# expire the nn database
	# (not needed if you use NOV from INN in nn-6.5beta3)
	0  4       * * * /usenet/sw/nn/bin/nnadmin =EYW 

	# stash a copy of the active file for "nngoback" and keep last 7
	0 3 * * * /usenet/sw/nn/lib/back_act 7 
</verb>

I've experimented a little with running <tt>nn</tt> as a NNTP-based newsreader
over a SLIP connection.  In this case, you'll want to edit the
<tt>config.h</tt> file slightly.  See the comments in the file for details.
When running as a NNTP-based reader, nn runs a local copy of <tt>nnmaster</tt>
to keep the threads database on the local system so that article selection is
very fast (although you of course wait for the arcticle text a little if
you're running SLIP over a modem).

The new version (6.5.x) of <tt>nn</tt> has support for INN's NOV database
which makes it unnecessary for you to run <tt>nnmaster</tt> at all.  This
configuration is <em>highly</em> recommended, since as a result you won't
have to spend the cpu time to run <tt>nnmaster</tt> at all and you won't
get its database and the actual news articles available out of synch.
<sect1>Other newsreaders
<p>
The following is a non-inclusive list of newsreaders said to install and run
under Linux:
<itemize>
<item>tass
<item>xrn
<item>gnus
</itemize>

<sect>Acknowledgements
<p>

The following people have helped in the assembly of the information (and
experience) that helped make this document possible:

Ed Carp, Steve Robbins, Ian Taylor, Greg Naber, Matt Welsh, Iain Lea, Arjan de
Vet

If I forgot anybody, my apologies.

<sect>Frequently Asked Questions about USENET (in c.o.l.* anyway)
<p>

<sect1>Why can't I post to moderated groups ?
<p>
Probably because the newsreader is trying to call /bin/mail to send the mail
and it doesn't like it.  Replace the /bin/mail in old versions of SLS with the port of
mailx-5.5.tar.z from a modern Slackware and use Slackware's <tt>pkgtool</tt> to install
the kit and you'll be all set.

Another possibility is that you have a moderated newsgroup set up on your
local system as not-moderated and somebody upstream is quietly deleting the
article (some system's software, not a person).  Make sure you run a
"checkgroups" every now and then when the checkgroups article rolls by in
news.admin every few weeks.

<sect1>Why do I have problems that appear to be permission-related ?
<p>
Because they are :-)

Check to see that your permissions are right and that you have a "news"
username and group in /etc/passwd and /etc/group that matches the binary
distribution you grabbed.  It seems that there is not yet a Linux-standard for
commonly available accounts.

All the stuff in /usr/local/lib/news should be news.news except
/usr/local/lib/news/setnewsids which should be setuid root.

You can use whatever UID and GID you want for "news".

<sect1>Why can I post articles locally, but they don't show up or get fed downstream ?
<p>
Probably because you didn't call newsrun from cron.  Maybe because you edited
your sys file and messed it up.  Maybe because you don't have a
/usr/spool/news/out.going tree or something.   Maybe because you grabbed a distribution
that has the 'Performance' or 'Cleanup' releases of Cnews, which batch things up
and need 'newsrun' running from cron to process them to feed the other sites and
to have them visible locally.

Do not create newsgroups or feeds by editing the active or sys files.  Use the
utilities in /usr/local/lib/news/bin/maint to do it.

<sect1>Why doesn't my binary distribution have nntp ?
<p>
Because it's supposed to be plug-n-play under Linux and because I didn't want
to make SLS's news stuff doubly big by having to maintain both nntp and
non-nntp versions of the newsreaders and news transport programs.  Also
because it compiles in localized information that is not overridable at
runtime via a config file.

<sect1>Why does doexpire (or relaynews or) say "severe space shortage" when there's lots of room ?
<p>
Because it can't read /etc/mtab.  Make it mode 644.  This happens when you
unmount a mounted filesystem by root with a umask that doesn't permit
world-read of files owned by root.

<sect1>Why does everything look normal, but posting doesn't happen ?
<p>
Older versions of Linux had a "broken" sed that Cnews was prone to blow up.
In particular, if you've installed over an old SLS, be sure to check /bin and
/usr/bin to be certain you have only one copy of sed and that it's a modern
one.

Because as of the 'Performance Release' in about February 1993, you have to
have 'newsrun' run from cron periodically to process things.  That's a feature
that apparently suprises some people.

<sect1>Can I hook the new news overview (NOV) stuff into trn/tin/nn to replace
the various independent thread databases ?
<p>
Yes. <tt>trn</tt>, <tt>tin</tt>, and the beta of <tt>nn</tt> support it now. 

You can hook it into the Performance and Cleanup Releases of Cnews and various other
readers as well.

The beta copy of nn6.5 I have here has NOV support and it works just
dandy under Linux.  I run it here and have nn running without having to
run nnmaster (!).  Look on uniwa.uwa.edu.au for a copy of it.

<sect1>Why can't we have a binary distribution of NNTP ?
<p>
Because significant local-only information is compiled-in and 
cannot be determined auto-magically at runtime.  If you're that into things,
please grab INN rather than rolling your own with Cnews plus NNTP.

<sect1>How do I set up NNTP to allow read/post across the network while *not*
storing any news articles or databases locally.
<p>
	( mdw@sunsite.unc.edu (Matt Welsh) )
<itemize>
<item>	1) Grab the "reference implementation" of nntp and a copy or rn
		from your local archive site.  If you connect to ftp.uu.net
		you'd grab:

		nntp.1.5.11.tar.Z from ftp.uu.net:/networking/news/nntp

<item>	2) compile nntp as follows:
<p>
		copy common/conf.h.dist to common/conf.h. 
<p>		Edit common/conf.h to set certain options: 
		The only ones I set were: 
<p>
		DOMAIN: undefine it (i.e. change the line to <tt>#undef DOMAIN</tt>).
<p>		REALDOMAIN: Define this. It looks up the domain using 
				the libraries. 
<p>
		SERVER_FILE: Set this to the name of the file which will
			contain the hostname of the news server (i.e. the
			machine you'll read and post news through). I use
			"/usr/local/lib/news/server".
<p>
		PASSFILE: If your news server requires authorization (i.e.
			some kind of username/password) to post, set this to
			the name of the file which contains the username and
			password (described below).  I use
			"/usr/local/lib/news/nntppass".
<p>
	I decided to keep all of the other news stuff in /usr/local/lib/news.
	So I set all of the rest of the pathnames in the file (i.e.
	ACTIVE_FILE, NEWSGROUPS_FILE, etc.) to use /usr/local/lib/news.  Many
	of these files are only used by the NNTP server, not the client, but
	to be safe I changed them all to point to the right directory. You can
	of course use the default pathnames; just make sure you create the
	directory accordingly.
<p>
	3) Create the user "usenet" if you haven't already. The inews program
	runs as this user. All you need is a userid; you don't need a home
	directory or shell or anything for the user. Just plop the following
	line into your /etc/passwd:
<verb>
				usenet:*:13:1::/:
</verb>
	Make sure you set the userid ("13", above) to something unique. The
	group can be anything; I use "daemon" (gid 1).
<item>	4) Create the SERVER_FILE, above. For example, my news server is
	"wonton.tc.cornell.edu", so I created the file
	/usr/local/lib/news/server which contained one line:
<verb>
		 wonton.tc.cornell.edu
</verb>
<item>	5) Create the PASSFILE. This file contains lines of the form
<verb>		<server name> <username> <password>
</verb>
	Let's say that your news server (the one in SERVER_FILE, above) is
	"shoop.vpizza.com", and to post on that machine you need to be
	authorized as the user "news" with a password of "floof". Thus, in the
	PASSFILE (I use /usr/local/lib/news/nntppass), you need the line
<verb>		shoop.vpizza.com news floof
</verb>
<item>	6) Make this file secure! The inews program runs as the user "usenet",
	so make this news directory owned by that user and the nntppass file
	as well.
<verb>
	chown usenet /usr/local/lib/news 
	chmod 755 /usr/local/lib/news 
	chown usenet /usr/local/lib/news/nntppass 
	chmod 600 /usr/local/lib/news/nntppass 
</verb>
	So nobody else can read this file. No, the passwords in it are not
	encrypted.

<item>	7) Go back to the nntp.1.5.11 source directory; issue "make client".
	At this point you'll build the NNTP version of inews, which is the
	only software used by the NNTP client.

	When I built inews, there was a bug in the library which caused the
	function uname() in uname.c to call itself eternally. This should be
	gone now; however, if inews seems to hang and your system starts
	slowing down *a lot* you should rename the function "uname()" in
	uname.c to something like "my_uname()", and change the calls to it (in
	inews.c) to call my_uname() instead. Mail me if you run into this
	problem. 
<verb>		(VDS note - this means mail to Matt-not me :-) )
</verb>
<item>	8) Issue "make install_client". This will install the inews stuff.
	Also link /usr/local/lib/news/inews to /usr/local/bin/inews

	Now you should be able to happily post (by hand). Try something like
	the following:
<verb>
		$ inews -h << EOF
		Newsgroups: misc.test
		From: me@foo.bar.com
		Subject: Testing
		Reply-To: my-real-address@wherever.edu

		This is a test.
		EOF
</verb>
If this works, inews should post the article. You'll know because
test-responders on misc.test will reply to the address on the Reply-To
line, above. Please don't do test postings on real groups, like c.o.l.
:)

</itemize>
</article>
