From c73b51ec437cec96c5645dbbf98bb7b621ff1d2e Mon Sep 17 00:00:00 2001 From: Simon Quigley Date: Sat, 23 Nov 2024 13:47:42 -0600 Subject: [PATCH] Switch Lubuntu to stacked squashfses, and split apart the common functionality to avoid Subiquity-specific commands. --- debian/changelog | 7 ++++ live-build/auto/build | 4 +-- live-build/auto/config | 33 +++++++++++++++---- .../hooks/020-ubuntu-live.chroot_early | 1 + 4 files changed, 36 insertions(+), 9 deletions(-) create mode 120000 live-build/lubuntu/hooks/020-ubuntu-live.chroot_early diff --git a/debian/changelog b/debian/changelog index 338f6d20..c2e7f70e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +livecd-rootfs (25.04.3) UNRELEASED; urgency=medium + + * Switch Lubuntu to stacked squashfses, and split apart the common + functionality to avoid Subiquity-specific commands. + + -- Simon Quigley Sat, 23 Nov 2024 13:44:46 -0600 + livecd-rootfs (25.04.2) plucky; urgency=medium * Explicitly create home directory for buildd system user to avoid issues diff --git a/live-build/auto/build b/live-build/auto/build index 82f7e01d..1b7a0e9a 100755 --- a/live-build/auto/build +++ b/live-build/auto/build @@ -362,7 +362,7 @@ EOF # affected by this, we manually clear out the archive-related Packages # files in the cache. case $PROJECT in - ubuntu|xubuntu|kubuntu|ubuntu-budgie|ubuntukylin|ubuntu-mate|ubuntucinnamon|ubuntu-unity|edubuntu) + ubuntu|xubuntu|kubuntu|ubuntu-budgie|ubuntukylin|ubuntu-mate|ubuntucinnamon|ubuntu-unity|edubuntu|lubuntu) rm -f chroot/var/lib/apt/lists/*ubuntu.com*_Packages ;; esac @@ -408,7 +408,7 @@ done # we don't need a manifest-remove for a layered-aware installer # here we have a list of all new-installer flavors case $PROJECT in - ubuntu|ubuntu-budgie) + ubuntu|ubuntu-budgie|lubuntu) rm -f livecd.${PROJECT}-manifest-remove rm -f config/manifest-minimal-remove ;; diff --git a/live-build/auto/config b/live-build/auto/config index 338c8b84..a85c8577 100755 --- a/live-build/auto/config +++ b/live-build/auto/config @@ -591,7 +591,7 @@ case $IMAGEFORMAT in ;; *) case $PROJECT in - kubuntu|lubuntu|ubuntu-unity) + kubuntu|ubuntu-unity) add_package live casper ;; esac @@ -681,9 +681,11 @@ if ! [ -e config/germinate-output/structure ]; then -s $FLAVOUR.$SUITE $GERMINATE_ARG -a $ARCH) fi -do_layered_desktop_image() { +# Common functionality for layered desktop images +common_layered_desktop_image() { touch config/universe-enabled PASSES_TO_LAYERS="true" + if [ -n "$HAS_MINIMAL" ]; then if [ -z "$MINIMAL_TASKS" ]; then MINIMAL_TASKS="${FLAVOUR}-desktop-minimal" @@ -759,6 +761,11 @@ do_layered_desktop_image() { else STANDARD_IS_DEFAULT=yes fi +} + +# Function for standard layered desktop image +do_layered_desktop_image() { + common_layered_desktop_image if [ -n "$HAS_MINIMAL" ]; then [ -n "$MINIMAL_NAME" ] \ @@ -787,7 +794,8 @@ do_layered_desktop_image() { locale_support: $LOCALE_SUPPORT EOF fi - write_kernel_yaml linux-$KERNEL_FLAVOURS + + write_kernel_yaml "linux-$KERNEL_FLAVOURS" if [ "$LOCALE_SUPPORT" != none ]; then /usr/share/livecd-rootfs/checkout-translations-branch \ @@ -907,11 +915,22 @@ case $PROJECT in do_layered_desktop_image ;; - lubuntu|ubuntu-unity) + ubuntu-unity) add_task install minimal standard ${PROJECT}-desktop LIVE_TASK=${PROJECT}-live ;; - ubuntukylin) + + lubuntu) + UCFLAVOUR="Lubuntu" + HAS_MINIMAL=yes + PASSES_TO_LAYERS="true" + MINIMAL_TASKS=lubuntu-desktop-minimal + MINIMAL_DESC="A minimal installation of the $UCFLAVOUR Desktop." + KERNEL_FLAVOURS=generic + common_layered_desktop_image + ;; + + ubuntukylin) # Ubuntu Kylin now ships the new installer. UCFLAVOUR="Ubuntu Kylin" HAS_MINIMAL=yes @@ -1456,7 +1475,7 @@ case $PROJECT:${SUBPROJECT:-} in ubuntu-cpc:*|ubuntu-server:live|ubuntu:desktop-preinstalled| \ ubuntu-wsl:*|ubuntu-mini-iso:*|ubuntu:|ubuntu-oem:*| \ ubuntustudio:*|edubuntu:*|ubuntu-budgie:*|ubuntucinnamon:*|xubuntu:*| \ - ubuntukylin:*|ubuntu-mate:*|ubuntu-core-installer:*) + ubuntukylin:*|ubuntu-mate:*|ubuntu-core-installer:*|lubuntu:*) # Ensure that most things e.g. includes.chroot are copied as is for entry in /usr/share/livecd-rootfs/live-build/${PROJECT}/*; do case $entry in @@ -1492,7 +1511,7 @@ esac case $PROJECT in ubuntu-oem|ubuntustudio|edubuntu|ubuntu-budgie|ubuntucinnamon| \ - xubuntu|ubuntukylin|ubuntu-mate) + xubuntu|ubuntukylin|ubuntu-mate|lubuntu) cp -af /usr/share/livecd-rootfs/live-build/ubuntu/includes.chroot \ config/includes.chroot diff --git a/live-build/lubuntu/hooks/020-ubuntu-live.chroot_early b/live-build/lubuntu/hooks/020-ubuntu-live.chroot_early new file mode 120000 index 00000000..b410ddab --- /dev/null +++ b/live-build/lubuntu/hooks/020-ubuntu-live.chroot_early @@ -0,0 +1 @@ +../../ubuntu/hooks/020-ubuntu-live.chroot_early \ No newline at end of file