Friday, April 20, 2007

Moof 0.4.2 released (bugfix release)

Since MOOF 0.4.1 could not work as a DHCP client, I have release MOOF 0.4.2. This is a bugfix release; in order to make room for af_packet.o, which the DHCP client needs to do its DHCP magic, I removed an older ISA driver. Since there was a little room left over after removing this driver, the md5sum applet is now part of MOOF.

I've basically accomplished all of my goals with MOOF at this point. MOOF 0.4.2 does everything I need in a one-floppy system: It runs MaraDNS, it can save and load configuration files (SSH IDs, bootup commands) from the last three sectors of the floppy, it has support and autodetection for a large number of wired ethernet cards, and it allows me to upload files to my web server and chack my email without needing to tote my laptop everywhere. All of this on but one floppy.

Now, as it turns out, it is possible to put a complete graphical system on a single floppy. The old Amigas had a complete desktop environment that fit on all of two 720k floppies; more recently, QNX made a demo disk that included network support, a graphical environment, and even an HTML browser as good as or better than Dillo...all on a single floppy!

Alas, X is far too bloated to make a Linux version of this possible. What is far more practical is to place a full Linux system, with a full blown Busybox, the real glibc (so I don't have to recompile everything), Opera (Opera is smaller than Firefox, more secure and bug free than Firefox, and I can't figure out what the absolute minimum set of files Firefox needs to run correctly in a mini Linux system), X with a minimum set of fonts (I like Verdana so much that I have made bitmap versions of Verdana at various sizes), Fvwm, SSH, and Rxvt. All of this can easily fit on a single bootable 200 meg mini CD without resorting to a compressed image; right now I have a working chroot() environment with X, Opera, Fvwm, and Rxvt, all of which takes up less than 60 megs.

Note that is some non-free software here. In particular, Opera and the Verdana font. Basically, Firefox sucks compared to Opera from a security and embedded standpoint. In a recent report on Linux security vulnerabilities, Firefox/Mozilla generated the lion's share of security updates. It is the new BIND8: A piece of software with more security holes than swiss cheese that we have to put up with. Just as the proprietary (but free) djbdns was the only option for a secure DNS system in the late 1990s, the proprietary (but free) Opera is the only really secure option for a web browser usable with modern web sites in the 2000s. I don't want something as insecure as Firefox on a disc I will burn once and will be unable to reburn.

The reason why I include Verdana is that nothing beats Verdana in terms of being a readbale font on older non-true color displays. I tried to make a font as readable as Verdana but it's a lot harder than you might think. Since I'm only using bitmap renderings of Verdana and not the font itself, I'm legally OK because of a loophole in USA copyright law that makes a bitmap rendering of a font not subject to copyright protection.

I've changed the name of the font to Vorpal and removed all references to Microsoft in order to avoid trademark issues. That said, I will probably not distribute the actual "Vorpal" font (and, of course, I won't distribute Opera) when I get the Mini-CD system to work and distribute it.

The updated MOOF is available at