Hi,

On Fri, 14 Apr 2023 15:06:39 -0700 Vagrant Cascadian 
<vagr...@reproducible-builds.org> wrote:
> We had a bit of a discussion in in the #reproduciblebuilds channel about
> build paths, and it occurred to me that if buildd.debian.org used a
> predictible build path.

I think you forgot to finish this "if"?

> Build paths are one of the larger sources sources of reproducibility
> issues(~10% of the archive are still affected), and while the workaround
> is relatively simple (build in a chroot with the same build path), not
> having to do so would be very helpful!
> 
> For example, a build of 0ad uses a randomized string in the Build-Path:
> 
>   
> https://buildinfos.debian.net/buildinfo-pool/0/0ad/0ad_0.0.26-3_i386.buildinfo
> 
>   Build-Path: /build/0ad-al23I5/0ad-0.0.26
> 
> If this were instead a build path such as:
> 
>   Build-Path: /build/0ad-0.0.26-3_i386
> 
> I understand that the build path is randomized a bit in order to avoid
> collisions with concurrent builds of the same package version.

Yes, but whether this is useful in practice depends on how the autobuilders
utilize sbuild. Maybe this isn't even relevant in practice (anymore)?

> At least some sbuild backends (unshare mode) can provide an independent
> /build directory for each build, avoiding the risk of collisions. My
> understanding is buildd.debian.org uses a variant of sbuild?

Yes, but the --build-path option is also available for other backends.

> I think I could probably come up with a way in sbuild to configure a
> unique /build directory using bind-mounts to a randomized directory, if
> that would be helpful. Other approaches might involve using mount
> namespaces?

I think sbuild can already do what you want it to do (or otherwise it wouldn't
be another backend of debrebuild from devscripts). If it cannot, please open a
bug against sbuild.

Thanks!

cheers, josch

Attachment: signature.asc
Description: signature

Reply via email to