livecd-rootfs/live-build/ubuntu-cpc/hooks/032-root-squashfs.binary
Steve Langasek bc18c8a992 Import patches-unapplied version 2.482 to ubuntu/bionic-proposed
Imported using git-ubuntu import.

Changelog parent: c4cfbef1ee75ffa46af351f74751a032fbf1ef6d

New changelog entries:
  * Remove boot/grub leftovers from our root squashfs, left behind after
    grub purge.
  * Remove apt, debconf, dpkg cruft files from /var/cache and /var/lib in all
    our livefses.
  * Pass --cache false to lb config; otherwise we copy around caches of
    .debs that are never used properly, and which prevent us from emptying
    /var/cache/apt in images.
  * When building minimized cloud images, remove various packages that we
    don't want installed by default.  Some are tools that aren't needed for
    non-interactive use; some are libraries whose reverse-dependencies
    will have already been removed; and one, open-vm-tools, should only be
    included in images that are targeted to VMWare (which is not the case
    for any of the current minimal images), rather than being included
    directly in the cloud-image seed.
2017-11-10 08:40:42 +00:00

50 lines
1.5 KiB
Bash
Executable File

#!/bin/bash -ex
# vi: ts=4 noexpandtab
#
# Generate a squashfs root and manifest
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
setup_mountpoint binary/boot/squashfs.dir
chroot binary/boot/squashfs.dir dpkg-divert --local --rename /usr/sbin/grub-probe
chroot binary/boot/squashfs.dir touch /usr/sbin/grub-probe
chroot binary/boot/squashfs.dir chmod +x /usr/sbin/grub-probe
env DEBIAN_FRONTEND=noninteractive chroot binary/boot/squashfs.dir apt-get --purge remove --assume-yes '^linux-.*' 'linux-base+'
env DEBIAN_FRONTEND=noninteractive chroot binary/boot/squashfs.dir apt-get --purge remove --assume-yes '^grub-.*'
env DEBIAN_FRONTEND=noninteractive chroot binary/boot/squashfs.dir apt-get autoremove --purge --assume-yes
rm -rf binary/boot/squashfs.dir/boot/grub
chroot binary/boot/squashfs.dir mkdir /lib/modules
chroot binary/boot/squashfs.dir rm /usr/sbin/grub-probe
chroot binary/boot/squashfs.dir dpkg-divert --remove --local --rename /usr/sbin/grub-probe
teardown_mountpoint binary/boot/squashfs.dir
squashfs_f="${PWD}/livecd.ubuntu-cpc.squashfs"
squashfs_f_manifest="${squashfs_f}.manifest"
dpkg-query --admindir=binary/boot/squashfs.dir/var/lib/dpkg -W > ${squashfs_f_manifest}
(cd "binary/boot/squashfs.dir/" &&
mksquashfs . ${squashfs_f} \
-no-progress -xattrs -comp xz )