- build.sh: add --variant nvidia|amd; separate work dirs per variant
(live-build-work-nvidia / live-build-work-amd); GPU-specific steps
(modules, NCCL, cuBLAS, nccl-tests) run only for nvidia; deb package
cache synced back to shared location after each lb build so second
variant reuses downloaded packages; ISO output named
easy-bee-{variant}-v{ver}-amd64.iso
- build-in-container.sh: add --variant nvidia|amd|all (default: all);
runs build.sh twice in one container for 'all'; --clean-build wipes
both variant work dirs
- package-lists: remove GPU packages from bee.list.chroot; add
bee-nvidia.list.chroot (DCGM) and bee-amd.list.chroot (ROCm)
- 9000-bee-setup hook: read /etc/bee-gpu-vendor; enable bee-nvidia.service
and DCGM only for nvidia; set up ROCm symlinks only for amd
- auto/config: --iso-volume uses BEE_GPU_VENDOR_UPPER env var
- grub.cfg: add nomodeset to EASY-BEE and EASY-BEE (load to RAM) entries
— fixes X/lightdm on BMC KVM (ASPEED AST chip requires nomodeset for
fbdev to work; NVIDIA H100 compute does not need KMS)
- bee.sh / smoketest.sh: add /usr/sbin to PATH so dmidecode, smartctl,
nvme are found
- 9100-memtest hook: add diagnostic listing of chroot/boot/memtest* files
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
39 lines
1.4 KiB
Bash
Executable File
39 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
# auto/config — live-build configuration for bee ISO
|
|
# Runs automatically when lb config is called.
|
|
# See: man lb_config
|
|
|
|
set -e
|
|
|
|
. "$(dirname "$0")/../VERSIONS"
|
|
|
|
# Pin the exact kernel ABI detected by build.sh so the ISO kernel matches
|
|
# the kernel headers used to compile NVIDIA modules. Falls back to meta-package
|
|
# when lb config is run manually without the environment variable.
|
|
if [ -n "${BEE_KERNEL_ABI:-}" ] && [ "${BEE_KERNEL_ABI}" != "auto" ]; then
|
|
LB_LINUX_PACKAGES="linux-image-${BEE_KERNEL_ABI}"
|
|
else
|
|
LB_LINUX_PACKAGES="linux-image"
|
|
fi
|
|
|
|
lb config noauto \
|
|
--distribution bookworm \
|
|
--architectures amd64 \
|
|
--binary-images iso-hybrid \
|
|
--bootloaders "grub-efi,syslinux" \
|
|
--debian-installer none \
|
|
--archive-areas "main contrib non-free non-free-firmware" \
|
|
--mirror-bootstrap "https://deb.debian.org/debian" \
|
|
--mirror-chroot "https://deb.debian.org/debian" \
|
|
--mirror-binary "https://deb.debian.org/debian" \
|
|
--security true \
|
|
--linux-flavours "amd64" \
|
|
--linux-packages "${LB_LINUX_PACKAGES}" \
|
|
--memtest none \
|
|
--iso-volume "EASY-BEE-${BEE_GPU_VENDOR_UPPER:-NVIDIA}" \
|
|
--iso-application "EASY-BEE-${BEE_GPU_VENDOR_UPPER:-NVIDIA}" \
|
|
--bootappend-live "boot=live components video=1920x1080 console=tty0 console=ttyS0,115200n8 loglevel=7 username=bee user-fullname=Bee modprobe.blacklist=nouveau" \
|
|
--apt-recommends false \
|
|
--chroot-squashfs-compression-type zstd \
|
|
"${@}"
|