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

Can you re-post such and such an article?

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.

Can you add such and such a newsgroup?

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.

What are ``virtual'' newsgroups anyways?

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.

Why does the list of virtual newsgroups keep changing?

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.

How do you make the save option work?

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.

Getting the GRN software

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