Received: with LISTAR (v1.0.0; list gopher); Fri, 08 Jun 2001 09:29:42 -0500 (EST) Return-Path: Delivered-To: gopher@complete.org Received: from erwin.complete.org (cc695330-a.indnpls1.in.home.com [24.8.87.207]) (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (168/168 bits)) (Client CN "erwin.complete.org", Issuer CN "John Goerzen -- Root CA" (verified OK)) by pi.glockenspiel.complete.org (Postfix) with ESMTP id C2BC03B80B; Fri, 8 Jun 2001 09:29:39 -0500 (EST) Received: by erwin.complete.org (Postfix, from userid 1000) id 1684375836; Fri, 8 Jun 2001 09:29:39 -0500 (EST) To: gopher@complete.org Subject: [gopher] Gopher, CVS, Xdelta From: John Goerzen Date: 08 Jun 2001 09:29:38 -0500 Message-ID: <87y9r32gfh.fsf@complete.org> Lines: 46 User-Agent: Gnus/5.090001 (Oort Gnus v0.01) XEmacs/21.1 (Cuyahoga Valley) MIME-Version: 1.0 Content-type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit X-archive-position: 171 X-listar-version: Listar v1.0.0 Sender: gopher-bounce@complete.org Errors-to: gopher-bounce@complete.org X-original-sender: jgoerzen@complete.org Precedence: bulk Reply-to: gopher@complete.org List-help: List-unsubscribe: List-software: Listar version 1.0.0 X-List-ID: Gopher List-subscribe: List-owner: List-post: List-archive: X-list: gopher So I was bored yesterday as I was updating the mirrors on quux.org and the thought occured to me: quux is, in large part, an archive of historical stuff: literature, software, papers, whatever. People can see what the UMN gopher server used to look like, etc. The thought occured to me: wouldn't it be great for people to also be able to see what THIS site used to look like? And it also occured to me that it would be good for me to make archives of previous versions of it too. Making periodic checkpoints of stuff is prohibitive space-wise -- the site is 7.8GB. Not a good option. It would be possible to put the entire thing into CVS, but then there's the problem of having to have the entire thing checked out also -- it would more than double the space requirements. Not a good option either. So then the thought occured to me: what about a gopher server that natively understands RCS files and serves them up directly? So, point the server at the cvsroot and let it fly! People could request regular documents as usual, or maybe some special syntax like this: gopher://foo.bar/0:::20010601:::/document.txt Would give them a document.txt from June 1. The server would have to rewrite the .Links so that the date is inserted at the proper part in the selector for directories, but other than that it could be really slick. However, it's not QUITE that easy: there's the question of deleted files (the CVS Attic), deleted directories, etc, etc. Possibly code from something like cvsweb could be used. There's also xdelta, which is much more suited for this purpose than RCS but which lacks the whole-system management features of CVS -- that is, xdelta will manage one file like RCS, not a whole directory or something like CVS. xdelta is faster and has an API already, though. Thoughts? I'm wondering what server might be most useful for this. I've also realized that Roxen includes gopher and CVS support, so I might look into that. Last I looked (which was, admittedly, an old version) its gopher support was rather weak, however. -- John