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

Changes in multistrap



The insserv/netbase problem is a bug in netbase - filed. #556399

The issue with dash in the current Squeeze multistraps is a
result of #546528 but the solution to be used in multistrap is simply
to remove the dash postinst during the initial multistrap setup. As
soon as multistrap is upgraded, the new postinst will work fine.

The problems with netbase are a symptom of a wider issue, not
restricted to insserv or dependency-based boot - that was just the
precipitating factor.

Another example is ifupdown:

Setting up ifupdown (0.6.9em1) ...
Creating /etc/network/interfaces.
insserv: Service checkroot has to be enabled to start service
ifupdown-clean insserv: exiting now!
update-rc.d: error: insserv rejected the script header
dpkg: error processing ifupdown (--configure):
 subprocess installed post-installation script returned error exit
status 1

checkroot comes from initscripts. Bug filed: #556402

multistrap, so far, has assumed that dpkg can always work it's own way
through a mass of packages and an almost completely empty system.
That is not how a Debian system is installed - everything is staged.
Core packages / required functionality goes in first, whether via
debootstrap or d-i, only then can the other packages be expected to
install properly. Usually it does work because dpkg resolves the
dependencies (this is what was wrong in netbase) to reconstruct the
staging done by debootstrap and d-i. Multistrap, especially in cross
mode, will utterly rely on this dpkg support. i.e. things will break in
multistrap while debootstrap is OK.

multistrap will therefore gain a step to only install certain packages
*after* everything else has been done. For native mode, this means that
multistrap has an extra config field - 'additional' - in each
repository section, listing the packages to be downloaded and installed
only after the rest of the system is ready. In cross-mode, these
packages will be added to the initial list (i.e. current behaviour).

Fixing cross-mode, therefore, means modifying the netbase package in the
repo to add the dependency on initscripts or wait for the bug to be
fixed. (For testing, I built a local NMU of netbase and added it to my
local Grip testing repo.)

[Local]
packages=
additional=ifupdown ntpdate
keyring=emdebian-archive-keyring
source=http://localhost/grip/
suite=squeeze

The bug fixes for the netbase and ifupdown packages will prevent the
need to use 'additional' for those actual packages (and ntpdate is fine
once netbase installs properly).

These changes are all for Squeeze support - testing with Lenny
continues until I'm sure that both are supported cleanly. (i.e. if you
want to use Squeeze and you therefore use em_multistrap from SVN,
remember to retain multistrap from the normal package to be able to
retain Lenny support until the testing is complete.)

-- 


Neil Williams
=============
http://www.data-freedom.org/
http://www.linux.codehelp.co.uk/
http://e-mail.is-not-s.ms/

Attachment: pgpxVL2MF3o8s.pgp
Description: PGP signature


Reply to: