The GRN Home Page
GRN is a USENET multi-part article culler and decoder written
by George Phillips.
It filters incoming USENET newsgroups for encoded postings such as pictures
and source code. It automatically collects multiple parts as
necessary, decodes the articles and presents them as a series
of easy to browse web pages.
The idea and implementation of GRN has evolved significantly over the
years from a simple program to assist rn users. Those interested can
read the full history.
GRN has been disabled
For a variety of reasons, some oddly connected to felines, GRN has been
diasabled at the cs.ubc.ca site as of Dec 18/1995. You can still obtain
the software if you wish.
Sites running GRN
There are no known sites running a public GRN service. In fact,
"cs.ubc.ca" does not run it at all, publically or locally.
See the section
on getting the software.
There are a few other sites offering similar services. See:
Frequently Asked Questions
No, I can't because I didn't post the article in the first place.
I wrote GRN, but the stuff you see with it comes from the USENET
postings of many individuals.
Maybe. The list of available newsgroups is largely controlled by
what USENET groups are available at the local site. If I don't
get it, I can't add it. Even so, there are some groups that won't
be added. Censorship? No. Survival? Yes. Some groups are just
so popular that their availability quickly causes the HTTP server
to die. Really. Generally the groups of prurient interest are
the absurdly popular ones, but not always.
Not all sites carry every newsgroup so many incoming articles have no
group to go into. The site can either ignore them or they can file
them away in the junk newsgroups which allows the article to propagate.
GRN can be made to filter that newgroups for articles. It organizes them
into the virtual newsgroups to make them manageable for readers.
GRN makes them based on the contents of the junk newsgroup. It doesn't
make all the ones in there, but only the ones with articles that need
decoding. If a group doesn't have a picture or other multi-part article
in it for a day or so, it will disappear from the list. The virtual
group will reappear when another article in need of decoding arrives here.
The key is to have your HTTP server return an unknown type for the file.
I can't give you a general technique as I'm not that familiar with other
HTTP servers, but the basic idea is simple. Get the server to return
the type ``application/octet-stream'' for the file. Every web browser
will bring up a file save dialog when it sees that type.
Version 2 of the GRN software was given a limited release, but it was
hard to get it going on other servers and only one or two people tried.
Version 3 is being using on www.cs.ubc.ca and is currently undergoing
beta-testing by those on the grn-talk mailing list.
Follow me for instructions on how to get the
latest version of GRN.
If you do get a copy of the software, please get on the grn-talk mailing list.
I will use it to post announcements and you can talk with others interested
in the GRN software. Traffic on the list has been very light so far.
To subscribe, send mail to majordomo@cs.ubc.ca with the line
subscribe grn-talk in the body of your message. To get off the
list send unsubscribe grn-talk. To send a message to the list,
mail grn-talk@cs.ubc.ca.
System Requirements
The biggest requirement is disk space. Since GRN stores decoded versions
of USENET postings, you will require space proportional to the number of
encoded articles. At our site where the expiry time is on the order of
one to two days, 100 Mb seems to suffice.
GRN works with programs like uudecode, xbin, unzip, djpeg, PBM+ and others
to decode and verify postings. It is mostly written in perl so you'll
need that too.
-- George Phillips