Re: Reproducible builds of ports

Andrea Cocito <[email protected]>
Newsgroups gmane.os.freebsd.devel.ports
Message-ID <[email protected]>

Sent from my iPhone

> On 10 Nov 2025, at 09:05, Tatsuki Makino <[email protected]> wrote:
> However, if the reason curl is being rebuilt is due to an upgrade of the it depends on, then rebuilding only ftp/curl can avoid rebuilding rust.

Hi,

I am not completely sure this is correct if we are talking in terms of *reprducible* builds. 

In principle an upgrade in libnghttp2 might trigger a change in the behavior of curl which (even if curl is only a build dependency of rust) might change the way rust is built. 

For this example it is merely theoretical but if you consider a build dependency on a compiler which on its turn depends on a lot of stuff I would not bet on it. 

IMHO the only way a port build might be “reproducible” is:
1. Make a clean and empty machine (from release, no ports, no packages). 
2, Check out somehow the port tree at a stable state
3. cd /usr/ports/some/port ; make

This has always been *the* way to build a “clean” port on FreeBSD. 

Unfortunately, in the last months/years, this often does not even work; and it’s quite sad, when it happens, to see #notabug #wontfix #usepoudriere #usepkg

All the best,

A.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.