diff --git a/debian/changelog b/debian/changelog index e39049f3..5519719a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,18 @@ +livecd-rootfs (2.729) impish; urgency=medium + + [ Michael Hudson-Doyle ] + * Fix a few things found while porting the live server ISO builds to + layers. + * Port live server ISO builds to layers. + + [ ChloƩ 'kajiya' Smith ] + * Image hangs during boot after deploying groovy-server-cloudimg-amd64.ova, + and the upgrading the ESXi hardware version. Adding a serial port + rectifies this - so this code change simply adds a serial port to the OVF + template (so there is a serial port as default). (LP: #1895104) + + -- Michael Hudson-Doyle Mon, 12 Jul 2021 10:27:35 +1200 + livecd-rootfs (2.728) impish; urgency=medium [ Dan Bungert ] diff --git a/live-build/auto/config b/live-build/auto/config index 196160d2..499a7d5b 100755 --- a/live-build/auto/config +++ b/live-build/auto/config @@ -764,12 +764,47 @@ case $PROJECT in ;; ubuntu-server) - add_task install minimal case ${SUBPROJECT:-} in live) - add_task install standard - add_task install server - add_package install cloud-init + PASSES_TO_LAYERS=true + add_task ubuntu-server minimal standard server + # add_task really should do this itself but for now... + snap_from_seed server config/package-lists/livecd-rootfs.snaplist.chroot_ubuntu-server.full + add_package ubuntu-server cloud-init + + add_package ubuntu-server.installer linux-firmware lupin-casper openssh-server + add_snap ubuntu-server.installer subiquity/classic + if [ $ARCH = s390x ]; then + add_package ubuntu-server.installer s390-tools-zkey + fi + + # Live server ISOs for LTS point releases past .2 offer both + # the GA and HWE kernels (in separate layers) so this code is + # written generically to support both even though a lot of the + # time only one kernel is offered. + + # variants='ga hwe' + variants='ga' + + for variant in $variants; do + if [ "$variant" = "ga" ]; then + kernel_metapkg=linux-generic + flavor=generic + elif [ "$variant" = "hwe" ]; then + kernel_metapkg=linux-generic-hwe-$(lsb_release -sr) + flavor=generic-hwe + else + echo "bogus variant: $variant" + exit 1 + fi + + add_package ubuntu-server.installer.$flavor $kernel_metapkg + LIVE_PASSES="${LIVE_PASSES:+$LIVE_PASSES }ubuntu-server.installer.$flavor" + done + ;; + *) + echo "unrecognized subproject for server: '$SUBPROJECT'" + exit 1 ;; esac COMPONENTS='main' @@ -1012,8 +1047,8 @@ PASSES=$(_sanitize_passes "$PASSES") LIVE_PASSES=${LIVE_PASSES:-$(_get_live_passes "$PASSES")} if [ -n "$PASSES" ] && [ -z "$LIVE_PASSES" ]; then - Echo_warning "Multi-layered mode is enabled, but we didn't find any live pass." \ - "Either set \$LIVE_PASSES or add a pass ending with '.live'." + echo "W: Multi-layered mode is enabled, but we didn't find any live pass." \ + "Either set \$LIVE_PASSES or add a pass ending with '.live'." fi echo "LB_CHROOT_HOOKS=\"$CHROOT_HOOKS\"" >> config/chroot @@ -1023,6 +1058,9 @@ echo "IMAGEFORMAT=\"$IMAGEFORMAT\"" >> config/chroot if [ -n "$PASSES" ]; then echo "PASSES=\"$PASSES\"" >> config/common fi +if [ -n "$NO_SQUASHFS_PASSES" ]; then + echo "NO_SQUASHFS_PASSES=\"$NO_SQUASHFS_PASSES\"" >> config/common +fi if [ -n "$LIVE_PASSES" ]; then echo "LIVE_PASSES=\"$LIVE_PASSES\"" >> config/common fi diff --git a/live-build/lb_binary_layered b/live-build/lb_binary_layered index 2cf56dbb..acd6f591 100755 --- a/live-build/lb_binary_layered +++ b/live-build/lb_binary_layered @@ -66,7 +66,7 @@ build_layered_squashfs () { return fi - rm -f .build/binary_chroot + rm -f .build/binary_chroot .build/binary_hooks mkdir -p "$overlay_dir/" lowerdirs=$(get_lowerdirs_for_pass $pass) @@ -92,39 +92,54 @@ build_layered_squashfs () { rm -f chroot/boot/initrd.img-* chroot/boot/vmlinu{x,z}-* fi - # Full manifest until that PASS - squashfs_f_manifest="${base}.manifest" - create_manifest "chroot" "${squashfs_f_manifest}.full" - - # Delta manifest - diff -NU0 ${PWD}/livecd.${PROJECT}.$(get_parent_pass $pass).manifest.full ${squashfs_f_manifest}.full|grep -v ^@ > $squashfs_f_manifest - - squashfs_f_size="${base}.size" - du -B 1 -s "overlay.${pass}/" | cut -f1 > "${squashfs_f_size}" - - # We take first live pass for "global" ISO properties (used by installers and checkers): - # Prepare initrd + kernel - # Main manifest and size files - prefix="livecd.$PROJECT${SUBARCH:+-$SUBARCH}" - if [ ! -e "${prefix}.manifest" ] && $(is_live_layer "$pass"); then - totalsize=$(cat ${squashfs_f_size}) - curpass="$pass" - while :; do - curpass=$(get_parent_pass $curpass) - # We climbed up the tree to the root layer, we are done - [ -z "$curpass" ] && break - - totalsize=$(expr $totalsize + $(cat "${PWD}/livecd.${PROJECT}.${curpass}.size")) - done - echo ${totalsize} > "${prefix}.size" - - cp "${squashfs_f_manifest}.full" "${prefix}.manifest" + make_squashfs=yes + ppass="${pass}" + while :; do + for nsp in ${NO_SQUASHFS_PASSES}; do + if [ "${ppass}" = "${nsp}" ]; then + make_squashfs=no + break 2 + fi + done + ppass="$(get_parent_pass "${ppass}")" + if [ -z "${ppass}" ]; then + break + fi + done + + if [ $make_squashfs = yes ]; then + # Full manifest until that PASS + squashfs_f_manifest="${base}.manifest" + create_manifest "chroot" "${squashfs_f_manifest}.full" + + # Delta manifest + diff -NU0 ${PWD}/livecd.${PROJECT}.$(get_parent_pass $pass).manifest.full ${squashfs_f_manifest}.full|grep -v ^@ > $squashfs_f_manifest + + squashfs_f_size="${base}.size" + du -B 1 -s "overlay.${pass}/" | cut -f1 > "${squashfs_f_size}" + + # We take first live pass for "global" ISO properties (used by installers and checkers): + # Prepare initrd + kernel + # Main manifest and size files + prefix="livecd.$PROJECT${SUBARCH:+-$SUBARCH}" + if [ ! -e "${prefix}.manifest" ] && $(is_live_layer "$pass"); then + totalsize=$(cat ${squashfs_f_size}) + curpass="$pass" + while :; do + curpass=$(get_parent_pass $curpass) + # We climbed up the tree to the root layer, we are done + [ -z "$curpass" ] && break + + totalsize=$(expr $totalsize + $(cat "${PWD}/livecd.${PROJECT}.${curpass}.size")) + done + echo ${totalsize} > "${prefix}.size" + + cp "${squashfs_f_manifest}.full" "${prefix}.manifest" + fi + + create_squashfs "overlay.${pass}/" ${squashfs_f} fi - (cd "overlay.${pass}/" && - mksquashfs . ${squashfs_f} \ - -no-progress -xattrs -comp xz ) - if [ -n "$lowerdirs" ]; then umount chroot rmdir chroot diff --git a/live-build/lb_chroot_layered b/live-build/lb_chroot_layered index 261d447b..2c7cbcfa 100755 --- a/live-build/lb_chroot_layered +++ b/live-build/lb_chroot_layered @@ -130,8 +130,27 @@ reduce_pass_size () { if ! diff --brief --no-dereference "$pass_dir/$f" "$parent_pass_dir/$f" >/dev/null; then continue fi + p=$(dirname $f) + while [ "$p" != . ]; do + # As explained in the overlayfs documentation + # https://www.kernel.org/doc/html/latest/filesystems/overlayfs.html#whiteouts-and-opaque-directories + # an xattr of trusted.overlay.opaque indicates an 'opaque' directory + # that was deleted from the overlay. Removing files from within the + # directory, even if identical with one in the lower layer, will result + # in it going missing from the combined filesystem. + # + # It would be possible to be more clever, e.g. if the two directories + # are still similar, we could the delete the attribute and convert any + # still-needed deletions to whiteouts but it doesn't seem worth it in + # the cases seen so far. + if [ -n "$(getfattr -n trusted.overlay.opaque -h --only-values -- "$pass_dir/$p" 2>/dev/null)" ]; then + Echo_message "reduce_pass_size: '%s' would be removed from overlay but for trusted.overlay.opaque on '%s'" "$f" "$p" + continue 2 + fi + p=$(dirname $p) + done # Files are strictly identical between the 2 passes (only mod or access times differs). No need for unused delta. - Echo_message "reduce_pass_size: '$f' is strictly identical between $parent and $pass. Removing." + Echo_message "reduce_pass_size: '%s' is strictly identical between %s and %s. Removing." "$f" "$pass" "$parent" rm "$pass_dir/$f" done @@ -143,7 +162,7 @@ create_chroot_pass () { local pass=$1 shift 1 # restore ${*} - Echo_message "lb_chroot_layered: treating pass $pass" + Echo_message "lb_chroot_layered: treating pass %s" "$pass" # We have already treated that pass just return. local overlay_dir="overlay.${pass}" @@ -154,7 +173,7 @@ create_chroot_pass () { # Only get some function executed on root passes # Copy bootstrap on root layers if $(is_root_layer $pass); then - rm -f .build/chroot_linux-image .build/chroot_preseed .build/chroot_hacks + rm -f .build/chroot_linux-image .build/chroot_preseed cp -a chroot.bootstrap/ "$overlay_dir/" fi # Others have to be executed on every pass @@ -196,7 +215,6 @@ create_chroot_pass () { # Only configure universe on root passes if $(is_root_layer $pass); then lb chroot_archives chroot install ${*} - configure_universe fi # Customizing chroot @@ -247,13 +265,24 @@ create_chroot_pass () { lb chroot_hooks ${*} - # Run chroot_hacks only on root layers. - # chroot_hacks changes the mode of boot/initrd*. The side effect in - # layered mode is to create an initrd on each layer with a significant - # impact on image size (+30MB per layer). This is an issue even with - # update-initramfs disabled. + # Run chroot_hacks only on live layers. chroot_hacks is what repacks + # the initrd in a full casperized mode. We don't want to do that for + # each and every layer, just for the live layers (which + # lb_binary_layered will call lb binary_linux-image on). if $(is_live_layer $pass); then + rm -f .build/chroot_hacks lb chroot_hacks ${*} + else + # chroot_hacks also removes some cruft, which is appropriate for + # any layer so we copy and paste that bit here. + rm -f chroot/boot/initrd*bak* + rm -f chroot/etc/apt/trusted.gpg~ + rm -f chroot/etc/group- chroot/etc/passwd- + rm -f chroot/etc/gshadow- chroot/etc/shadow- + rm -f chroot/var/cache/debconf/*-old + rm -f chroot/var/lib/dpkg/*-old + rm -f chroot/var/log/apt/term.log + rm -f chroot/etc/adjtime fi lb chroot_interactive ${*} @@ -267,6 +296,7 @@ create_chroot_pass () { # Deconfiguring chroot if $(is_root_layer $pass); then lb chroot_archives chroot remove ${*} + configure_universe fi lb chroot_apt remove ${*} lb chroot_hostname remove ${*} diff --git a/live-build/ubuntu-cpc/hooks.d/base/ovf/ubuntu-ova-v1-vmdk.tmpl b/live-build/ubuntu-cpc/hooks.d/base/ovf/ubuntu-ova-v1-vmdk.tmpl index 7f0b85e0..77ecc93d 100644 --- a/live-build/ubuntu-cpc/hooks.d/base/ovf/ubuntu-ova-v1-vmdk.tmpl +++ b/live-build/ubuntu-cpc/hooks.d/base/ovf/ubuntu-ova-v1-vmdk.tmpl @@ -84,24 +84,32 @@ VirtualSCSI 6 + + true + serial0 + 4 + vmware.serialport.device + 21 + + 1 IDE Controller VirtualIDEController 1 - 4 + 5 5 0 IDE Controller VirtualIDEController 0 - 5 + 6 5 false VirtualVideoCard - 6 + 7 24 @@ -112,7 +120,7 @@ false VirtualVMCIDevice - 7 + 8 vmware.vmci 1 @@ -121,8 +129,8 @@ 0 false CD-ROM 1 - 8 - 4 + 9 + 3 vmware.cdrom.remotepassthrough 15 @@ -131,7 +139,7 @@ 0 Hard Disk 1 ovf:/disk/vmdisk1 - 9 + 10 3 17 @@ -141,7 +149,7 @@ false Floppy Drive Floppy 1 - 10 + 11 vmware.floppy.remotedevice 14 @@ -151,7 +159,7 @@ VM Network VmxNet3 ethernet adapter on "VM Network" Ethernet 1 - 11 + 12 VmxNet3 10 diff --git a/live-build/ubuntu-server/hooks/02-installer-bits.chroot b/live-build/ubuntu-server/hooks/02-installer-bits.chroot new file mode 100755 index 00000000..d71157cc --- /dev/null +++ b/live-build/ubuntu-server/hooks/02-installer-bits.chroot @@ -0,0 +1,17 @@ +#!/bin/bash -ex +# vi: ts=4 noexpandtab + +if [ "${PASS}" != "ubuntu-server.installer" ]; then + exit 0 +fi + +# Make sure NoCloud is last +values=$(echo get cloud-init/datasources | debconf-communicate | sed 's/^0 //;s/NoCloud, //;s/None/NoCloud, None/') +printf "%s\t%s\t%s\t%s\n" \ + cloud-init cloud-init/datasources multiselect "$values" | debconf-set-selections +dpkg-reconfigure --frontend=noninteractive cloud-init + +if [ `dpkg --print-architecture` = s390x ]; then + # because z/VM x3270 is just ttyS0 + cp -r /usr/lib/systemd/system/serial-getty@sclp_line0.service.d /usr/lib/systemd/system/serial-getty@ttyS0.service.d +fi diff --git a/live-build/ubuntu-server/hooks/03-kernel-metapkg.chroot_early b/live-build/ubuntu-server/hooks/03-kernel-metapkg.chroot_early new file mode 100755 index 00000000..7e99c6bf --- /dev/null +++ b/live-build/ubuntu-server/hooks/03-kernel-metapkg.chroot_early @@ -0,0 +1,37 @@ +#!/bin/bash -ex +# vi: ts=4 noexpandtab + +case $PASS in + ubuntu-server.installer.*) + flavor=${PASS##*.} + if [ "$flavor" = "generic" ]; then + kernel_metapkg=linux-generic + elif [ "$flavor" = "generic-hwe" ]; then + kernel_metapkg=linux-generic-hwe-$(lsb_release -sr) + else + echo "bogus flavor: $flavor" + exit 1 + fi + ;; + *) + exit 0 + ;; +esac + +cat < /etc/initramfs-tools/scripts/init-bottom/live-server +#!/bin/sh +case \$1 in +prereqs) exit 0;; +esac + +echo ${kernel_metapkg} > /run/kernel-meta-package +EOF +chmod +x /etc/initramfs-tools/scripts/init-bottom/live-server + +cat < /etc/initramfs-tools/conf.d/casperize.conf +export CASPER_GENERATE_UUID=1 +EOF + +cat < /etc/initramfs-tools/conf.d/default-layer.conf +LAYERFS_PATH=${PASS}.squashfs +EOF diff --git a/live-build/ubuntu-server/hooks/030-root-squashfs.binary b/live-build/ubuntu-server/hooks/030-root-squashfs.binary deleted file mode 100755 index 148490e9..00000000 --- a/live-build/ubuntu-server/hooks/030-root-squashfs.binary +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -ex -# vi: ts=4 noexpandtab -# -# Generate a squashfs root and manifest - -set -x -echo "030-root-squashfs.binary" - -case $IMAGE_TARGETS in - ""|*squashfs*) - ;; - *) - echo "Skipping squashfs build" - exit 0 - ;; -esac - -if [ -n "$SUBARCH" ]; then - echo "Skipping rootfs build for subarch flavor build" - exit 0 -fi - -. config/functions - -mkdir binary/boot/squashfs.dir -cp -a chroot/* binary/boot/squashfs.dir - -squashfs_f="${PWD}/livecd.${PROJECT}.squashfs" -squashfs_f_manifest="${squashfs_f}.manifest" - -create_manifest "binary/boot/squashfs.dir" "${squashfs_f_manifest}" - -create_squashfs "binary/boot/squashfs.dir/" ${squashfs_f} diff --git a/live-build/ubuntu-server/hooks/032-installer-squashfs.binary b/live-build/ubuntu-server/hooks/032-installer-squashfs.binary deleted file mode 100755 index febee4c6..00000000 --- a/live-build/ubuntu-server/hooks/032-installer-squashfs.binary +++ /dev/null @@ -1,97 +0,0 @@ -#!/bin/bash -ex -# vi: ts=4 noexpandtab -# -# Generate a squashfs root and manifest - -set -x - -echo "032-installer-squashfs.binary" - -case $IMAGE_TARGETS in - ""|*squashfs*) - ;; - *) - echo "Skipping squashfs build" - exit 0 - ;; -esac - -if [ -n "$SUBARCH" ]; then - echo "Skipping rootfs build for subarch flavor build" - exit 0 -fi - -. config/binary -. config/functions -. config/common - -FILESYSTEM_ROOT=binary/boot/squashfs.dir -INSTALLER_ROOT=binary/boot/installer.squashfs.dir -OVERLAY_ROOT=binary/overlay - -mkdir -p "$INSTALLER_ROOT" "$OVERLAY_ROOT" - -# Create an installer squashfs layer -mount_overlay "$FILESYSTEM_ROOT/" "$OVERLAY_ROOT/" "$INSTALLER_ROOT/" - -setup_mountpoint "$INSTALLER_ROOT" - -# Override JobRunningTimeoutSec to 0s on the .device unit that -# subiquity_config.mount depends on to avoid a 5s delay on switching -# to a new VT when there is no device there (LP: #1750117). -# It would be better to have this in ../includes.binary/overlay but -# you can't have backslashes in filenames in bzr branches! -ANSWERS_DEVICE_UNIT='dev-disk-by\x2duuid-00c629d6\x2d06ab\x2d4dfd\x2db21e\x2dc3186f34105d.device' -mkdir -p "$INSTALLER_ROOT/etc/systemd/system/$ANSWERS_DEVICE_UNIT.d" -cat > "$INSTALLER_ROOT/etc/systemd/system/$ANSWERS_DEVICE_UNIT.d/override.conf" < "$KERNEL_BITS_ROOT"/etc/initramfs-tools/conf.d/livecd-rootfs.conf - fi - echo "export CASPER_GENERATE_UUID=1" > "$KERNEL_BITS_ROOT"/etc/initramfs-tools/conf.d/casper.conf - - # Add a hook to record which kernel was booted and mount the - # modules.squashfs created below. - cat < "$KERNEL_BITS_ROOT"/etc/initramfs-tools/scripts/init-bottom/live-server -#!/bin/sh -case \$1 in -prereqs) exit 0;; -esac - -echo ${kernel_metapkg} > /run/kernel-meta-package -mkdir -p \$rootmnt/usr/lib/modules -mount \$rootmnt/cdrom/casper/extras/modules.squashfs-$flavor \$rootmnt/usr/lib/modules -mkdir -p /run/systemd/system/usr-lib-modules.mount.d -echo '[Mount]' >> /run/systemd/system/usr-lib-modules.mount.d/lazy.conf -echo 'LazyUnmount=yes' >> /run/systemd/system/usr-lib-modules.mount.d/lazy.conf -EOF - chmod +x "$KERNEL_BITS_ROOT"/etc/initramfs-tools/scripts/init-bottom/live-server - - # Install the kernel! - env DEBIAN_FRONTEND=noninteractive chroot $KERNEL_BITS_ROOT apt-get -y install ${kernel_metapkg} - - # Fish out generated kernel image and initrd - mv "$KERNEL_BITS_ROOT"/boot/initrd.img-* ${PWD}/livecd.${PROJECT}.initrd-$flavor - mv "$KERNEL_BITS_ROOT"/boot/vmlinu?-* ${PWD}/livecd.${PROJECT}.kernel-$flavor - - # Create squashfs containing all the modules - modules_squashfs_path="${PWD}/livecd.${PROJECT}.modules.squashfs-$flavor" - (cd "$KERNEL_BITS_ROOT/lib/modules" && - mksquashfs . $modules_squashfs_path -no-progress -xattrs -comp xz) - - # And clean up - teardown_mountpoint $KERNEL_BITS_ROOT - umount $KERNEL_BITS_ROOT - rm -rf $KERNEL_BITS_ROOT $KERNEL_BITS_OVERLAY -done diff --git a/live-build/ubuntu-server/hooks/04-kernel-bits.binary b/live-build/ubuntu-server/hooks/04-kernel-bits.binary new file mode 100755 index 00000000..3b5f0862 --- /dev/null +++ b/live-build/ubuntu-server/hooks/04-kernel-bits.binary @@ -0,0 +1,16 @@ +#!/bin/bash -eux +# vi: ts=4 noexpandtab + +case $PASS in + ubuntu-server.installer.*) + flavor=${PASS##*.} + ;; + *) + exit 0 + ;; +esac + +# Fish out generated kernel image and initrd +mv chroot/boot/initrd.img-* ${PWD}/livecd.${PROJECT}.initrd-$flavor +mv chroot/boot/vmlinu?-* ${PWD}/livecd.${PROJECT}.kernel-$flavor +chmod a+r ${PWD}/livecd.${PROJECT}.initrd-$flavor ${PWD}/livecd.${PROJECT}.kernel-$flavor diff --git a/live-build/ubuntu-server/includes.binary/boot/.keep b/live-build/ubuntu-server/includes.binary/boot/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/live-build/ubuntu-server/includes.binary/overlay/etc/cloud/cloud.cfg b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/cloud/cloud.cfg similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/etc/cloud/cloud.cfg rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/cloud/cloud.cfg diff --git a/live-build/ubuntu-server/includes.binary/overlay/etc/cloud/cloud.cfg.d/06_quiet.cfg b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/cloud/cloud.cfg.d/06_quiet.cfg similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/etc/cloud/cloud.cfg.d/06_quiet.cfg rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/cloud/cloud.cfg.d/06_quiet.cfg diff --git a/live-build/ubuntu-server/includes.binary/overlay/etc/systemd/journald.conf.d/no-rate-limit.conf b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/systemd/journald.conf.d/no-rate-limit.conf similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/etc/systemd/journald.conf.d/no-rate-limit.conf rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/systemd/journald.conf.d/no-rate-limit.conf diff --git "a/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/systemd/system/dev-disk-by\\x2duuid-00c629d6\\x2d06ab\\x2d4dfd\\x2db21e\\x2dc3186f34105d.device.d/override.conf" "b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/systemd/system/dev-disk-by\\x2duuid-00c629d6\\x2d06ab\\x2d4dfd\\x2db21e\\x2dc3186f34105d.device.d/override.conf" new file mode 100644 index 00000000..90ac2590 --- /dev/null +++ "b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/etc/systemd/system/dev-disk-by\\x2duuid-00c629d6\\x2d06ab\\x2d4dfd\\x2db21e\\x2dc3186f34105d.device.d/override.conf" @@ -0,0 +1,3 @@ +[Unit] +JobRunningTimeoutSec=0s +Wants=subiquity_config.mount diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/bin/subiquity-shell b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/bin/subiquity-shell similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/bin/subiquity-shell rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/bin/subiquity-shell diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/getty@.service.d/autologin.conf b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/getty@.service.d/autologin.conf similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/getty@.service.d/autologin.conf rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/getty@.service.d/autologin.conf diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/getty@tty1.service b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/getty@tty1.service similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/getty@tty1.service rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/getty@tty1.service diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/local-fs.target.wants/media-filesystem.mount b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/local-fs.target.wants/media-filesystem.mount similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/local-fs.target.wants/media-filesystem.mount rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/local-fs.target.wants/media-filesystem.mount diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/media-filesystem.mount b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/media-filesystem.mount similarity index 57% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/media-filesystem.mount rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/media-filesystem.mount index 13fe2e1f..60a07210 100644 --- a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/media-filesystem.mount +++ b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/media-filesystem.mount @@ -1,5 +1,5 @@ [Mount] -What=/cdrom/casper/filesystem.squashfs +What=/cdrom/casper/ubuntu-server.squashfs Where=/media/filesystem Type=squashfs Options=ro diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/serial-getty@.service.d/subiquity-serial.conf b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/serial-getty@.service.d/subiquity-serial.conf similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/serial-getty@.service.d/subiquity-serial.conf rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/serial-getty@.service.d/subiquity-serial.conf diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/serial-getty@sclp_line0.service.d/subiquity-serial.conf b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/serial-getty@sclp_line0.service.d/subiquity-serial.conf similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/serial-getty@sclp_line0.service.d/subiquity-serial.conf rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/serial-getty@sclp_line0.service.d/subiquity-serial.conf diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/snap.subiquity.subiquity-service.service.d/subiquity.conf b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/snap.subiquity.subiquity-service.service.d/subiquity.conf similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/snap.subiquity.subiquity-service.service.d/subiquity.conf rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/snap.subiquity.subiquity-service.service.d/subiquity.conf diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/snapd.service.d/no-reexec.conf b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/snapd.service.d/no-reexec.conf similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/snapd.service.d/no-reexec.conf rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/snapd.service.d/no-reexec.conf diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/subiquity_config.mount b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/subiquity_config.mount similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/system/subiquity_config.mount rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/system/subiquity_config.mount diff --git a/live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/systemd-networkd-wait-online b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/systemd-networkd-wait-online similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/usr/lib/systemd/systemd-networkd-wait-online rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/usr/lib/systemd/systemd-networkd-wait-online diff --git a/live-build/ubuntu-server/includes.binary/overlay/var/lib/cloud/seed/nocloud/meta-data b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/var/lib/cloud/seed/nocloud/meta-data similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/var/lib/cloud/seed/nocloud/meta-data rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/var/lib/cloud/seed/nocloud/meta-data diff --git a/live-build/ubuntu-server/includes.binary/overlay/var/lib/cloud/seed/nocloud/user-data b/live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/var/lib/cloud/seed/nocloud/user-data similarity index 100% rename from live-build/ubuntu-server/includes.binary/overlay/var/lib/cloud/seed/nocloud/user-data rename to live-build/ubuntu-server/includes.chroot.ubuntu-server.installer/var/lib/cloud/seed/nocloud/user-data diff --git a/live-build/ubuntu-server/includes.chroot/etc/hosts b/live-build/ubuntu-server/includes.chroot.ubuntu-server/etc/hosts similarity index 100% rename from live-build/ubuntu-server/includes.chroot/etc/hosts rename to live-build/ubuntu-server/includes.chroot.ubuntu-server/etc/hosts diff --git a/live-build/ubuntu-server/includes.chroot/etc/systemd/system/multi-user.target.wants/systemd-networkd.service b/live-build/ubuntu-server/includes.chroot.ubuntu-server/etc/systemd/system/multi-user.target.wants/systemd-networkd.service similarity index 100% rename from live-build/ubuntu-server/includes.chroot/etc/systemd/system/multi-user.target.wants/systemd-networkd.service rename to live-build/ubuntu-server/includes.chroot.ubuntu-server/etc/systemd/system/multi-user.target.wants/systemd-networkd.service diff --git a/live-build/ubuntu-server/includes.chroot/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service b/live-build/ubuntu-server/includes.chroot.ubuntu-server/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service similarity index 100% rename from live-build/ubuntu-server/includes.chroot/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service rename to live-build/ubuntu-server/includes.chroot.ubuntu-server/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service diff --git a/live-build/ubuntu-server/includes.chroot/etc/systemd/system/sockets.target.wants/systemd-networkd.socket b/live-build/ubuntu-server/includes.chroot.ubuntu-server/etc/systemd/system/sockets.target.wants/systemd-networkd.socket similarity index 100% rename from live-build/ubuntu-server/includes.chroot/etc/systemd/system/sockets.target.wants/systemd-networkd.socket rename to live-build/ubuntu-server/includes.chroot.ubuntu-server/etc/systemd/system/sockets.target.wants/systemd-networkd.socket