diff --git a/meta-arm-autonomy/README.md b/meta-arm-autonomy/README.md index 1f80a054..d0c6181d 100644 --- a/meta-arm-autonomy/README.md +++ b/meta-arm-autonomy/README.md @@ -40,6 +40,11 @@ Images ------ This layer is adding the following images: +* arm-autonomy-host-image-minimal: this image includes all elements required + to create a minimal arm-autonomy-host system. This includes xen and tools to + manage xen guests. This image depends on 'arm-autonomy-host' distribution + feature. + Recipes and classes ------------------- This layer is adding the following recipes and classes: diff --git a/meta-arm-autonomy/recipes-core/images/arm-autonomy-host-image-minimal.bb b/meta-arm-autonomy/recipes-core/images/arm-autonomy-host-image-minimal.bb new file mode 100644 index 00000000..fb0a0b7d --- /dev/null +++ b/meta-arm-autonomy/recipes-core/images/arm-autonomy-host-image-minimal.bb @@ -0,0 +1,27 @@ +# Recipe to create a minimal Arm Autonomy stack host image + +DESCRIPTION = "Arm Autonomy stack host minimal image" + +inherit core-image + +LICENSE = "MIT" + +# Includes minimal set required to start and manage guest. The xen specific +# modules are not explicitly included as they are built as part of the kernel +# image for performance reasons. Includes all kernel modules anyway as it makes +# life easier and does not cost that much in size. +IMAGE_INSTALL += " \ + packagegroup-core-boot \ + packagegroup-core-ssh-openssh \ + kernel-modules \ + xen-base \ + qemu \ + " + +python __anonymous() { + if bb.utils.contains('DISTRO_FEATURES', 'arm-autonomy-host', False, True, d): + raise bb.parse.SkipRecipe("DISTRO_FEATURES does not contain 'arm-autonomy-host'") + + if bb.utils.contains('DISTRO_FEATURES', 'xen', False, True, d): + raise bb.parse.SkipRecipe("DISTRO_FEATURES does not contain 'xen'") +}