Hi all,

On Wed, 17 Jan 2024, at 17:01, Luca Boccassi wrote:
> On Wed, 17 Jan 2024 07:27:48 +0100 Helmut Grohne <hel...@subdivi.de>
>> obs-build has its own implementation of debootstrap in
> init_buildsystem.
>> Unlike other implementations, it does not ensure that packages from
>> the essential set have been configured before unpacking non-essential
>> packages. The Debian policy requires that essential packages have to
>> work at all times after having been configured at least once. Since
>> non-essential packages may assume presence of essential in their
>> Pre-Depends, essential packages must be configured before unpacking
>> non-essential packages. obs-build's implementation does not ensure
>> this property. We can see this in e.g.
>> https://build.opensuse.org/package/live_build_log/home:unit193/certbot-dns-porkbun/Debian_Testing/x86_64
>> where essential package bash is installed after non-essential package
>> python3-cffi-backend.

> I asked the admins and the prjconf for both testing and unstable have
> been fixed so that usrmerge is installed before systemd and udev, so
> builds should be working again now.

Indeed, adding Preinstall: in the project configuration works around the issue.
Another way, and that’s how we do it in Apertis, is to use buildengine: 
debootstrap.
That way obs-build only creates a minimal chroot necessary to run debootstrap, 
and then debootstrap is going to do the right thing.

-- 
Cheers,
  Andrej

Reply via email to