Hi, On 7/11/23 00:55, Sam Hartman wrote:
* The more I look at this, I think the real complexity is not in bootstrapping, but is in the rest of the proposal for canonicalizing paths. I am very uncomfortable overall; it seems complicated enough that we probably will break something somewhere. I do not see anry better options though. I think this affects things in a couple ways:
* I hope we can put the bootstrapping decision behind us soon and focus on the harder problem, because I think bootstrapping is a bit of a bikeshed at this point.
There is only one important decision to be made about bootstrapping: do we want to extend the protocol, or not?
If yes, then the rest of the bootstrapping process can be decided after we have a solution for upgrades, and especially should not put additional constraints there, so I'd explicitly avoid making a decision here that will then reappear with a prefix of "but we already decided that" during the complex part.
If no, then bootstrapping becomes part of the constraint set, same as "upgrades need to be facilitated through packages whose installation order is defined through package relationships as interpreted by the current stable release of apt" we also get "packages need to be installable by unpacking their data member through tar, then subsequently installing the package over that with the just-unpacked version of dpkg."
And because the bootstrap scenario uses a as-of-yet unreleased version of the dpkg package, we have way more freedom there than with the upgrade process, so optimizing this first is the best way to sink a lot of cost into a solution.
Simon