On Sun, 17 Jul 2022 at 14:21:30 +0100, Luca Boccassi wrote: > So the reasoning behind adding the override to debootstrap in -- > variant=buildd mode is twofold. > > From a very practical perspective, it means it's supereasy to allow all > those builds and tools you mentioned to run in unmerged-usr, there's no > extra config or code changes required anywhere else, it just works.
Shouldn't `debootstrap --no-merged-usr` also have this behaviour for other variants? If a "larger" component like autopkgtest or piuparts explicitly asks for non-merged /usr in some other variant (in practice it would usually be minbase or default for those tools), it seems like debootstrap should do as it says, even if that means going into the unsupported mode. --variant=buildd currently implies --no-merged-usr, so this would still provide the behaviour you want for buildds. For the older suites where absence of an explicit option is equivalent to --no-merged-usr, this flag-file wouldn't be created anyway, because it's an older suite that doesn't need it? (I've commented as such on debootstrap!71.) > From a strategic point of view, catching all those class of bugs you > mentioned is not trivial It'll be even less trivial if we remove the ability for autopkgtest and piuparts to (create chroots that will) test this code path, which is why I asked for an opt-out mechanism in the first place... > By keeping > the buildds in umerged-usr state for Bookworm, and switching them as > soon as it is released, it seems to me we can avoid caring about > [packages which are misbuilt on merged-/usr] at all. So when do you plan to start operating bookworm and sid buildds as merged-/usr? Toolchain freeze day? Transition freeze day? Full freeze day? Release day? I don't really like the idea of post-release bookworm security updates, etc. being built in chroots that are explicitly unsupported. > Depending on the answer, I > might need to add a new flag to debootstrap to force the unmerged-usr > setup. Right now in the current diff it is implied by --variant=buildd. Isn't that flag just --no-merged-usr, which we've had since Marco added it in 2016? smcv