Jonathan Nieder wrote:

> If we had time to update debootstrap and cdebootstrap (multistrap
> requires manual work anyway so it isn't relevant here), we could even
> avoid that Pre-Depends[*] and that would be the Right Thing to do.
[...]
> [*] Will go into that in a separate message.

 * introduce a "bootstrap" maintainer script.  It uses only minimal
   POSIX facilities to perform some steps of bootstrapping _before_ the
   initial boot into the target environment, and can be used to perform
   such important steps as preparing dpkg's initial database and setting
   the initial targets of the /bin/sh and /bin/awk symlinks so the target
   system has the essential functionality needed to continue the
   bootstrap from the beginning.

 * Make sure bootstrapping tools in stable support the "bootstrap"
   maintainer script, so they will be capable to bootstrapping stable+1.

 * Add a bootstrap script to dash to creates the initial /bin/sh symlink.
   Or to some other package --- it doesn't really matter, as long as the
   /bin/sh symlink is created during the initial unpacking on the host
   environment and is not owned by any package.

 * Use existing well-tested maintainer script magic to handle upgrades
   from versions in which both bash and dash had the /bin/sh symlink in
   their files list.  The new versions of both packages would not have
   the symlink.

A more lightweight version of the same thing would be the following:

 * Instead of a generic "bootstrap" maintainer script, just teach
   bootstrap tools to set up /bin/sh, just like some of them have
   hardcoded magic to write /bin/awk already.

That's more lightweight but not really lightweight enough for wheezy.

Based on an idea by Bastian Blank, if I remember correctly.



-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to