Sunday, 21 May 2023

Re: incoming change to task handling in livecd-rootfs in mantic

On Fri, 19 May 2023 at 22:38, Iain Lane <> wrote:
On Fri, May 19, 2023 at 09:05:28PM +1200, Michael Hudson-Doyle wrote:
> After a few rounds of fixups, this change passed all tests and has now
> migrated to release, so the next round of mantic image builds will be built
> with it. Let me know if you see anything strange in them!

Really nice, great work. This has been long overdue, glad it finally got
sorted out.

Thanks! I think it makes things a bit saner.
Although the backslash line was one of my favourite lines of code in the
archive and I'll be sad to see it go. :-)

Heh yes. At least version control will preserve it for future generations...

I was reminded of

When reading this thread. tl;dr is that it's not (was not at the time)
possible to seed new packages post-release because germinate isn't being
run for -updates in the publisher so the newly-seeded packages don't get
Task headers. Would that be any more possible to achieve now? (For
seeding only: *un*seeding is more gnarly, it involves knowing how to
have -updates override release.)

Modulo what Steve said I think this mostly fixed now, to the extent that additions and removals to seeds will just be reflected in the next image build.

The gap we have is that if a seeded package has different dependencies in different pockets, that might not get picked up. But this seems a touch edge casey.

Thinking about this a bit more... what is germinate actually for in this context? :-)

The way packages from a seed end up in an image goes like this at the moment:

1. it is listed in the seed
2. germinate runs and puts the package and all its dependencies into a text file
3. live-build reads this text file and uses apt to install the packages
(4. we run mimimize-manual at some point so removing a seeded package and running autoremove does something useful)

The thing about this is, *apt* obviously knows how to find the dependencies of a package. Why don't we just shove the packages listed into the seed straight into the file live-build reads?

(I suppose one answer might be to do with alternatives handling? cf -- does germinate do anything clever to satisfy alternatives with a minimal number of extra packages or anything like that?)

((Clearly we need something like germinate to generate the component mismatches reports. But maybe not at image build time?))



Iain Lane                                  [ ]
Debian Developer                                   [ ]
Ubuntu Developer                                   [ ]
ubuntu-devel mailing list
Modify settings or unsubscribe at: