Files
bee/iso
Michael Chus 5ee120158e fix(build): remove unused variant package lists before lb build
live-build picks up ALL .list.chroot files in config/package-lists/.
After rsync, bee-nvidia.list.chroot, bee-amd.list.chroot, and
bee-nogpu.list.chroot all end up in BUILD_WORK_DIR — causing lb to
try installing packages from every variant (and leaving version
placeholders unsubstituted in the unused lists).

Fix: after copying bee-${BEE_GPU_VENDOR}.list.chroot → bee-gpu.list.chroot,
delete all other bee-{nvidia,amd,nogpu}.list.chroot from BUILD_WORK_DIR.

Also includes nomsi boot mode changes (bee-nvidia-load + grub.cfg).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 23:03:42 +03:00
..

ISO Build

bee ISO is built inside a Debian 12 builder container via iso/builder/build-in-container.sh.

Requirements

  • Docker Desktop or another Docker-compatible container runtime
  • Privileged containers enabled
  • Enough free disk space for builder cache, Debian live-build artifacts, NVIDIA driver cache, and CUDA userspace packages

Build On macOS

From the repository root:

sh iso/builder/build-in-container.sh

The script defaults to linux/amd64 builder containers, so it works on:

  • Intel Mac
  • Apple Silicon (M1 / M2 / M3 / M4) via Docker Desktop's Linux VM

You do not need to pass --platform manually for normal ISO builds.

Useful Options

Build with explicit SSH keys baked into the ISO:

sh iso/builder/build-in-container.sh --authorized-keys ~/.ssh/id_ed25519.pub

Rebuild the builder image:

sh iso/builder/build-in-container.sh --rebuild-image

Use a custom cache directory:

sh iso/builder/build-in-container.sh --cache-dir /path/to/cache

Notes

  • The builder image is automatically rebuilt if the local tag exists for the wrong architecture.
  • The live ISO boots with Debian live-boot toram, so the read-only medium is copied into RAM during boot and the runtime no longer depends on the original USB/BMC virtual media staying present.
  • Target systems need enough RAM for the full compressed live medium plus normal runtime overhead, or boot may fail before reaching the TUI.
  • Override the container platform only if you know why:
BEE_BUILDER_PLATFORM=linux/amd64 sh iso/builder/build-in-container.sh
  • The shipped ISO is still amd64.
  • Output ISO artifacts are written under dist/.