Ubuntu 24.04 + backports/contrib + ZFS(VM) + serial (LXC 1.6.1 / qemu 0.2.1) #17

Open
hclaude wants to merge 0 commits from fix/ubuntu-backports-zfs-161 into master
Owner

Ubuntu 24.04 Noble target (LXC+VM), backports+contrib repos in LXC (no zfs — shared kernel), ZFS-dkms 2.4.3 in Devuan/Debian VM images, serial-console refinements. Ubuntu-LXC apt fixed via APT::Sandbox::User root. Refs #46.

Ubuntu 24.04 Noble target (LXC+VM), backports+contrib repos in LXC (no zfs — shared kernel), ZFS-dkms 2.4.3 in Devuan/Debian VM images, serial-console refinements. Ubuntu-LXC apt fixed via APT::Sandbox::User root. Refs #46.
Adds ubuntu-2404-ecs01 to both builders as a systemd clone of the Debian 13
path, plus test + wrapper + docs. CODE ONLY — no build, no TEMPLATE_VERSION
bump (operator bumps + builds in the same cycle).

LXC (build-devuan-template.sh):
- build_ubuntu2404_ecs01(): noble suite/mirror, components
  "main restricted universe multiverse" (universe is load-bearing for
  iotop-c/byobu/etc), ubuntu-keyring in the rootfs (debootstrap
  --include=ubuntu-keyring) + bootstrap authenticated with the ubuntu-archive
  keyring — avoids NO_PUBKEY at build AND deploy time. Reuses the entire
  systemd wiring (etckeeper finalise, ecs-firstboot.service,
  nullmailer-from.service, machine-id, console-getty override).
- preflight_devuan auto-installs ubuntu-keyring on the HOST when an Ubuntu
  target is queued (mirrors the devuan-keyring logic) + symlinks the noble
  debootstrap script to gutsy if absent.
- Wired into TEMPLATES/all/dispatch/force-purge/summary/help + version-history
  entry (Refs: #TBD, no version bump). TPL_UBUNTU_BASE +
  UBUNTU_{VER,SUITE,MIRROR,COMPONENTS,ROOTFS} globals.

VM (build-cloud-image.sh):
- ubuntu branch in build_rootfs (components + ubuntu-keyring pkg +
  --keyring), per-distro kernel metapackage swap (linux-image-generic), host
  keyring guard, and ubuntu target in main() dispatch. ubuntu takes the
  systemd branch everywhere debian does; ssh host-key strip already
  unconditional.

test-devuan-template.sh: detect /etc/os-release ID=ubuntu (systemd variant),
distro-aware banner + section-A label + DNS resolve host.

build-all-templates.sh: ubuntu-2404-ecs01 as an independent parallel pipeline
+ ubuntu-keyring prereq pre-seed.

CLAUDE.md: document the fourth template.

Open decisions: UBUNTU_MIRROR default is a GUESSED envisagecloud host — must
be confirmed before a production build; noble-updates/-security are wired to
the same mirror host (Ubuntu layout) — confirm ECS mirror carries all three
suites.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add <suite>-backports apt source (excalibur-backports / trixie-backports)
to the shipped qcow2 images, pin-limited to Pin-Priority 100 so backports
is strictly opt-in via `-t <suite>-backports` and never auto-upgrades the
system. Build OpenZFS at build time in the customise hook: install
dkms/build-essential + zfs-dkms/zfsutils-linux from backports, force a
`dkms autoinstall` against the installed kernel (KVER derived from
ls /lib/modules, headers-build-dir asserted), and LOUD-fail if modinfo /
zfs.ko is absent afterwards. Wire zfs init at boot (systemd units on
Debian, OpenRC scripts on Devuan), each guarded. Toolchain kept in the
image for future DKMS rebuilds. Ubuntu path untouched; TEMPLATE_VERSION
stays 0.3.0. Refs stage-1 report §Deferred.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This branch is already included in the target branch. There is nothing to merge.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin fix/ubuntu-backports-zfs-161:fix/ubuntu-backports-zfs-161
git switch fix/ubuntu-backports-zfs-161

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch master
git merge --no-ff fix/ubuntu-backports-zfs-161
git switch fix/ubuntu-backports-zfs-161
git rebase master
git switch master
git merge --ff-only fix/ubuntu-backports-zfs-161
git switch fix/ubuntu-backports-zfs-161
git rebase master
git switch master
git merge --no-ff fix/ubuntu-backports-zfs-161
git switch master
git merge --squash fix/ubuntu-backports-zfs-161
git switch master
git merge --ff-only fix/ubuntu-backports-zfs-161
git switch master
git merge fix/ubuntu-backports-zfs-161
git push origin master
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ECS-Public-Infra/Create-Templates!17
No description provided.