Chris Murphy wrote:
Even at 8% bigger it would be worth it. And probably 16%.
I disagree. We need to stop treating bloat like a feature.
And please see my other replies for why this is a particularly bad tradeoff
in this particular case.
Gaining additional features, like on the fly checksumming is worth
considering (at least not making it harder to implement in the future,
by taking it into account with the work implied in this proposal). The
monolithic ISO check is terrible. It's dog slow. It's optional. And
it's a one time check. Typically real optical media tends to work or
persistently fail; whereas USB sticks can have transient bad reads
(explicit or silently corrupt).
Can't we just drop the mediacheck entirely? It is optional for a reason.
Stacked images on the same media functionality is in the kernel,
it's
not complicated, it's well tested, doesn't require any gymnastics in
the initramfs - your bootloader entries can each point to different
root=UUIDs and image assembly is figured out entirely in kernel code,
no special handling in the client side deliverable. Yes the image
creator needs to know some things to achieve this.
Why stacked images? Consider a single base.img that's maybe 1G, and
now you don't have to do separate composes for server, cloud, GNOME,
KDE, Cinnamon, LXQt, Astronomy that repeat a lot of the same steps,
including expensive steps like compressing the same things over and
over again. Just do a 'dnf group install' tacked onto that base.img,
the work being done is custom for that output, rather than repetitive.
Not complicated. It would be fast enough that the high level variants
could be composed on demand. Seconds. It'd be fast enough to queue it
for download within the hour.
Then how do you deliver the stacked images? Either the user still needs to
download base.img + the specific image the user actually wants, either as 2
downloads (but then how does the user reliably get them onto bootable media?
Surely you don't want to require 2 media!) or as 1 combined download, or you
ship one image with base.img and all the specific layers at once, which will
waste a lot of download size for all the images the user does not care
about. I do not see what use case would be served by stacked images.
What would be a much more useful feature is hybrid netinstall, i.e.,
allowing liveinst to netinstall additional packages on top of the installed
live image. See the Calamares netinstall module (e.g., on my old Kannolo 27
images, as long as I don't have newer ones) for how the user experience can
look like. And that requires only installer support, no file system or
compression support.
Kevin Kofler