Noirin’s post has inspired me to outline a little just what it is I do with/for Fullstory, Kanotix and Klik.
I can’t quite remember when I first attempted to make a contribution to Knoppix though it was probably in the lead up to the Linuxworld a couple of years ago. Since then all Knoppix releases (afaic) had lang=ie cheatcode support to give you some Irish locale settings (for English in Ireland) and I also submitted a patch or two in the startup scripts relating to things like only running hwclock after the timezone had been set correctly. Around the same time I also discovered a kernel bug relating to kernel command line parsing and managed to get Fabian “I am not a kernel hacker” Franz to go kernel hacking to discover the exact problem (afair the kernel could only set 9/10 foo=bar style command line variables) and cause (a fairly recent patch in the 2.6 tree). This issue was only one of a number of issues I had with doing a Knoppix remaster for LinuxWorld that year (another was somehow losing a mounted loopback filesystems contents when the underlying filesystem was accidently filled, unfortunately I could never follow up on what happened as it became panic time). There were a few other small little patches that crept in Knoppix somewhere (one in the installer anyway).
My first involvement with klik was on the Knoppix Forum, attempting to persuade it’s author that any distributed klik code should be Free (in fact GPL). The collective arguments of a few convinced him, but despite offering the option of encouraging developers as a reason to go GPL, I didn’t actually contribute in the slightest to klik for around a year. At that point (and I have no real recollection what inspired me), I ended up extending klik so that it’s dependencies on kde were virtually severed (it still isn’t perfect, but there’s no real excuse other then time for making it so). I ended up talking to Simon Peter, the father of klik, quite a bit at this time and we talked out and developed a number of improvements including changing to cmg (compressed images) from AppDirs and writing a script to help prepare a common baseline to help klik recipies run on unknown distributions (thanks to the now new “next generation klik based on serverside-apt”). Klik has attracted more contributors of various sorts over the last year and I’m now in the unenviable position of being one of the people who can fix (and break) klik completely, helping to provide better support to our users.
When klik made the change to cmg files, I ended up crafting a custom zAppRun program for Kanotix to meet Kano’s desires in how fstab should be setup and used. I don’t think this was my first actual Kanotix code contribution, though it might have been, but it is far from the only one. With the Kanotix 2005-04 release zAppRun now uses fuse with fuseiso/fusecram by default if they are available (this has been a roaring success with not one error with not one problem reported by kanotix/klik users yet). There are two other main areas of Kanotix I am involved with (apart from testing new code or release candidates on some of the particular hardware or setup) and they are poor mans installs and netcardconfig.
For those who don’t know, a poor mans install of K*ix is where you essentially copy the cd contents to a hard disk and run K*ix from there rather then a cd/dvd. My involvement in this started with trying to add support for using ntfs filesystems for a poor mans install and also to use the iso image rather then having to unpack it. Between some hackery of my own, and discoveries of pieces others had put together (and help from FF again) I came up with a working solution for Knoppix but it would never be included in an official release. Knopper didn’t really see the need for it and certainly not enough to justify including the loop module into the initrd, let alone the ntfs module or even a trivial losetup FF wrote (the patch got pared down to not needing the ntfs module but using it if available and Fabians tiny-losetup was down to 3.2k). However implementing the patch into Kanotix was pretty trivial and only required additions kano was willing to make so the kanotix knoppix-autoconfig was patched and kanotix fromiso cheatcode was born. I subsequently sent a patch to morphix (which I believe was applied a lot later when it was noticed lurking in sourceforge though I’m sure I’d told alextreme on irc that it was coming) and wrote/booted it for dsl though they also didn’t seem interested.
When unionfs arrived on the scene and was heading for inclusion in kanotix, I thought I saw the need to allow a bit more flexibility in the cheatcodes and happily again Kano and I could agree on what to do. Kanotix three unionfs cheatcodes, a simple level of persitence (and modification of the main loopback filesystem), were born. Coming up to the latest release of Kanotix (2005-04), my hands in the cheatcodes and Poor Mans install features are to be seen again though this time with some additional cheatcodes to block out using individual config files along with a reordering of how these config files are implemented. It will run a config file on the cd before a user supplied config file, though the user can now stop the on cd config file by being run with the noconfigcd cheatcode.
A total case of scratching my own itch, when I heard Kanotix developer/packager slh grumble about it again, was merging the wlancardconfig code (which is a dialog based script to setup iwconfig) with netcardconfig (a dialog based script to ifconfig) and therefore including the wireless setup into the interfaces file. Along the way I added fixes and tweaks all over the place in response to feedback from Kano and kelmo (who does “wireless driver” work for kanotix) including the start of some wpa support. I wish I had more time to give to this in particular as I have a bunch of improvements to make, but for now they are still things I hope someone else will do, or which perhaps I should have tried to get started on instead of writing a blog post like this! As it is there is often a new change here or there to be included into this code as the state of wireless (let alone on Linux) is hardely stable.
During all this, I wanted one obvious and central location for the development of all the Knoppix-alike distros to take place. I wasn’t the only one with some sort of a vision in that direction so eventually, after annoying FF virtually every time I spoke to him for a long time, fullstory on berlios.de was eventually born to be such a place. FF sent the requests to berlios when he had finally decided that fullstory was the most suitable name from all the candidates I kept coming up with, I wish I had a log of all the names I came up. Slh was onboard from very early on and a repository layout was agreed along with a vague outline of what we were aiming to do. The first stage was to get a full working set of code in there and then to make changes across the board to try and bring a greater consistency and flexibilty (/etc/default/distro in Kanotix 05-04 is a sign of this, though the wholesale changes are only really planned to happen for the next kanotix release).
So I have 3 freenode irc channels I lurk on far too much, all slightly interconnected and all manned by the developers of all aspects of the systems involved which leads me to having a chance to both give my 2c on just about anything or to hear a problem I could fix and try and figure out if I really have the time/inclination to do it, like the netcardconfig, which I could then find myself lumbered with as long as I am willing to maintain and improve it.
By the way, lang=ga is in Kanotix 2005-04 … anyone who can meaningfully test an irish language locale could you? Let me know about any improvements which could/should be made! If you have _any_ use of an Irish language Live Linux please let me know about it … I may have something for you to test and you may be able to help me give you what you want!