Gremlin's Free Software

This is, a personal Unix system. Free source code is available via the World Wide Web ( All other access is restricted. Unauthorized access is prohibited by law.

The following software packages are provided in source code form, and can be redistributed without royalty.

Apple A/UX Sound Utilities
Utilities to record and play back sounds in the Macintosh native format under Apple A/UX, without requiring an active desktop. We use it to support MIME readers and WWW browsers under X-Windows.

This toolset manages references between baseline builds when compiling large software projects that consist of multiple smaller projects. Each build supplies a description of the resources it provides. Tools maintain reference lists of prerequisite projects, and search the resource lists to produce paths to directories and files suitable for passing on to compilers and other tools. This method is quite general and is currently used in production for development of commercial applications and layered products. Prerequisites for building these tools include Software ChipSet and an XPG4 message catalog system such as Kee Hinckley's implementation.

This toolset assists with storage management when processes are repeated many times. It implements queues of directories, but with each directory is stored a notion of its quality and other state. Lower quality directories are removed higher quality ones, and any directory can be preserved (i.e. made immune to the normal removal process). The queue mechanism is also general enough and open enough to be built into larger systems.

A poor man's redundant filesystem. It uses email as a transport mechanism to keep text files in synch across multiple sites.

The envctrl program provides a means to invoke a command in a carefully controlled environment. Profile scripts set the proper environment variables, and set up and tear down whatever resources may be necessary. The user's identity, primary group, umask, and the host on which the command runs can be controlled by this tool. The utility of this tool lies in the fact that users may set up their own familiar environments to maximize productivity, while various key functions (such as builds) are performed in controlled and reproducible environments.

This tool performs a 2-way diff of two ASCII text files and produces a file that contains the union of both texts. It can be thought of as a 2-way counterpart of the "merge" program supplied with RCS. Prerequisites include Software ChipSet and a Unix diff tool (e.g. Gnu Diff).

New addition to Software ChipSet, presently in alpha-test. This includes extensible implementations of printf and scanf, and a file compression library compatible with the Unix de-facto standard compress program with an interface much like stdio. Patches to RCS 5.6 and CVS 1.3 are also provided.

This is Kee Hinckley's implementation of XPG4 message catalogs. It is distributed under a Berkeley-style license agreement.

This is an enhanced version of the standard Unix "newgrp" command. The user can specify a command to invoke with the primary group set as specified. The advantage is that the command's stdin stream can be piped or redirected, a capability not possible with the standard tool.

This program is similar to the RCS "rlog" program in that it lists certain interesting data contained in RCS files. The program writes only the user-specified data in a format that can be parsed automatically by other tools.

This is a Bourne Shell script that rewrites an RCS file, converting all "magic" branches into real branches. This is useful when converting RCS files to some other source control system when the vendor-supplied tools do not support magic branches.

Software ChipSet
A small production-quality library of reusable software components written in C. Presently included are in-memory B-tree and doubly-linked list implementations.

Gremlins, Unlimited site home page