Go to file
Bruce Ashfield 18c7f71383 vcontainer: add BBMASK for parse savings and suppress layer warnings
The initial vcontainer distro had no BBMASK at all, making it
effectively poky with fewer DISTRO_FEATURES. Every multiconfig parsed
the entire recipe universe even though container image builds only
need a small subset. With 4+ multiconfigs, the parse overhead is
significant.

Add vcontainer-bbmask.inc as a lighter alternative to vruntime's
aggressive BBMASK. It masks the same categories irrelevant to any
container/VM build (graphics, multimedia, desktop, virtualization
platforms, orchestration tools, meta-python, meta-filesystems,
meta-webserver) but keeps the OCI tooling that vruntime blocks:
umoci, container-registry, image recipes, sloci, oci-image-tools.

Masking entire layers (meta-python, meta-filesystems, meta-webserver)
produces BBFILE_PATTERN warnings because the layers are registered in
bblayers.conf (shared with the main build) but have zero recipes after
masking. BitBake provides BBFILE_PATTERN_IGNORE_EMPTY_<collection>
to suppress this, but checks it on self.data (the base datastore),
not per-multiconfig datastores. Setting it in the distro config has
no effect. Move the suppression to meta-virt-host.conf which is
included by the main build's local.conf and therefore visible to
the base datastore.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2026-05-10 20:15:50 +00:00
classes oci-multiarch: fix MC defaults, deploy dependency, and OCI layout 2026-05-10 13:58:10 +00:00
conf vcontainer: add BBMASK for parse savings and suppress layer warnings 2026-05-10 20:15:50 +00:00
docs vcontainer: add BBMASK for parse savings and suppress layer warnings 2026-05-10 20:15:50 +00:00
dynamic-layers kernel: drop 6.6 support 2025-02-11 23:19:51 +00:00
files wic: move files to files/wic 2026-04-09 13:51:26 +00:00
lib/oeqa/runtime/cases xtf: add testimage integration to run XTF test cases in OEQA 2021-09-02 16:36:23 -04:00
recipes-containers container-registry: add multi-arch OCI push support and tests 2026-05-10 13:58:45 +00:00
recipes-core systemd: add openssl PACKAGECONFIG for virtualization distro feature 2026-04-21 13:11:11 +00:00
recipes-demo image-oci: add multi-layer OCI image support with OCI_LAYERS 2026-02-09 03:32:52 +00:00
recipes-devtools python3-dotenv: Fix CVE-2026-28684 2026-04-29 20:01:23 +00:00
recipes-extended oci-multiarch: fix MC defaults, deploy dependency, and OCI layout 2026-05-10 13:58:10 +00:00
recipes-graphics/xorg-xserver global: overrides syntax conversion 2021-08-02 17:17:53 -04:00
recipes-kernel kernel: skip kcfg search path injection for kernels with kernel-cache 2026-03-12 19:06:40 +00:00
recipes-networking cni: Add CVE_PRODUCT to align with NVD CPE 2026-04-21 02:35:12 +00:00
recipes-support/ca-certificates ca-certificates: remove conditional SRC_URI entries 2026-04-28 11:27:58 +00:00
scripts oe-go-mod-fetcher: add license scanning for Go module dependencies 2026-04-28 18:49:19 +00:00
tests vcontainer: add BBMASK for parse savings and suppress layer warnings 2026-05-10 20:15:50 +00:00
.gitignore tests: add vcontainer --config / VDKR_CONFIG auth plumbing tests 2026-04-29 20:15:34 +00:00
COPYING.MIT Initial meta-xen layer documentation. 2012-06-21 15:51:11 -06:00
MAINTAINERS MAINTAINERS: add xtf and the raspberry pi dynamic layer for Xen 2021-12-16 21:45:00 -05:00
meta-virt-roadmap.txt docs: update meta-virt-roadmap 2026-02-09 03:32:52 +00:00
README.md sanity: default virtualization distro check to false 2026-03-10 13:41:16 +00:00
SECURITY.md docs: add SECURITY.md and rename README.md 2023-11-06 16:21:12 +00:00

meta-virtualization

The meta-virtualization layer is the authoritative resource for virtualization technologies in OpenEmbedded / Yocto built distributions. It provides support or both hypervisor-based virtualization (such as KVM, Xen, and QEMU) and system-level virtualization (Linux containers), along with the host and guest technologies required to build complete solutions ranging from embedded systems to full deep CNCF stack deployments.

The bbappend files for some recipes (e.g. linux-yocto) in this layer need to have 'virtualization' in DISTRO_FEATURES to have effect. To enable them, add in configuration file the following line.

DISTRO_FEATURES:append = " virtualization"

Depending on your use case, there are other distro features in meta-virtualization that may also be enabled:

  • xen: enables xen functionality in various packages (kernel, libvirt, etc)
  • kvm: enables KVM configurations in the kernel and autoloads modules
  • k8s: enables kubernetes configurations in the kernel, tools and configuration
  • aufs: enables aufs support in docker and linux-yocto
  • x11: enable xen and libvirt functionality related to x11
  • selinux: enables functionality in libvirt and lxc
  • systemd: enable systemd services and unit files (for recipes for support)
  • sysvinit: enable sysvinit scripts (for recipes with support)
  • seccomp: enable seccomp support for packages that have the capability.
  • vcontainer: enables vdkr/vpdmn virtual container runtime support, including kernel config fragments (9p, squashfs, overlayfs) and busybox utilities (base64, hexdump) required for container cross-install during image builds.

Dependencies

This layer depends on:

URI: git://github.com/openembedded/openembedded-core.git branch: master revision: HEAD prio: default

URI: git://github.com/openembedded/meta-openembedded.git branch: master revision: HEAD layers: meta-oe meta-networking meta-filesystems meta-python

Required for Xen XSM policy: URI: git://git.yoctoproject.org/meta-selinux branch: master revision: HEAD prio: default

Required for Ceph: URI: git://git.yoctoproject.org/meta-cloud-services branch: master revision: HEAD prio: default

Required for cri-o: URI: git://git.yoctoproject.org/meta-selinux branch: master revision: HEAD prio: default

Community / Collaboration

Repository: https://git.yoctoproject.org/cgit/cgit.cgi/meta-virtualization/ Mailing list: https://lists.yoctoproject.org/g/meta-virtualization IRC: libera.chat #meta-virt channel

Maintenance

Send pull requests, patches, comments or questions to meta-virtualization@lists.yoctoproject.org

Maintainer: Bruce Ashfield bruce.ashfield@gmail.com see MAINTAINERS for more specific information

When sending single patches, please using something like: $ git send-email -1 -M --to meta-virtualization@lists.yoctoproject.org --subject-prefix='meta-virtualization][PATCH'

License

All metadata is MIT licensed unless otherwise stated. Source code included in tree for individual recipes is under the LICENSE stated in each recipe (.bb file) unless otherwise stated.