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

Re: multistrap test



On Wed, 28 Apr 2010 17:55:45 +0200
"Hoefle Marco" <Marco.Hoefle@nanotronic.ch> wrote:

> Hello,
> my first multistrap test was successful, I like this approach more

Thanks, but please include the version of multistrap used. (This is
just one reason why bug reports are better than mailing list posts -
the version is included automatically.) My tests will be done with
multistrap 2.1.3 from Debian experimental and fixes will go into
multistrap 2.1.4, also heading into experimental. (Things need to
settle a bit more before I disturb 2.0.9 in unstable.)

> than the old emsandbox I used before.
> 
> A few points I have:
> - udev in grip squeeze (151-3em1) does not detect mtbblockx devices,

(Seems to work on my Grip box... Have you tested the x86 package at
the same version? If so, have you reported a bug against the Debian
package?)

> I replaced the udevd executables with an older version from another
> embedded distro and it worked as expected. Thus I tried this: 
> [General]
> arch=armel
> directory=rootfs_unconfigured
> cleanup=true
> noauth=true
> unpack=true
> debootstrap=Grip
> aptsources=GripSqueeze GripLenny Debian

Problem 1: 

bootstrap is for packages that you use to build the rootfs.
aptsources is for the sources you want listed inside the rootfs for
runtime. 

You won't get packages from GripLenny or Debian included in the initial
rootfs unless you list those sections in debootstrap.

(That option will be renamed to bootstrap or rootfs in future, support
will be retained for the existing setting but I'll see about changing
the docs for clarity.)

The distinction probably wasn't clear in the early versions of
multistrap. Please file a minor/wishlist bug so that I don't forget to
add / clarify the documentation.

With that fixed, I get the version of udev you requested:
Get: 3 http://ftp.ch.debian.org lenny/main udev 0.125-7+lenny3 [259kB]
...

Selected version 0.17-29 (Debian:5.0.4/stable) for ftpd
Selected version 3:20100214-1em1 (EmdebianGrip:1.1/testing) for iputils-ping
Selected version 1:5.5p1-2em1 (EmdebianGrip:1.1/testing) for openssh-server
Selected version 0.17-36em1 (EmdebianGrip:1.0.1/stable, EmdebianGrip:1.1/testing) for telnetd
Selected version 0.125-7+lenny3 (Debian:5.0.4/stable) for udev
Selected version 0.86-4em1 (EmdebianGrip:1.1/testing) for usbutils

Problem 2: you don't specify a Grip section and you don't 'include' a
conf file that does. This is where multistrap needs to improve the
error reporting - please file a bug report against the Debian package
- minor, asking for clearer error reporting in the --simulate option.

Note that it is *intentional* that mismatched values have no effect -
it is useful in how more complex configurations can be used. As with
other options, this is under review but would add a lot of code to fix.
(It could be added to the --simulate output - in a "did you forget this
bit" section with less code churn, I'll try that for 2.1.4 but file a
bug so that I don't forget.)

> I still get the squeeze version instead of the the lenny one
> (0.125-7em1).

Wrong config in bootstrap vs aptsources. See above.
 
> -the ftpd package is missing in grip, thus I use the normal Debian
> repository.

That can be added. (In fact, I just have - it'll find it's way into
Squeeze in due course.)

> - I am configuring the generated multistrap fs with qemu-arm. I need

Problem 3: Don't use qemu. Test locally - multistrap is
architecture-neutral in terms of whether the config works or not.
Override the architecture on the command line for tests. Then you can
test the chroot too.

Problem 4: There was a bug in multistap which I'll fix in 2.1.4
(experimental) where some Priority: required packages were omitted. You
can solve this in the meantime by explicitly adding 'dash' or 'bash' to
your GripSqueeze packages config.

> DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true
> LC_ALL=C LANGUAGE=C LANG=C dpkg --configure -a results in:
> 
> Errors were encountered while processing:
>  dash
>  ifupdown
>  grip-config
>  bash

That is Debian bug 556402 - ifupdown has the wrong dependencies.

I'm going to look at trying to force the dependencies in the Emdebian
repository but it's not a good fix.

In the meantime, the removal of grip-config (see other email) means
that you don't get ifupdown unless you specifically require it.

> and finally another configure -a succeeds with all packages. Would be
> nice if one configure is enough.

Apart from ifupdown, this would have happened with a sorted config and
an explicit request for dash or bash.


I'm seeing one error with base-files - not sure how to fix this because
multistrap shouldn't generally go doing stuff to /etc/passwd (emsandbox
got into trouble doing that).
Setting up base-files (5.3em1) ...
chown: invalid user: `root:root'
dpkg: error processing base-files (--configure):
 subprocess installed post-installation script returned error exit status 1

This can be solved using the "reinstall" config of the new multistrap
(i.e. base-files is complaining that a user has not been created, fails
and then it (magically) appears later.)

Also, as grip-config is in Lenny (and cannot be removed from Lenny),
I've avoided using GripLenny in my tests of the rest of the config. If
there is a real bug in udev, it needs to be tested with the Debian
package, reported to Debian and fixed.

Adapted config: (Requires multistrap 2.1.3 or 2.1.4.)

Simulate report (includes my command line overrides for testing):
Bootstrap: debian, gripsqueeze
Apt sources: debian, gripsqueeze
Includes: 
Sources: http://ftp.uk.debian.org/debian/, http://www.emdebian.org/grip, http://www.emdebian.org/grip
Packages: ftpd, udev, usbutils openssh-server telnetd dash udev
Suites: lenny, lenny, sid
Components: main, main, main
reinstall: base-files
arch: amd64
dir: /tmp/multistrap/
unpack: true
no_authentication: 1

conf file:
(I had to change the debian mirror to get a fast enough download speed.)

[General]
arch=armel
directory=
cleanup=true
noauth=true
unpack=true
debootstrap=GripSqueeze Debian
aptsources=GripSqueeze Debian

[GripSqueeze]
packages=usbutils openssh-server iputils-ping telnetd dash udev
source=http://www.emdebian.org/grip
reinstall=base-files
keyring=emdebian-archive-keyring
suite=sid

[GripLenny]
packages=udev
source=http://www.emdebian.org/grip
keyring=emdebian-archive-keyring
suite=lenny

[Debian]
packages=ftpd
source=http://ftp.uk.debian.org/debian/
keyring=debian-archive-keyring
suite=lenny

Thanks for the test - please report the bugs and test again using at
least 2.1.3 from experimental or (ideally) once 2.1.4 appears in
experimental.

-- 


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

Attachment: pgppGNaVqfLPb.pgp
Description: PGP signature


Reply to: