diff options
| author | Bruce Ashfield <bruce.ashfield@gmail.com> | 2026-01-06 20:45:13 +0000 |
|---|---|---|
| committer | Bruce Ashfield <bruce.ashfield@gmail.com> | 2026-02-09 03:32:52 +0000 |
| commit | 8f6f746bb6075157fa175a2081e6b3dcd833a8a2 (patch) | |
| tree | cc0ed3530abeda331b74af3325e85542edabd703 /recipes-containers/vcontainer/files/blobs/vpdmn | |
| parent | 18074e0efe255a43ab9155171d08aa6e0d736b5f (diff) | |
| download | meta-virtualization-8f6f746bb6075157fa175a2081e6b3dcd833a8a2.tar.gz | |
vcontainer: add vpdmn Podman support
Add vpdmn - Podman CLI wrapper for cross-architecture container operations:
Scripts:
- vpdmn.sh: Podman CLI entry point (vpdmn-x86_64, vpdmn-aarch64)
- vpdmn-init.sh: Podman init script for QEMU guest
Recipes:
- vpdmn-native: Installs vpdmn CLI wrappers
- vpdmn-rootfs-image: Builds Podman rootfs with crun, netavark, skopeo
- vpdmn-initramfs-create: Creates bootable initramfs blob
The vpdmn CLI provides Podman-compatible commands executed inside a
QEMU-emulated environment. Unlike vdkr, Podman is daemonless which
simplifies the guest init process.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Diffstat (limited to 'recipes-containers/vcontainer/files/blobs/vpdmn')
| -rw-r--r-- | recipes-containers/vcontainer/files/blobs/vpdmn/aarch64/README | 26 | ||||
| -rw-r--r-- | recipes-containers/vcontainer/files/blobs/vpdmn/x86_64/README | 26 |
2 files changed, 52 insertions, 0 deletions
diff --git a/recipes-containers/vcontainer/files/blobs/vpdmn/aarch64/README b/recipes-containers/vcontainer/files/blobs/vpdmn/aarch64/README new file mode 100644 index 00000000..a4197779 --- /dev/null +++ b/recipes-containers/vcontainer/files/blobs/vpdmn/aarch64/README | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | vpdmn aarch64 Blobs | ||
| 2 | ==================== | ||
| 3 | |||
| 4 | This directory should contain the boot blobs for vpdmn aarch64: | ||
| 5 | |||
| 6 | Required files: | ||
| 7 | - Image : Linux kernel for aarch64 | ||
| 8 | - initramfs.cpio.gz : Tiny initramfs for switch_root | ||
| 9 | - rootfs.img : Ext4 root filesystem with Podman tools | ||
| 10 | |||
| 11 | Build instructions: | ||
| 12 | 1. Set MACHINE for aarch64: | ||
| 13 | MACHINE=qemuarm64 | ||
| 14 | |||
| 15 | 2. Build the blobs: | ||
| 16 | bitbake vpdmn-initramfs-create | ||
| 17 | |||
| 18 | 3. Copy from deploy directory: | ||
| 19 | cp tmp/deploy/images/qemuarm64/vpdmn/aarch64/Image . | ||
| 20 | cp tmp/deploy/images/qemuarm64/vpdmn/aarch64/initramfs.cpio.gz . | ||
| 21 | cp tmp/deploy/images/qemuarm64/vpdmn/aarch64/rootfs.img . | ||
| 22 | |||
| 23 | Once these files are present, vpdmn-native will automatically include them. | ||
| 24 | |||
| 25 | Alternatively, set VPDMN_USE_DEPLOY = "1" in local.conf to use blobs | ||
| 26 | directly from DEPLOY_DIR without copying to the layer. | ||
diff --git a/recipes-containers/vcontainer/files/blobs/vpdmn/x86_64/README b/recipes-containers/vcontainer/files/blobs/vpdmn/x86_64/README new file mode 100644 index 00000000..30ddb445 --- /dev/null +++ b/recipes-containers/vcontainer/files/blobs/vpdmn/x86_64/README | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | vpdmn x86_64 Blobs | ||
| 2 | =================== | ||
| 3 | |||
| 4 | This directory should contain the boot blobs for vpdmn x86_64: | ||
| 5 | |||
| 6 | Required files: | ||
| 7 | - bzImage : Linux kernel for x86_64 | ||
| 8 | - initramfs.cpio.gz : Tiny initramfs for switch_root | ||
| 9 | - rootfs.img : Ext4 root filesystem with Podman tools | ||
| 10 | |||
| 11 | Build instructions: | ||
| 12 | 1. Set MACHINE for x86_64: | ||
| 13 | MACHINE=qemux86-64 | ||
| 14 | |||
| 15 | 2. Build the blobs: | ||
| 16 | bitbake vpdmn-initramfs-create | ||
| 17 | |||
| 18 | 3. Copy from deploy directory: | ||
| 19 | cp tmp/deploy/images/qemux86-64/vpdmn/x86_64/bzImage . | ||
| 20 | cp tmp/deploy/images/qemux86-64/vpdmn/x86_64/initramfs.cpio.gz . | ||
| 21 | cp tmp/deploy/images/qemux86-64/vpdmn/x86_64/rootfs.img . | ||
| 22 | |||
| 23 | Once these files are present, vpdmn-native will automatically include them. | ||
| 24 | |||
| 25 | Alternatively, set VPDMN_USE_DEPLOY = "1" in local.conf to use blobs | ||
| 26 | directly from DEPLOY_DIR without copying to the layer. | ||
