John Goerzen's Legacy Projects

Please see the list of current software and the caveats about the below table on the main software index page. This table was last updated in January 2006, even though it was likely very dated by then already.

ProgramLanguageDescriptionLinks
Debian From Scratch (DFS) Haskell A bootable CD-ROM containing one of the most powerful Linux rescue environments ever as well as a system for installing any of four versions of Debian onto a disk. Also available is dfsbuild, the flexible system for building these images. Most of DFS/dfsbuild is written in OCaml. DFS is one of the first systems capable of installing amd64 Debian. home
Darcs repo
gopherbot Haskell A gopher caching spider, similar in goals to the wayback machine at archive.org. Written in Haskell, uses my HDBC database engine. Darcs repo
haskell-devscripts Perl Various scripts and tools to help automate the building of Haskell libraries for Debian. Darcs repo
haskell-v8 DocBook SGML Haskell On All Eight Cylinders, an early work in progress for an introductory hands-on tutorial for Haskell. Darcs repo
magic-haskellHaskell This package provides Haskell bindings for libmagic, which determines the type of a file based on the contents of the file rather than its name. Darcs repo
media-indexHaskell Builds a searchable index of files on removable media such as CD-ROMs and DVD-ROMs. Currently under development. Darcs repo
MissingPyHaskell MissingPy provides an interface to Python from Haskell. With MissingPy, you can call code and acces objects written in Python. Darcs repo
txt2rtfHaskell Convert standard ASCII text files to RTF format, preserving formatting. Darcs repo
arch2darcs Haskell Converts GNU Arch repositories to Darcs repositories, preserving history. Darcs repo
DebsigsPerl 5 Debsigs is a proposal and implementation of a cryptographically authenticated package distribution and installation system for Debian, originally written for the Progeny Debian operating system by John Goerzen. Now maintained by Branden Robinson.
dictdlibPython 2 This is a pure Python API for writing dictd databases. dictd is a server for the dict protocol written for Unix and is intended to serve up dictionaries over the Internet. dictclient is intended for people that are making these dictionaries or are converting dictionaries in other formats (plain text, TEI, etc) into dictd format. Because of its versatile nature, it makes a much easier and better tool for generating dictionaries than dictfmt. Home: gopher | HTTP, API docs, Darcs repo
dictclientPython 2 A Python client library for accessing DICT (RFC2229) servers. This API defines three classes and works nicely in Python's OO framework. Pure Python implementation by John Goerzen. Home: gopher | http, API docs, Darcs repo
dtmconvHaskell A tool to convert DTM-format files on a Sharp Zaurus with the Sharp ROM to the XML format expected by the OpenZaurus tools. Darcs repo
gopherd (UMN)ANSI C The original University of Minnesote gopher server software, now maintained by John Goerzen. UMN gopherd is written in C and supports gopher0 and gopher+. Home: gopher | HTTP
gruntPython Grunt is a tool to facilitate asynchronous execution of commands and transfer of files. It can send information over e-mail or UUCP and uses GPG to authenticate requests and encrypt requests and results. Darcs repo
HandinC This program was written to allow students at Wichita State University to submit assignments electronically. It features enforcable deadlines, separate per-class accounts, etc. There are few docs. It is intended to be compiled and installed in a separate class account for each class, and setuid to that accont. It was written in 1997 and this code has not been updated since, but I believe WSU still uses it. Download tar.gz: gopher, http.
hurgPython Hurg is a HTTP gateway to Gopherspace. It accepts connections from Web browsers and forwards them on using the Gopher protocol. Darcs repo
kernimport Python Utilities used to import Linux kernel sources into tla repositories. Darcs repo
MissingLib Objective Caml A library of useful utilities for OCaml. Most importantly is ConfigParser, a reimplementation of Python's ConfigParser in OCaml. home
nglister Python Simple script to connect to an NNTP server and fetch the active file, newsgroups file, etc. Darcs repo
sgml-commonVarious Simple infrastructure supporting building of documentation from DocBook SGML sources. Darcs repo
srcinstHaskell Support to install Debian packages, and all their build-time and run-time dependencies, solely from source. Darcs repo
tla-buildpackagePython Scripts to automate storage of Debian source packages in tla archives. Darcs repo
Various OCaml Packages Objective Caml I maintain several OCaml packages for Debian, including: ocamldbi, a database-independant driver interface; pycaml, a Python-OCaml bridge; ocamlodbc, a UnixODBC interface for OCaml; perl4caml, a Perl-OCaml bridge; regexp-pp, a camlp4 syntax extension for nicer regexp matching; etc. Debian
Grub package for NetBSDANSI C, asm Grub is a bootloader for i386 machines that is often used in place of LILO, MBR, or other such tools. This package enables NetBSD users to install Grub onto their disks. Packages: gopher | HTTP. Grub homepage
NetmazeANSI C This is a 3-D multiplayer game for X. You can play by yourself, use computerized players ("bots"), or you can use a TCP/IP network and play against other players. Originally written by M. Hipp; enhancements by Wichita State students and John Goerzen; xnetserv by John Goerzen. Debian package page (downloads for Debian and everyone)
BibviewANSI C This is a bibliography file editor for TeX with an X11 GUI. Maintained for Debian by John Goerzen. Debian package page