Re: Some thoughts on a new installer
On Wed, 1 Nov 2000, Joey Hess wrote:
> I think you probably need to think this through some more.
> > 2. In novice mode the harddisk is automatically zapped, partitioned, made
> > bootable without any additional fuss of questions.
> This is basically supported by the debian-installer design, by letting
> the user specify that they only want to see high-level debconf
> Note that my design requires that the floppy contain merely:
> * a kernel
> * glue code
> * one set of installation media drivers (network drivers say)
Sounds very good!
> > 3. Essential packages are installed using dpkg in order of importance for
> > the system. Questions are asked as needed. One of the first modules to
> > install is presumablly debconf and apt.
> This is much harder than you make out. Read the nasty script in the
> boot-floppies source that does this now when creating the base tarball.
> It is not short, nor is it pretty. Bear in mind that dpkg has been known
> to use external programs (ar, tar, and even cat!), so you have to
> install all those types of things by hand too before you even have a
> working dpkg. Bootstrapping the rest of the base system from there isn't
> very pretty either. None of the packages in base declare depenancies on
> each other for one thing, and the unstated dependancies are highly
You do not need the nasty scripts. This whole mess can be done away with
if you just build the system based on installing dpkg as the first
package and then gradually add other components.
> > Gradually the installation systems files are replaced by the
> > real(tm) debian stuff.
> That's disgusting (tm). See below.
Umm. Emotions aside what is the problem? Files are in the same locations
and one could even make a "package" that registers all those files.
> > 1. No base system needed.
> Yes, but what a disgusting hack. Besides, if we do work around all my
> objections 2 paragraphs above, the debian-installer could in theory do
> this just as well; building up the base system from individual debs
> without using a base tarball.
The problem is that you probably need additional space. You have two
systems to maintain: One is the installation system and the other one is
the operating system you are trying to build.
> > 2. No udebs needed.
> The udebs are there to distribute the work of writing and maintaining
> this thing into easily swallowed chunks. They are there to let advanced
> users craft customized installers by picking a collection of udebs that
> will be available on them. They are a *feature*. They also incur a
> mere 11k of overhead; we already have the code written to deal with them.
That sounds good.
> > 4. The current boot-system can be simplified and used for two
> > purposes. The initial boot system as well as for a base for the future
> > installation.
> Again I think that's disgusting. I don't want *my* systems to rest on
> such a shaky foundation. I want every file and directory in them to be
> registered with dpkg and part of "real" Debian from the beginning.
There is nothing hindering you to register the installation system as dpkg
files. Does the .udeb scheme not include a registry for installed
files? The initial dpkg installation could include a initial database of
the files contained in the installation system for example.
> > 6. The detection of advanced hardware (such as video, mice etc) is
> > not necessary via the initial boot system. The initial boot system just
> > needs to provide one way to get to more .debs. Custom boot floppies could
> > be made for special media.
> > Boot-floppies could be generated for a CD boot which do not need NIC or
> > networking support.
> > Floppy installs could be customized for an installation via the
> > network. CD support eventually could be removed.
> All features shared with my design.