[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Porting debian-installer to kfreebsd

Hash: SHA1

As kfreebsd gets closer and closer to meeting release qualifications,
I think its a good time to look at porting d-i to kfreebsd. The
current installer is, without a doubt, a hack :-P.

There has already been some work in extending d-i to non-linux
platforms, hurd-i386 used a linux-based d-i port for their installer
for awhile (it appears this is no longer used though). Since Linux
can't run hurd binaries, this port essentially extracted all the
dpkg's into /target, and then had the user, on the first reboot, run
/native-install to handle configuration. Obviously this is non-ideal,
and in kfreebsd's case, non-feasible as LInux can't currently write to
UFS2 based file systems.

Porting d-i is however rather non-trival, in general, the following
would need to happen.

On the archive side of things:
- - mini-dak will need to be extended to be able to put udeb's in
installer-kfreebsd-* instead of binary-kfreebsd-*. This special
package group is used on netinst CDs to load modules; if you ever done
a low memory, or advanced install, this is where d-i gets the list of
modules to install.

On actually just running d-i:
- - the d-i image creation scripts need to be extended to create a
kfreebsd based live CD instead of using linux. This shouldn't be too
difficult to do as parts of the current script for generating liveCDs
can be recycled into this. (the hardest bit is adding /boot/loader
support, or using grub, and cheating ;-)).

On the porting side of things:
- - New d-i modules need to be written for handling disklabels
(internally, d-i simply uses debootstrap to install onto target, so as
long as this is fessible, no special modification to the bulk of d-i
will be needed).
- - Partition and disk labeling will have to be added (I don't know if a
full blown port of partman would be needed, it might be just
sufficient to call freebsd disk label)
- - /boot/loader udeb packaging and module (should be straight forward
enough, install the files, install /boot/looader to the MBR).


(PS: I am somewhat new here, although I've been lurking in #gnu-kbsd
for awhile, and I'm helping to do an unoffical kfreebsd lenny release,
but more on that in another email :-)).
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: http://getfiregpg.org


Reply to: