Expand description
Pre-built x86_64 runtime assets for omea’s KVM backend, packaged as a Rust crate so embedders never fetch binaries out of band.
This is the current x86_64 implementation of the architecture-split asset
contract. You normally don’t depend on it directly — depend on the
omea-kernel facade, which re-exports the right arch’s crate by
target_arch. Cargo only downloads the sub-crate matching the build
target, so an x86_64 build pulls only this crate.
Three assets are bundled:
- Linux kernel (
KERNEL_BYTES) — a minimal-config x86_64bzImage(Linux 6.12). Everything the microVM needs is built in (MODULES=n): virtio-MMIO (+CMDLINE_DEVICES), virtio-blk, virtio-vsock, squashfs, overlayfs, ext4, 8250 console. No module loading, no host-kernel coupling. - busybox (
BUSYBOX_BYTES) — a static x86_64 busybox. The KVM bake stages it into the agent initramfs as the PID-1 init’s toolbox (mount, switch_root, overlay setup). omea-agent(OMEA_AGENT_BYTES) — the in-VM control agent (static x86_64-musl). Runs as PID 1 inside the container afterswitch_root, servingexec/control RPCs over vsock.
The KVM backend builds the container rootfs (overlayfs + switch_root)
directly in the agent initramfs’s generated init.
Constants§
- BUSYBOX_
BYTES - Raw bytes of the static x86_64 busybox staged into the agent initramfs.
The generated PID-1 init uses it for the overlayfs +
switch_rootdance that builds the writable container rootfs from the read-only OCI squashfs. - BUSYBOX_
LEN - Length of the busybox binary in bytes.
- KERNEL_
BYTES - Raw bytes of the x86_64 kernel — a minimal-config Linux
bzImage. - KERNEL_
LEN - Length of the kernel image in bytes —
KERNEL_BYTES.len(), const-evaluable. - OMEA_
AGENT_ BYTES - Raw bytes of the in-VM
omea-agent(static x86_64-musl ELF). Runs as PID 1 inside the container post-switch_root, serving docker-styleexecand other control RPCs over vsock. - OMEA_
AGENT_ LEN - Length of the omea-agent binary in bytes.
Functions§
- extract_
busybox_ to - Write the bundled busybox to
dest, executable (mode 0o755) on Unix. - extract_
busybox_ to_ with_ parents - Like
extract_busybox_tobutmkdir -p’s the parent dir first. - extract_
kernel_ to - Write the bundled kernel image to
dest. Overwrites any existing file; the parent dir must exist (useextract_kernel_to_with_parentsto mkdir). - extract_
kernel_ to_ with_ parents - Like
extract_kernel_tobutmkdir -p’s the parent dir first. - extract_
omea_ agent_ to - Write the bundled
omea-agenttodest, executable on Unix. - extract_
omea_ agent_ to_ with_ parents - Like
extract_omea_agent_tobutmkdir -p’s the parent first.