boot-assets is the single source of truth for ArcBox VM boot artifacts.
Each release publishes:
boot-assets-arm64-v{version}.tar.gzboot-assets-arm64-v{version}.tar.gz.sha256manifest.json
The tarball contains:
kernelinitramfs.cpio.gzruntime/bin/(dockerd,containerd,youki, and helper binaries)manifest.json
ArcBox downloads boot assets from GitHub Releases:
- Repository:
arcbox-labs/boot-assets - Tag format:
v{version} - Version is selected by
ARCBOX_BOOT_ASSET_VERSIONor ArcBox default
Workflow file: .github/workflows/release.yml
Trigger:
- Push tag:
v* - Manual dispatch with explicit version
Prerequisites:
- Rust toolchain with
aarch64-unknown-linux-musl protoc(protobuf) for compilingarcbox-protocolunsquashfs,cpio,curl,shasum,tar- ArcBox source checkout (for building
arcbox-agent)
Example:
# In boot-assets repo
chmod +x scripts/*.sh
./scripts/build-release.sh \
--version 0.0.1-alpha.3 \
--arcbox-dir ../arcbox \
--arcbox-repo arcbox-labs/arcbox \
--arcbox-ref masterOutput files are written to dist/.
Optional runtime version overrides:
./scripts/build-release.sh \
--version 0.0.1-alpha.3 \
--arcbox-dir ../arcbox \
--docker-version 28.0.3 \
--containerd-version 1.7.26 \
--youki-version 0.5.7- Base assets are fetched from Alpine
alpine-netboottarball. - Download step validates tarball SHA256 from Alpine
latest-releases.yaml. initramfs.cpio.gzis rebuilt witharcbox-agentinjected.manifest.jsonrecords source repository/ref/sha, artifact checksums, andruntime_assetsmetadata.