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

A few more multistrap questions..



Forgive me if these are obvious, but I've come up with a few questions on the operation of multistrap while fine tuning my multistrap configuration.  It is now working with Grip much better (thanks all for the previous help on 'components' for dev packages).  For the basis of my questions I have listed an example config file below.

First, it doesn't seem to matter to multistrap which stanza a package is listed under.  It downloads it from what I surmise is the latest version from the collective sources available (the documentation seems to confirm this behavior).  In this it seems to treat Grip (em1 suffix) sources as later than Debian sources.  Is this a correct interpretation?  For example, I currently have wget listed under my Debian stanza (just as a test), yet it is downloaded from the emdebian Grip repository.

Get:139 http://www.emdebian.org/grip/ squeeze/main wget armel 1.12-2em1 [147kB]

So assuming the above is true, I take it that Grip packages will always be preferred (if they exist) by multistrap over the Debian fallback, and if one wanted one package in particular to come from the Debian fallback, one would need to put it in a local repository and either change the suite (which multistrap can explicitly key off of), or recompile it to look like a later version.  (Note this is a hypothetical question, I don't have a particular need at the moment)

Next, I was trying to separate out the -dev packages so that I can build two different kinds of root filesystems, one with the -dev packages and one without.  This brings me to a different question.  I tried putting some of the -dev packages in a separate stanza (Grip-dev) in a variant file.  That worked, but elicited a warning that there were duplicate sources.list entries

W: Duplicate sources.list entry http://www.emdebian.org/grip/ squeeze/main armel Packages (/opt/multistrap/fs/squeeze-grip-ilom-dev/var/lib/apt/lists/www.emdebian.org_grip_dists_squeeze_main_binary-armel_Packages)

I then tried the Grip-dev stanza without any extra lines (source, keyring, suite, components) and got a different warning about uninitialized value

Use of uninitialized value $keyrings{"grip-dev"} in join or string at /usr/sbin/multistrap line 319.

Is there a way to have multiple packages= lines in different stanzas for the same repository, so that a cascade can be constructed that either includes or does not include various packages without ending up with the warnings or the duplication of sources.list entries?  I have avoided the multiple entries by listing only one of the stanzas in the aptsources= line, but the warning caught my eye.

Thank you very much for your time,

-Jim Heck

**** squeeze-grip-ilom.conf ****

[General]
arch=armel
directory=/opt/multistrap/fs/squeeze-grip-ilom
# script to setup the initial root filesystem
setupscript=/opt/multistrap/scripts/initialrootfssetup.bash
# same as --tidy-up option if set to true
cleanup=true
# same as --no-auth option if set to true
# keyring packages listed in each bootstrap will
# still be installed.
noauth=false
# extract all downloaded archives (default is true)
unpack=true
# whether to add the /suite to be explicit about where apt
# needs to look for packages. Default is false.
explicitsuite=false
# aptsources is a list of sections to be used
# the /etc/apt/sources.list.d/multistrap.sources.list
# of the target. Order is not important
aptsources=Grip Debian
# the bootstrap option determines which repository
# is used to calculate the list of Priority: required packages
# and which packages go into the rootfs.
# The order of sections is not important.
bootstrap=Grip Debian

[Grip]
packages=base-files base-passwd bash bc binutils busybox coreutils debianutils dhcp3-client diff dpkg electric-fence expect file findutils fuse-utils gawk gcc gdb gettext gettext-base grep gzip hostname ifenslave-2.6 ifplugd ifupdown initscripts iptables klogd less libc6 libcap2 libdmalloc5 libesmtp5 libncurses5 libnss-ldap libpam0g libpam-ldap libpam-modules libpam-radius-auth libpam-runtime libradius1 libxml2 login logrotate lslk lsof ltrace makedev mawk module-init-tools mount mtd-tools ncurses-base netbase netcat net-tools ntpdate nvi passwd pciutils portmap procps psmisc radiusclient1 sed ssh strace sysklogd sysstat sysvinit sysv-rc tar tcl8.4 tclreadline tcpdump tftp-hpa time traceroute util-linux zile
source=http://www.emdebian.org/grip
keyring=emdebian-archive-keyring
suite=squeeze
components=main dev

[Debian]
packages=wget
source=http://ftp.debian.org/debian
keyring=debian-archive-keyring
suite=squeeze


**** squeeze-grip-ilom-dev.conf ****

[General]
include=/opt/multistrap/scripts/squeeze-grip-ilom.conf
directory=/opt/multistrap/fs/squeeze-grip-ilom-dev
# the bootstrap option determines which repository
# is used to calculate the list of Priority: required packages
# and which packages go into the rootfs.
# The order of sections is not important.
bootstrap=Grip Grip-dev Debian

[Grip-dev]
packages=expect-dev libacl1-dev libattr1-dev libblkid-dev libc6-dev libcap-dev libdaemon-dev libdmalloc-dev libesmtp-dev libfuse-dev libgcrypt11-dev libgdbm-dev libgpg-error-dev libmagic-dev libncurses5-dev libpam0g-dev libpcap0.8-dev libpopt-dev libradius1-dev libreadline-dev libsasl2-dev libssl-dev libwrap0-dev libxml2-dev tcl8.4-dev
source=http://www.emdebian.org/grip
keyring=emdebian-archive-keyring
suite=squeeze
components=main dev



Reply to: