I have been working with several live CDs, and I have learned that it is very hard to pick exactly the one live cd that you need, it is a slow process, for you have to download it, then boot it and only then you can find out that it has this or that or is lacking this or that, or, you have to read a zillion websites and try to find the one that has all of what you need. I also noticed that lately there are a huge number of them. One can find a list of them at livecdnews.com website that lists the livecd by name and provides a link to that live CDs website. This website is great, however it is not enough for an experienced user looking for something very specific that he needs. To improve this simple list I have the following idea.
Instead of having just a list, there should be a file based database of information about each of these different live CDs. The file database could be accessable via numerous means, http, ftp, gstp and so forth. Users could download individual or all files gziped and perform powerfull grep searches on their own machines to find that particular live cd that has the very unique set of tools, libraries,kernels,modules,etc. One could take this project further, and create a relational database that would be automatically populated from the text based database, the relational DB should be accessable through the net to all, and anyone who wishes could query it's results. I suppose a simplified web based query mechanism could be created.
Further more, there needs to be a website so that users could post these files themselves, other users could perform independant verifications and so forth.
Although, I have not thought about the system on how to implement this

Here is a proposed file structure for the file based live-cd database (anyone, feel free to enhance it).
live-cd-name.version.download.html <-- a file containing link to mirrors or original location
live-cd-name.version.files-when-booted.txt
live-cd-name.version.files-when-mounted.txt
live-cd-name.version.executables.txt
live-cd-name.version.libraries.txt
live-cd-name.version.kernels.txt
live-cd-name.version.kernel-name-a.config.txt
live-cd-name.version.kernel-name-b.config.txt
live-cd-name.version.path.txt
live-cd-name.version.key-words.txt <-- this one is special, for it has to be generated by human...
live-cd-name.version.kernel-name-a.modules.txt <-- this one may be nice, however not necessary, since modules should be located in files-when-booted anyway
The key-words list could be special labels, such as those assigned by the live cd list maintainers, say this particular cd is for entertainment, has gui, is for security, diagnostics, whatever else.
It would also be very nice to include the versions of the particular executables and libraries, however at the moment I do not have any ideas on how to create such querying automagicly. Especially if library names do not follow standard naming conventions or binaries do not contain --version support.
Here are some crude scripts to get some of the files from booted livecds:
which $(ls $(echo $PATH | tr ":" " ") | grep -E "^[a-zA-Z]") > live-cd-name.version.executables.txt
find / -name "*.so" > live-cd-name.version.libraries.txt
echo $PATH > live-cd-name.version.path.txt
sudo find / -ls > live-cd-name.version.files-when-booted.txt
This one of course is for a mounted livecd (may not be of much value to the users, shrug)
sudo find /cdrom/ -ls > live-cd-name.version.files-when-mounted.txt
Anyway, the whole idea and the scripts need alot of work to make it easily usible for people to collect and post the live CD info. And, the fact that I would find a database of such files quite usefull, does not mean that others would, and that people would take the time to run the scripts and submit their findings to the website.
Any comments will be appreciated.
Sincerely,
Norris Pouhovitch
P.S.
I am posting this on the Linux forum, however, I do not see why this has to be linux specific, any *nix type of livecd could participate in this.