diff --git a/live-build/functions b/live-build/functions index f3e1df0b..c3f1cb11 100644 --- a/live-build/functions +++ b/live-build/functions @@ -412,9 +412,12 @@ EOF (cd $snaps_dir; ls -1 ${SNAP_NAME}_*.snap) >> $seed_yaml } -snap_prepare() { - # Configure basic snapd assertions and pre-seeds the 'core' snap +snap_prepare_assertions() { + # Configure basic snapd assertions local CHROOT_ROOT=$1 + # Optional. If set, should be a colon-separated string of brand:model to be + # used for the image's model assertion + local CUSTOM_BRAND_MODEL=$2 local seed_dir="$CHROOT_ROOT/var/lib/snapd/seed" local snaps_dir="$seed_dir/snaps" @@ -426,9 +429,16 @@ snap_prepare() { mkdir -p "$assertions_dir" mkdir -p "$snaps_dir" + local brand="generic" + local model="generic-classic" + if [ -n "$CUSTOM_BRAND_MODEL" ] ; then + brand="$(echo $CUSTOM_BRAND_MODEL | cut -d: -f 1)" + brand="$(echo $CUSTOM_BRAND_MODEL | cut -d: -f 2)" + fi + if ! [ -e "$model_assertion" ] ; then snap known --remote model series=16 \ - model=generic-classic brand-id=generic \ + model=$model brand-id=$brand \ > "$model_assertion" fi @@ -446,6 +456,16 @@ snap_prepare() { snap known --remote account account-id=$account \ > "$account_assertion" fi +} + +snap_prepare() { + # Configure basic snapd assertions and pre-seeds the 'core' snap + local CHROOT_ROOT=$1 + # Optional. If set, should be a colon-separated string of brand:model to be + # used for the image's model assertion + local CUSTOM_BRAND_MODEL=$2 + + snap_prepare_assertions "$CHROOT_ROOT" "$CUSTOM_BRAND_MODEL" # Download the core snap if ! [ -f $snaps_dir/core_[0-9]*.snap ] ; then