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

Re: Google Summer of Code: Installer for Hurd



On Sat, May 06, 2006 at 10:38:08AM +0200, Michael Banck wrote:
> Ogi wrote:
> > Is the work of Colin Watson on porting d-i to hurd publicly available?
> 
> I don't think it is currently. He checked in some parts of it last year, but
> apparently has some more changes which were not quite ready yet in his local
> tree. I talked to him and he agreed to share them to whoever will do the SoC
> project, and said he could also be helpful in getting any new changes
> applied to the d-i codebase.

Indeed; if you manage to get the damn thing to boot, I'll be on it like
a shot. :-)

Here's the diff from my working d-i tree:

  http://people.debian.org/~cjwatson/d-i/hurd/d-i.diff

I've checked in some of the more generally-useful bits over the last
couple of days, so you'll need a very current d-i tree to apply it to.
'chmod +x installer/build/util/hurd-genext2fs' after applying this.
There's also a busybox diff (against Bastian's development tree at
http://waldi.eu.org/svn/debian/busybox/trunk/, although I think somewhat
out of date):

  http://people.debian.org/~cjwatson/d-i/hurd/busybox.diff

I've been avoiding checking in the Hurd-specific bits (or sending
patches, in the busybox case where I don't have direct commit access)
until I at least got it to boot.

My feeling was that I was very close to getting it working, but just
couldn't quite get over the last hump. The hard bits are the
/libexec/runsystem implementation in rootskel, which I mostly cribbed
from the Hurd live CD, and the grub configuration to try to use
/install/initrd.gz on the CD as the root filesystem from the word go.
One of my goals here was to avoid having to have too huge a pile of
Hurdish stuff in the top-level ISO9660 filesystem on the CD (I still
think this is a desirable design goal, to make d-i as independent of
debian-cd as possible). I still think the tricks in the grub
configuration, which I dug out of an old post by Roland McGrath I think,
are the best way to achieve this in a Hurdish way, and they certainly
avoid a lot of complexity in /libexec/runsystem, but it's kind of hard
to debug what's going on when the system doesn't boot. Somebody who has
time to rebuild the initial Hurd translators with debug statements
liberally sprinkled through them could probably sort this out reasonably
quickly.

As Michael says, I'm happy to help, either with general d-i advice or
with committing bits. After sending a few sensible patches it's
generally fairly easy to get commit access to d-i yourself.

Cheers,

-- 
Colin Watson                                       [cjwatson@debian.org]



Reply to: