Re: [PATCH v5 07/13] release: Compress installation images and remove live image

Alyssa Ross
2025-11-28T11:22:05Z

[-- Attachment #1: Type: text/plain, Size: 2927 bytes --]

Demi Marie Obenour <demiobenour@gmail.com> writes:

> systemd-sysupdate will fail if the OS image does not fit in the
> partitions that the installer created. Therefor, the partitions need to
> be very large so that there is plenty of room for the OS to grow.
> Furthermore, systemd-sysupdate requires both A and B copies of both the
> root and verity partitions.
>
> mkfs.ext4 is not able to produce images with files large enough to hold
> both the primary and backup copy of the root partition [1]. Reducing
> the sizes of partitions to be little greater than the size of the root
> filesystem image does not help. The produced file is still too large.
> Therefore, compress the image, which causes it to be small enough that
> mkfs.ext4 can handle it.
>
> This breaks the option to use the installer as a live image. Therefore,
> remove it. This option will return once Spectrum switches to the GNOME
> OS installer [2]. However, it is still possible to build a live image
> that is separate from the installer. Document how to build and use it.
>
> GRUB2 does support compressed loopback images, but these presumably
> buffer the whole image in memory. Since the entire installer will be
> replaced, making it work is not considered worthwhile.
>
> [1]: https://github.com/tytso/e2fsprogs/issues/254
> [2]: https://spectrum-os.org/lists/archives/spectrum-devel/87wm4dlkhz.fsf@alyssa.is/
>
> Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
> ---
> Changes since v4:
> - Replace a mention of "Try Spectrum" with a mention of the live image.
> - Combine instructions for building an installer and a live image.
> - Drop the config option for the compression level.
> - Drop unnecessary quoting changes.
> - Drop unnecessary 'set -euo pipefail'.
>
> Changes since v3:
> - Make the compression level configurable. The default is 1 so that
> development builds finish in a reasonable amount of time. Release
> builds should use compression level 9.
>
> Changes since v2:
> - Remove live image test instead of skipping it.
> - Document the change.
> - Document that there is still a live image available, though it is
> separate from the installer.
> - Document how to build the live image.
>
> Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
> ---
> Documentation/installation/getting-spectrum.adoc | 44 ++++++++++++++++--------
> host/initramfs/Makefile | 8 -----
> host/initramfs/etc/probe | 20 -----------
> release/checks/integration/meson.build | 2 +-
> release/checks/integration/try.c | 29 ----------------
> release/combined/eosimages.nix | 8 ++---
> release/combined/grub.cfg.in | 5 ---
> 7 files changed, 35 insertions(+), 81 deletions(-)

Reviewed-by: Alyssa Ross <hi@alyssa.is>

But I'd still like to get to the bottom of whether release/installer
works.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]