BSD 4_3 development
[unix-history] / usr / contrib / rn / README
CommitLineData
9c4b96b4
C
1 Rn Kit, Version 4.3
2
3 Copyright (c) 1985, Larry Wall
4
5You may copy the rn kit in whole or in part as long as you don't try to
6make money off it, or pretend that you wrote it.
7--------------------------------------------------------------------------
8
9Please read all the directions below before you proceed any further, and
10then follow them carefully. Failure to do so may void your warranty. :-)
11
12After you have unpacked your kit, you should have all the files listed
13in MANIFEST.
14
15Installation
16
171) Run Configure. This will figure out various things about your system.
18 Some things Configure will figure out for itself, other things it will
19 ask you about. It will then proceed to make config.h, config.sh, Makefile,
20 and a bunch of shell scripts. It will also do a make depend for you.
21 You might possibly have to trim # comments from the front of Configure
22 if your sh doesn't handle them, but all other # comments will be taken
23 care of.
24
252) Glance through config.h and common.h to make sure system dependencies
26 are correct. Most of them should have been taken care of by running
27 the Configure script.
28
29 If you have any additional changes to make to the C definitions, they
30 can be done in the Makefile, in config.h, or in common.h. If you have
31 strange mailboxes on your system you should modify mbox.saver to correctly
32 append an article to a mailbox or folder.
33
34 If you are on a machine with limited address space, you may have to
35 remove some of the special functions of rn to make it fit. This is
36 easily done by undefining symbols in the System Dependencies section
37 of common.h. You should run "make depend" again to be safe.
38
393) make
40
41 This will attempt to make rn in the current directory.
42
434) make install
44
45 This will put rn, newsetup, newsgroups, Pnews, and Rnmail into a public
46 directory (normally /usr/local/bin), and put a number of files into the
47 private rn library (normally /usr/lib/news/rn). It will also try to put
48 the man pages in a reasonable place.
49
505) Read the manual entry before running rn. It's quite different from
51 readnews.
52
536) Install the Xref patch to header.h, header.c, and inews.c. These patches
54 are found in header.h.?.pat, header.c.?.pat, and inews.c.?.pat, where ? is
55 either 1 for news 2.10.1 (or earlier) or 2 for 2.10.2. Last I heard,
56 2.10.3 was going to have the Xref patch built in. The purpose
57 of the Xref patch is to put an Xref: line in the header of articles
58 posted to more than one newsgroup. Rn uses this line to keep from showing
59 such postings more than once. Other than that rn will work without
60 this patch, so if you just want to try out rn you can delay putting in
61 the patch.
62
63 When you put in the patch and recompile inews, don't forget to define
64 DOXREFS in the makefile for inews. Do NOT define LINKART unless you
65 are a Eunice site and really want to do that. In fact, if you are not
66 a Eunice site you needn't install the LINKART part of the patch.
67
68 NOTE: the Makefile that comes with some of the older news systems does not
69 have all the dependencies quite right. In particular, ifuncs.c may
70 not recompile when you change header.h. If this happens when you install
71 the Xref patch, inews will start dumping core. Make sure both inews.o
72 and ifuncs.o depend on header.h in the Makefile.
73
74 Eunice users: the inews.c patch contains both the Xref patch and a LINKART
75 patch to put a form of "symbolic link" between articles posted to
76 multiple newsgroups. What it does is to put the article into the first
77 newsgroup on the Newsgroups line, and in subsequent newsgroups it just
78 puts a little file containing the name of the article in the first
79 newsgroup. Rn (when compiled with the LINKART option) is clever about
80 these pseudo-articles, and ends up opening the right one. YOU WILL NOT
81 be able to use readnews or vnews on your system without modification,
82 though. If you do this, be sure to define both DOXREFS and LINKART in
83 the makefile for inews.c. If you are using the option in inews that
84 copies instead of linking, you will want to rip that out.
85
86 NOTE: if you transmit articles to other systems using xfernews with the
87 U flag, Xref's can leak out of your system, as can Date-Received's. This
88 may make neighboring sites unhappy unless they also have the Xref patch
89 installed. For now, either don't use the U flag, or fix the inews/xfernews
90 interaction.
91
927) Try rn, and play with some of the switches. You may want to make -/
93 default on your system. This is done in common.h. You may want to modify
94 which header lines are displayed by default--this is done in head.h.
95
96 To change default values of enviroment variables on a system-wide basis
97 without recompiling rn, put switches into file INIT in the rn library.
98
998) IMPORTANT! Help save the world! Communicate any problems and
100 suggested patches to me, lwall@sdcrdcf.UUCP (Larry Wall), so we can
101 keep the world in sync. If you have a problem, there's someone else
102 out there who either has had or will have the same problem.
103
104 If possible, send in patches such that the patch program will apply them.
105 Context diffs are the best, then normal diffs. Don't send ed scripts--
106 I've probably changed my copy since the version you have.
107
108 Watch for rn patches in net.sources.bugs. Patches will generally be
109 applyable (is that a word?) by the patch program. If you are just
110 now bringing up news and aren't sure how many patches there are, write
111 to me and I'll send any you don't have.
112
1139) If you are going to hack on rn, please read the HACKERSGUIDE first.