Software
From Trausch’s Wiki
This is the page where I publish the various assorted software that I have written that doesn't have a home, or just isn't really all that large enough to actually try to distribute in any way other than something barebones. It's all supported as best-effort only—that is, there is no warranty of any kind, and if you send me an email to tell me that something is broken, I will very likely try to fix it, but I guarantee nothing.
Contents |
License
Unless otherwise specified, all of this software is copyrighted by Michael B. Trausch <mike@trausch.us> and is licensed to you under the terms of the GNU GPL version 3.0. There is no "or later" to it: It's GPL version 3.0 unless I upgrade the license myself later.
TOS v0.0.1
This is my spare-time, completely useless joke of an operating system that does absolutely nothing useful. Well, that is not precisely accurate: It does show how to use the w:GNU build system in an operating system project, as well as how to make an operating system kernel bootable by GRUB. There is no documentation, and there is no functionality.
To make a bootable CD image (which of course does nothing):
./configure make cd src/kern make bootcd.iso
Then you can boot from bootcd.iso in a virtual machine system or, if you really feel like wasting a CD-R, you can boot it on real hardware. But seriously, it does nothing.
DJBDNS Helpers
The djbdns helpers are a set of (GNU) m4 macros (with some helper code written in GNU C99) that can be used to generate DJBDNS configuration data. The reason that I did this was that I was tired of looking up how to write certain types of records. Together, the files in this package let you create a decent configuration for many common things such as A records, AAAA records, and so forth. The only documentation (at the moment) is the source code.
Future modification
My intention is to further refine these and add functionality to address some corner cases where one might like to do more complex (and more simple) things than are currently possible. Of course, if there are djbdns records that these macros cannot generate, you can write them just as you would in djbdns’ data file directly. So far, I have not done this. Priority will likely be given to features that are requested directly—given the support DJBDNS has for generic records, there is very likely nothing that cannot be accomplished with the right macro for it.
Usage
To use these, just download the tar file to the machine that you have djbdns running on, type cd djbdns-helpers, and then type make install. Your system must be have a new enough version of GCC installed so that the C helpers will compile (the code is part M4 and part ISO C99 with GNU extensions). You may have to do make as a normal user and make install as root.
Note that make install assumes that your djbdns configuration is in /etc/tinydns/root. If it is not, you can type make DESTDIR=/path/to/djbdns/root install and it will copy the files to the directory DESTDIR instead of /etc/tinydns/root.
After installation, you simply rename your existing “data” file to “data.m4” and then generate a new “data” file by saying “m4 macros.m4 data.m4 > data”. (Or you can modify the Makefile in the djbdns root directory to do that for you when you say “make”.) More documentation on the macros themselves will be forthcoming, though I haven't written it yet.
