Currently, install classes (server, workstation, laptop, etc.) are hard-wired into anacoda and reside in the install image. It would vastly increase the flexibilty and usefulness of the install class concept if, instead, these could be loaded dynamically at runtime. This way, enterprise users (or aspiring hackers) could make their own install classes without having to hack up and rebuild the installer itself. Currently, there is a sort of "magic" tie between component groups listed in the comps file and their mentions in the install classes -- the interaction between the "hidden" install class .py files and the contents of the comps file isn't at all obvious. This suggests to me that it would make sense to put the install class .py files -- they're small! -- in the base directory right next to the comps file. To avoid having to do directory searches to find the available classes, perhaps they should actually be listed explicitly in the comps file itself. (Using some new syntax?) This idea is about 3/4 baked -- a little better than half. I'm more than willing to help think of ideas for making this work, and perhaps even could work on the code if that would be helpful.
Why not change this against "7.3"?
I figured I'd mark it against the beta and let Red Hat folks open it up if they're so inclined -- easier to do that than to go the other way.
To be clear -- I don't mean to include the contents of the *.py installclasses files in the comps file, but rather to include *pointers* to the various ones there.
What do you think jeremy?
I want to do something like this, but as previously expressed on testers-list a few times, just dropping random python files in RedHat/base/ isn't going to cut it.
I think python files pointed to by the comps file (or perhaps some other index file) would work. If necessary, that file could contain MD5sums and anaconda could deal intelligently with failure there.
If you create a file product.img in RedHat/base/ now, it will get mounted during the installation. The file should be an ext2 formatted floppy. Create an installclasses/ dir and put any installclasses you want to be available there.
Thanks; you rock!