On Tue, 2007-04-24 at 15:10 -0400, John (J5) Palmieri wrote:
At OLPC we need to support ext3 and jffs2 builds even more so than
livecd isos. Since most of the process is the same up until the final
image and bootloaders we would like to add this support into the livecd
tools so that all fedora projects use one toolchain. The question is
how can this best be accomplished?
I think passing a --variant switch (i.e. --variant=jffs2) should switch
the backend to generating the correct image.
I think adding an option
--target=[livecd|
disk_msdos_ext3|
disk_msdos_ext3_separate_boot|
ext3|
jffs2]
with this help text (for --help)
--target Choose target mode; defaults to livecd
livecd: A compressed livecd ISO with the root file system
disk_msdos_ext3 : An image with a MSDOS partitioning
table, a single ext3 data partition and
a bootloader for IBM PC hardware
disk_msdos_ext3_separate_boot : Like disk_msdos_ext3 only
that /boot is on a separate partition.
ext3 : A single ext3 partition
jffs2 : A jffs2 file system
is what we want. Perhaps disk_msdos_ext3_separate_boot can be achieved
by a separate option just like we have --skip-compression for
--target=livecd. Thoughts?
This also requires
template support and the ability to select templates to write out based
on the variant in the %post. For instance the olpc.fth file is read in
by the openfirmware. For jffs2 builds we point to the nand on the XO
machines. For ext3 we point to a USB disk. Also on ext3 we write out
grub entries for use with standard machines and vitalization software
like qemu.
The olpc.fth business is probably not something we need to teach the
livecd tools about at all; e.g. it's simply just something you do in %
post depending on the target. This raises the question of how do we pass
"options" like --target to kickstart so you can do different things
depending. An environment variable. Jeremy?
David