mirror of
https://git.launchpad.net/livecd-rootfs
synced 2025-02-13 14:27:09 +00:00
shim-signed depends on grub-efi-amd64-signed, which in turn has alternative depends on either `grub-efi-amd64 | grub-pc`. However to support booting with either via shim&signed-grub and BIOS, the choice must be made to install grub-pc, not grub-efi-amd64. This makes images consistent with Ubuntu Deskop, Live Server, buildd bootable images; all of which already do install grub-pc and shim-signed. Additionally, this will ensure that autoremove is run after installing anything in the CPC build hooks. This is done to avoid shipping images that include packages that are autoremovable. This will clean-up as packages are installed and detect any breakage at build time. LP: #1901906
58 lines
1.5 KiB
Bash
Executable File
58 lines
1.5 KiB
Bash
Executable File
#!/bin/bash -eux
|
|
# vi: ts=4 expandtab
|
|
#
|
|
# Generate the compressed root directory for WSL
|
|
|
|
case ${SUBPROJECT:-} in
|
|
minimized)
|
|
echo "Skipping minimized $0 build as WSL systems are designed to be interactive"
|
|
exit 0
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
|
|
case $ARCH in
|
|
amd64|arm64)
|
|
;;
|
|
*)
|
|
echo "WSL root tarballs are not generated for $ARCH."
|
|
exit 0;;
|
|
esac
|
|
|
|
if [ -n "${SUBARCH:-}" ]; then
|
|
echo "Skipping rootfs build for subarch flavor build"
|
|
exit 0
|
|
fi
|
|
|
|
. config/functions
|
|
|
|
rootfs_dir=wslroot.dir
|
|
|
|
# This is the directory created by create-root-dir.binary
|
|
cp -a rootfs.dir $rootfs_dir
|
|
|
|
setup_mountpoint $rootfs_dir
|
|
|
|
env DEBIAN_FRONTEND=noninteractive chroot $rootfs_dir apt-get -y -qq install ubuntu-wsl
|
|
env DEBIAN_FRONTEND=noninteractive chroot $rootfs_dir apt-get autoremove --purge --assume-yes
|
|
|
|
create_manifest $rootfs_dir livecd.ubuntu-cpc.wsl.rootfs.manifest
|
|
teardown_mountpoint $rootfs_dir
|
|
|
|
# remove attributes not supported by WSL's tar
|
|
if [ -d $rootfs_dir/var/log/journal ]; then
|
|
setfattr -x system.posix_acl_access $rootfs_dir/var/log/journal
|
|
setfattr -x system.posix_acl_default $rootfs_dir/var/log/journal
|
|
fi
|
|
|
|
# The reason not using just tar .. -C $rootfs_dir . is that using '.' was found
|
|
# not working once and checking if using the simpler command is safe needs
|
|
# verification of the app installation on all Windows 10 builds we support
|
|
# with WSL.
|
|
cd $rootfs_dir
|
|
tar --xattrs --sort=name -czf ../livecd.ubuntu-cpc.wsl.rootfs.tar.gz *
|
|
cd ..
|
|
|
|
rm -rf $rootfs_dir
|