summaryrefslogtreecommitdiffstats
path: root/recipes-containers/vcontainer/vcontainer-native.bb
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@gmail.com>2026-01-06 20:41:53 +0000
committerBruce Ashfield <bruce.ashfield@gmail.com>2026-01-21 18:00:26 -0500
commitde7407165c03b5703409638c717553febeacdced (patch)
treeab4bd4de36846e2c38ce4b6ae5eb602cadea416d /recipes-containers/vcontainer/vcontainer-native.bb
parent338b0bdf3228731e24502da7dad0ca4e76b81412 (diff)
downloadmeta-virtualization-de7407165c03b5703409638c717553febeacdced.tar.gz
vcontainer: add shared infrastructure and runner
Add core vcontainer infrastructure shared by vdkr and vpdmn: Scripts: - vrunner.sh: QEMU runner supporting both Docker and Podman runtimes - vcontainer-common.sh: Shared CLI functions and command handling - vcontainer-init-common.sh: Shared init script functions for QEMU guest - vdkr-preinit.sh: Initramfs preinit for switch_root to squashfs overlay Recipes: - vcontainer-native: Installs vrunner.sh and shared scripts - vcontainer-initramfs-create.inc: Shared initramfs build logic Features: - Docker/Podman-compatible commands: images, pull, load, save, run, exec - Memory resident mode for fast command execution - KVM acceleration when host matches target - Interactive mode with volume mounts - Squashfs rootfs with tmpfs overlay Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Diffstat (limited to 'recipes-containers/vcontainer/vcontainer-native.bb')
-rw-r--r--recipes-containers/vcontainer/vcontainer-native.bb43
1 files changed, 43 insertions, 0 deletions
diff --git a/recipes-containers/vcontainer/vcontainer-native.bb b/recipes-containers/vcontainer/vcontainer-native.bb
new file mode 100644
index 00000000..1d19ac1b
--- /dev/null
+++ b/recipes-containers/vcontainer/vcontainer-native.bb
@@ -0,0 +1,43 @@
1# SPDX-FileCopyrightText: Copyright (C) 2025 Bruce Ashfield
2#
3# SPDX-License-Identifier: MIT
4#
5# vcontainer-native.bb
6# ===========================================================================
7# Native recipe providing vrunner.sh for container cross-installation
8# ===========================================================================
9#
10# This recipe installs vrunner.sh into the native sysroot so that
11# container-bundle.bbclass and container-cross-install.bbclass can use it
12# to cross-install containers into target images.
13#
14# Note: This does NOT build the blobs. Blobs must be built separately via
15# multiconfig (see vdkr-initramfs-create, vpdmn-initramfs-create).
16#
17# ===========================================================================
18
19SUMMARY = "Container cross-install runner script"
20DESCRIPTION = "Provides vrunner.sh for cross-installing containers into images"
21HOMEPAGE = "https://git.yoctoproject.org/meta-virtualization/"
22LICENSE = "MIT"
23LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
24
25inherit native
26
27# Runtime dependencies for vrunner.sh
28DEPENDS = "coreutils-native socat-native"
29
30SRC_URI = "\
31 file://vrunner.sh \
32 file://vcontainer-common.sh \
33"
34
35S = "${UNPACKDIR}"
36
37do_install() {
38 install -d ${D}${bindir}
39 install -m 0755 ${S}/vrunner.sh ${D}${bindir}/vrunner.sh
40 install -m 0644 ${S}/vcontainer-common.sh ${D}${bindir}/vcontainer-common.sh
41}
42
43BBCLASSEXTEND = "native"