Michael Hudson-Doyle 61427da03f Add 'ubuntu-core-installer' project.
The ubuntu-core-installer image is an installer that installs ubuntu
core. The environment the installer runs in is similar to the server
installer but it has a source catalog entry that points to the model
created in ubuntu-core-installer/hooks/05-prepare-image.binary, which
subiquity knows how to install.
2024-06-07 19:38:16 +12:00

39 lines
1001 B
Bash

#!/bin/bash
set -eux
case ${PASS:-} in
base.live)
;;
*)
exit 0
;;
esac
. config/binary
. config/functions
env SNAPPY_STORE_NO_CDN=1 snap known --remote model series=16 brand-id=canonical model=ubuntu-core-24-amd64 > config/ubuntu-core-24-amd64.model
env SNAPPY_STORE_NO_CDN=1 snap prepare-image \
config/ubuntu-core-24-amd64.model --snap console-conf chroot
mv chroot/system-seed/systems/* chroot/system-seed/systems/ubuntu-core-24-amd64
rsync -av chroot/system-seed/{systems,snaps} chroot/var/lib/snapd/seed
rm -rf chroot/system-seed
cat <<-EOF > config/edge.catalog-in.yaml
name: "Ubuntu Core 24"
description: >-
Ubuntu Core.
id: ubuntu-core
type: null
variant: core
locale_support: none
snapd_system_label: ubuntu-core-24-amd64
EOF
PROJECT_FULL=$PROJECT${SUBARCH:+-$SUBARCH}
usc_opts="--output livecd.${PROJECT_FULL}.install-sources.yaml \
--template config/edge.catalog-in.yaml \
--size 0"
/usr/share/livecd-rootfs/update-source-catalog $usc_opts