[oe] Base image dependencies
Rod Whitby
rod at whitby.id.au
Mon Dec 24 00:52:00 UTC 2007
Koen Kooi wrote:
> As part of the OE-testlab I wrote a .dot generator for image contents
> and made a png of
> Angstrom-base-image-glibc-ipk-2007.11RC2-ixp4xxbe.rootfs.tar.gz:
>
> http://ewi546.ewi.utwente.nl/tmp/test-nolibc-noupdate-nq8.png
>
> This shows the Depends: (solid lines) and Recommends: (dashed lines)
> fields of the installed packages, but with 'libgcc', 'libc6' and
> 'update_' filtered out for readability.
As a result of this excellent analysis by Koen (thanks!), I'm trimming
task-distro-base and task-machine-base out of base-image. There are too
many things that distros and machines add using DISTRO_EXTRA_* and
MACHINE_EXTRA_* which are not strictly required to boot, get networking
up, and run ipkg install.
For example, the x86.conf file adds "kernel-modules" to
MACHINE_EXTRA_RDEPENDS which would mean that a base-image for x86 has
*all* kernel modules included in the rootfs. Things like avahi, whilst
very convenient, are also not strictly required and can be installed
later using tasks.
In my opinion, anything that a machine needs to boot, be accessible by
the default network interface, and be able to run a package manager (if
one happens to be installed by some other means) should be included in
MACHINE_ESSENTIAL_* (and therefore becomes part of task-boot).
Perhaps we also need a corresponding DISTRO_ESSENTIAL_* set of variables
for things that distro requires to boot and be accessible by the default
network interface, and be able to run a package manager (if one happens
to be installed by some other means). Feed configs would fit into this
category.
-- Rod
More information about the Openembedded-devel
mailing list