Today I had one of those rare wins with d-i, where I identified something it
didn't do, that I wanted it to do, and could actually do something about it.
As I thought yesterday,
it was relatively easy to add the ability to create a RAID1 array consisting
of one 1 active device. I just had to remove the logic that said "thou must
specify two devices if you've said there are two active devices" and
duplicated the existing logic used for hot spare devices where if you
specified less hot spare devices than what you initially indicated, it
assumed the rest were missing.
The slowest part has been testing the patch. The upside of testing the
install inside qemu is I could have mdcfg open in gvim in one window, hack
it with nice syntax highlighting, then pop over to the qemu window, and
duplicate the changes to the live mdcfg with nano, then fiddle with my md
devices. Rinse and repeat, until it was all working.
Thanks also to Joey's terrific instructions,
building a full d-i image to test my modified udeb was a breeze. Pity I
couldn't say the same for performing the install in qemu. It's running
exceptinally slow, compared to yesterday. It only took about three hours to
do a complete install with LVM on RAID1, but today, with the monolithic
mini.iso I built from a current checkout of d-i, it's 51% through installing
the base system on a single degraded RAID1 device, some 5-6 hours after I
started it off.