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

Re: debian-installer (Was: Wishlist for woody+1)



Drew Parsons wrote:
> I'm curious, is it possible to summarise what will make debian-installer so
> much better than boot-floppies?  What is it about boot-floppies that makes it
> so hard to maintain between releases?

Well it's a huge morass of incrementally and spottily maintained code
that seems to have just accreated together for starters. It's hard to
get up to speed on it, hard to build it, hard for third parties to make
any customizations of it. It's a big monolithic thing that has to
somehow support a plethora of different uses: multiple architectures,
widely varying hardware, installation from floppies, CD, network, etc.
At the same time, it has to be made as small as possible, and this has
led to several ad-hackeries like special disks with various modules on
them and so on. It's a big lump of code. Little of it is generalized
enough to be usable after the install (if a user wants to reconfigure
something like their network, the interface they used originally is not
available). It has a single, hard-coded UI, althogh there has been at
least one attempt at a different UI. There is little provision for
automating installs, or doing a newbie-level install. Hardware detectio
is spotty, Since it's only used for installs, it's not an attractive
target for development except for a few sick weirdos (hi, Adam!). While
there is a good group of people working on it, there is little
individual ownership of peices of it, in stark contrast with the rest of
Debian. People break the boot-floppies all the time because they don't
understand how it interacts with the packages they maintain. 

Basically d-i addresses every point I mention above. For a bit more
depth on this, see doc/goals.txt in debian-installer cvs.

For a concrete example, the part of the boot floppies that built the
base system, before woody, was a really nasty Makefile that used a ton
of hacks and generated a big old tarball of base. This was hard to keep
up-to-date and every time a package in base changed a dep or started
asking a question at install time, it broke the boot floppies. The
tarball, while simple enough was huge and not very flexible. dbootstrap
came about as a direct result of us looking at this and working out how it
could be done better for d-i[1]; it addresses most of the problems while
introducing only a few others (more sensative to mirror breakage; harder
for floppy users; more complex from a user POV), and even when it breaks
it's a lot more visible than some obscure part of the boot-floppies that
only 10 people ever ran breaking used to be. 

Of course, we managed to bolt this onto the side of the boot floppies
for woody. I suppose we could keep redesiging stuff and bolting it onto
the side, but there comes a time when that just becomes unmaintainable,
and boot-floppies is uncomfortably near to it.

-- 
see shy jo

[1] And much sweat from aj.


-- 
To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: