diff --git a/debian/changelog b/debian/changelog index 6d216eaf..37b848f4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +livecd-rootfs (2.532) cosmic; urgency=medium + + * ubuntu-cpc: Generate the root image contents once, and use it for both the + -root.tar.xz and the .squashfs. + + -- Daniel Watkins Thu, 07 Jun 2018 11:11:02 -0700 + livecd-rootfs (2.531) cosmic; urgency=medium [ Daniel Watkins ] diff --git a/live-build/ubuntu-cpc/hooks/031-0-create-root-dir.binary b/live-build/ubuntu-cpc/hooks/031-0-create-root-dir.binary new file mode 100755 index 00000000..9a916658 --- /dev/null +++ b/live-build/ubuntu-cpc/hooks/031-0-create-root-dir.binary @@ -0,0 +1,26 @@ +#!/bin/bash -ex +# vi: ts=4 expandtab +# +# Generate the root directory/manifest for rootfs.tar.xz and squashfs + +if [ -n "$SUBARCH" ]; then + echo "Skipping rootfs build for subarch flavor build" + exit 0 +fi + +. config/functions + +rootfs_dir=rootfs.dir +mkdir $rootfs_dir +cp -a chroot/* $rootfs_dir + +setup_mountpoint $rootfs_dir + +env DEBIAN_FRONTEND=noninteractive chroot $rootfs_dir apt-get --purge remove --assume-yes '^linux-.*' 'linux-base+' +env DEBIAN_FRONTEND=noninteractive chroot $rootfs_dir apt-get --purge remove --assume-yes '^grub-.*' +env DEBIAN_FRONTEND=noninteractive chroot $rootfs_dir apt-get autoremove --purge --assume-yes +rm -rf $rootfs_dir/boot/grub + +teardown_mountpoint $rootfs_dir + +dpkg-query --admindir=$rootfs_dir/var/lib/dpkg -W > $rootfs_dir.manifest diff --git a/live-build/ubuntu-cpc/hooks/031-1-root-xz.binary b/live-build/ubuntu-cpc/hooks/031-1-root-xz.binary new file mode 100755 index 00000000..fab8a834 --- /dev/null +++ b/live-build/ubuntu-cpc/hooks/031-1-root-xz.binary @@ -0,0 +1,15 @@ +#!/bin/bash -ex +# vi: ts=4 expandtab +# +# Generate the rootfs.tar.xz and manifest + +if [ -n "$SUBARCH" ]; then + echo "Skipping rootfs build for subarch flavor build" + exit 0 +fi + +# This is the directory created by 031-0-create-root-dir.binary +rootfs_dir=rootfs.dir + +cp $rootfs_dir.manifest livecd.ubuntu-cpc.rootfs.manifest +(cd $rootfs_dir/ && tar -c *) | xz > livecd.ubuntu-cpc.rootfs.tar.xz diff --git a/live-build/ubuntu-cpc/hooks/031-2-root-squashfs.binary b/live-build/ubuntu-cpc/hooks/031-2-root-squashfs.binary new file mode 100755 index 00000000..f4c2ac3d --- /dev/null +++ b/live-build/ubuntu-cpc/hooks/031-2-root-squashfs.binary @@ -0,0 +1,29 @@ +#!/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 + +# This is the directory created by 031-0-create-root-dir.binary +rootfs_dir=rootfs.dir + +squashfs_f="$PWD/livecd.ubuntu-cpc.squashfs" + +cp $rootfs_dir.manifest $squashfs_f.manifest + +(cd $rootfs_dir && + mksquashfs . $squashfs_f \ + -no-progress -xattrs -comp xz ) diff --git a/live-build/ubuntu-cpc/hooks/031-root-xz.binary b/live-build/ubuntu-cpc/hooks/031-root-xz.binary deleted file mode 100644 index 62881cd8..00000000 --- a/live-build/ubuntu-cpc/hooks/031-root-xz.binary +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -ex -# vi: ts=4 expandtab -# -# Generate the rootfs.tar.xz and manifest - -if [ -n "$SUBARCH" ]; then - echo "Skipping rootfs build for subarch flavor build" - exit 0 -fi - -. config/functions - -tardir=filesystem.dir -mkdir $tardir -cp -a chroot/* $tardir - -setup_mountpoint $tardir - -env DEBIAN_FRONTEND=noninteractive chroot $tardir apt-get --purge remove --assume-yes '^linux-.*' 'linux-base+' -env DEBIAN_FRONTEND=noninteractive chroot $tardir apt-get --purge remove --assume-yes '^grub-.*' -env DEBIAN_FRONTEND=noninteractive chroot $tardir apt-get autoremove --purge --assume-yes - -teardown_mountpoint $tardir - -dpkg-query --admindir=$tardir/var/lib/dpkg -W > livecd.ubuntu-cpc.rootfs.manifest - -(cd "$tardir/" && tar -c *) | xz > "livecd.ubuntu-cpc.rootfs.tar.xz" - -rm -rf $tardir diff --git a/live-build/ubuntu-cpc/hooks/032-root-squashfs.binary b/live-build/ubuntu-cpc/hooks/032-root-squashfs.binary deleted file mode 100755 index ec6c1b05..00000000 --- a/live-build/ubuntu-cpc/hooks/032-root-squashfs.binary +++ /dev/null @@ -1,49 +0,0 @@ -#!/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 -p /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 )