On Sun, 2023-01-29 at 13:43 +0100, Santiago Vila wrote: > What you call current practice is only current debootstrap behaviour.
Current practice is to use Build-Depends to specify build dependencies in a way that the buildd network will successfully build packages. The data might also be of (limited) use for other purposes. We do *not* specify additional Build-Conflicts (that might make builds fail / produce different results). Neither does the buildd network require that packages already installed are listed additionally in Build-Depends to install those and build packages successfully. The set of preinstalled packages in build environments is decided by the debootstrap implementation, so yes, the debootstrap behavior is current practice. If you want Build-{Depends,Conflicts} to provide stronger promises, that is a change from current practice. And could be extended to forcing /usr/local to be empty and a sane, standard environment and contents of $HOME and anything else that could affect build results. Ansgar