Go to file
Bruce Ashfield 9f40ce9b27 classes: add go-mod-vcs and go-mod-discovery for Go module builds
Add two new bbclass files that enable building Go applications using
git-based module resolution instead of network proxy fetches:

go-mod-vcs.bbclass:
  - Provides do_create_module_cache task to build GOMODCACHE from git sources
  - Implements pure Python h1: hash calculation with go-dirhash-native fallback
  - Creates properly structured module zip files and hash files
  - Handles module path transformations and case encoding

go-mod-discovery.bbclass:
  - Runs module discovery using the oe-go-mod-fetcher tool
  - Generates go-mod-git.inc and go-mod-cache.inc files
  - Supports bootstrap mode for initial recipe conversion

Together these classes enable fully offline, reproducible Go builds
by fetching module sources via git and constructing the module cache
during the build rather than relying on network access to module proxies.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2025-12-08 20:57:44 -05:00
classes classes: add go-mod-vcs and go-mod-discovery for Go module builds 2025-12-08 20:57:44 -05:00
conf conf/versions: update xen default to 4.21 2025-11-21 00:10:46 -05:00
docs podman: Add support for rootless mode 2022-07-15 17:11:58 -04:00
dynamic-layers kernel: drop 6.6 support 2025-02-11 23:19:51 +00:00
files fs-perms-nagios.txt: add perms conf file 2018-09-06 12:45:17 -04: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 lxc: Fix build with musl 2025-12-01 23:49:04 -05:00
recipes-core packagegroup-container: fix do_package_wrte_rpm issue in multilib build 2025-07-16 14:48:19 -04:00
recipes-demo demo: adapt to UNPACKDIR changes 2025-06-25 22:56:41 -04:00
recipes-devtools devtools: add go-dirhash-native for Go module hash calculation 2025-12-08 20:57:44 -05:00
recipes-extended xen/x86: fix QA errors 2025-12-03 17:25:26 -05:00
recipes-graphics/xorg-xserver global: overrides syntax conversion 2021-08-02 17:17:53 -04:00
recipes-kernel kernel/6.17: add support 2025-10-30 13:19:00 -04:00
recipes-networking openvswitch: small ptest fix adapt to UNPACKDIR changes 2025-07-20 22:36:08 -04:00
scripts scripts: wic plugin bootimg-biosxen drop helper to reuse bootimg_pcbios 2025-07-31 13:34:50 -04:00
wic xen: use bzImage for boot (instead of vmlinux) 2024-03-21 23:15:13 +00:00
.gitignore buildah: add seccomp and ipv6 to REQUIRED_DISTRO_FEATURES 2023-04-12 13:10:11 -04: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: roadmap: add missing workflow items 2019-10-28 11:56:10 -04:00
README.md docs: update README with improved layer description 2025-09-25 12:47:13 -04: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"

If meta-virtualization is included, but virtualization is not enabled as a distro feature a warning is printed at parse time:

You have included the meta-virtualization layer, but
'virtualization' has not been enabled in your DISTRO_FEATURES. Some bbappend files
may not take effect. See the meta-virtualization README for details on enabling
virtualization support.

If you know what you are doing, this warning can be disabled by setting the following variable in your configuration:

SKIP_META_VIRT_SANITY_CHECK = 1

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.

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.