NeXT CNews installation notes CNews.pkg - January 1995 Cleanup Release of CNews For NEXTSTEP 3.2 and beyond, release of 5/59/95 This file documents the CNews installation package, and gives some pointers on how to complete the installation procedure. This package includes binaries for NeXTStep running on NeXT, SPARC, HP/PA, and intel hardware. After you run the Installer, there are some site-specific customizations that need to be made in CNews. This document will walk you through them. We assume that you're comfortable with a text editor, that you have permissions on the files needed to get CNews up, and that you've installed CNews into /usr/local, as the installer app told you to. For a much deeper discussion of uucp and CNews configuration, beg, borrow or steal a copy of the book Managing uucp and Usenet, from O'Reilly & Associates, Inc. This may be somewhat out-of-date, but the basic discussion of how news flows and behaves is worth understanding if you need to administer it. So, let's get started! First: There are several files in /usr/local/news/lib that need to be edited. Some of them are guaranteed to be wron as installed, so they'll need to be changed. We'll go through them one by one, with the easy ones first. The mailname file simply gives your domain name, if you've got one, or something like myhost.uucp if not. The mailpaths file gives the path to the network backbone for sending articles posted to moderated newsgroups to the group's moderator. The default should work if you're on the net or sendmail know how to get to it. The organization file is only used to fill in the Organization: line in news headers. Put your organization name in here if you have one, or something cute if you don't. The whoami file gives your uucp hostname. Make sure it's correct. If your hostname is localhost, then you're going to have problems with uucp even before you get around to thinking about news! The sys file contains a list of the newsgroup heirarchies that you receive from your feed, the newsgroups that you feed to other sites, and how they're transmitted. If you're not feeding any sites, then this file will work out of the box, doing batching and compression both into and out of your site, and you'll process all the news that your feed sends you. If you want to be a server for other sites, then you'll need to learn more about this file. Check out with the people from whom you're getting a feed, check the book mentioned above, and read the man pages. The only change you'll need to make in this file is to put in the name of the machine that's feeding your site in place of myfeed. This will ensure that any articles you post will go the right way. The active file lists all the groups you receive, the articles you have, and whether the groups are moderated. The version included with this package already lists most groups of interest. To add more groups, either edit the file by hand, or use the program /usr/local/news/bin/maint/addgroup. Again, mucking with this file can be tricky, so get help from someone who's done it before and can help with your specific situation. Check out the file README-ctlfiles in the CNews-READMEs directory for more details on what the other files in this directory do. Please read that file before continuing, and make notes if you want to change any other files or defaults. Lastly, make sure that all the configuration files in this directory are owned by user news, group news. To get them all, execute the following command as root.: myhost# chown -R news.news /usr/local/news Once that's done, there are a few more changes to make before we're ready to fly. Make sure that the following files in /usr/local/bin are owned by news.news: injnews* inews* rnews* cunbatch* If these files don't have the proper ownership, simply use the chown command as above, as root, to set it. Make sure that the file /usr/local/news/bin/input/newsspool is set to be suid . Check this by looking at the directory listing - it should look like this. Note the 'rws' rather than 'rwx' in the file permissions: -rwsr-xr-x 1 news news 40960 Jun 9 23:01 newsspool* If yours doesn't look like this, run chmod +s newsspool to set it. Run the command /usr/local/news/bin/maint/adddirs, which will create all the spooling directories for you. Make the directories /usr/spool/news/in.coming, /usr/spool/news/in.coming/bad, /usr/spool/news/out.going, and /usr/spool/news/out.going/<myfeed>, where <myfeed> is the name of the site that is sending you news. News will be put in here before it's processed. Again, make sure that all the directories under /usr/spool/news are owned by news.news. As above, this command will do it for you. It may take awhile, if you have a lot of groups listed in your active file: myhost# chown -R news.news /usr/spool/news That should pretty much do it for the /usr/local/news directory. You'll probably want to copy the crontab.local file in this directory to /etc, or add the lines in it to your own crontab.local file if you already have one. Especially important is the line about running /usr/local/news/bin/input/newsrun, which will de-batch incoming mail and put it into the spool directory for you. You may also want to run the script /usr/local/news/bin/maint/newsboot from /etc/rc.local to clean up any debris left from system crashes. If you'll be receiving newsbatches via UUCP, add the bolded lines to /etc/uucp/L.cmds if it's not already there: # PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin # If there is a suffix of ,Error, a message will only be returned if # the exit status is non-zero. If there is a suffix on ,No, there # will never be a return message from uuxqt. rmail # Only return the status of a rnews if it is non-zero rnews,Error ruusend # Never return the status of an nfrcv nfrcv,No If you're not using the NeXT-supplied UUCP package, for instance if you're using GNU Taylor UUCP, you'll need to verify that UUCP does the right thing with newsbatches. If you know enough to replace NeXT's UUCP, you probably know how to do this. If you're connected to the internet, or will be using this machine as a server for a network, you'll probably want to install the NNTP (network news transfer protocol) daemon, rather than using UUCP. An NNTP server is included in this package, and all that needs to be done to enable it is to add the following lines to the end of the /etc/inetd.conf file: #route nntp packets to the nntpd daemon nntp stream tcp nowait news /usr/local/bin/nntpd nntpd You'll then need to restart the inetd daemon, which can be done by finding the process id of the daemon , which can be found by running ps ax | grep inetd and then (as root) run kill -HUP <inetd_process_id>. Or you can reboot. NNTP specifies an authentication protocol that's discussed in the NNTP-READMEs directory. The default installation allows reading and transferring of news, but not posting, by this machine. You'll probably want to change this by modifying the file /usr/local/news/lib/nntp/nntp_access. This file allows fairly detailed tuning of which sites can do what to your news system. You can talk to the NNTP server directly by using telnet, for instance, telnet localhost nntp. Try it now! If you see messages like: milo:170# telnet localhost nntp Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 502 milo NNTP server can't talk to you. Goodbye. Connection closed by foreign host. then your nntp_access file needs to be modified. There's somewhat more discussion of the NNTP authorization protocol in the file AUTHORIZE in the NNTP-READMEs directory, and in the nntpd(8) man page. All the nntp configuration files should be in /usr/local/news/lib/nntp. You also might want to re-index the local man pages, which are stored under /usr/local/man. All the man pages for news are in here, and they're quite informative. Look at the man page for catman(1) for information on how to do this Unfortunately, news will often be very uninformative about why doesn't work, and the only evidence you'll have that it's broken is that news will stop flowing. If that's the case, then check file permissions and ownerships of the files discussed in this document. If they're all correct, then check the contents of the files and see if they seem to make sense. If they do, then compare the files with another news site, find a news guru to ask for help, or post a request for help from a machine where news does work. Good luck! Pete Clark pclark@is.com Build notes: I've included the conf.h file from NNTP and the quiz.def file from CNews, so that others can reproduce this build if need be. The update.ran script in {Cnews sources}/conf doesn't handle fat binaries properly, the version included in the CNews-READMEs directory does. Sources: The CNews source code originally came from Prime Time Freeware for UNIX, volume 4-1. Prime Time Freeware is a wonderful, well-indexed 2 CD collection of more source code than you can shake a stick at. Contact ptf@cfcl.com for ordering information. Tell them I sent you. If you don't feel like ordering the book, you can probably FTP it from ftp://ftp.cs.toronto.edu/pub/c-news/c-news.tar.Z. The NNTP source code originally came from ftp://ftp.academ.com/pub/nntp1.5/nntp.1.5.12.1.tar.Z. For some reason, it's not included in the PTF collection. Thanks to: NeXT Computer for making a great box. My cube will never be obsolete. The authors and maintainers of CNews, Geoffrey Collyer and Henry Spencer, of NNTP, Stan Barber, and the many, many net folks who've helped keep it running. This is far more their work than mine. The many people who've beta-tested and used this package in previous incarnations. This is a labor of love, because no-one's sent me a check for it yet.
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.