Re: Reproducible builds of ports
Simon Wright <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.ports |
|---|---|
| Message-ID | <[email protected]> |
On 2025-11-10 02:04, cen wrote: >> With 30000+ ports that can build 37000+ port-packages, >> I doubt anyone knows which ones can produce byte-for-byte >> exact matches from correctly matched inputs vs. which ones >> cannot overall. That likely could be a whole research >> topic of its own. > This is exactly what I want to find out. :) >> I also do not know if port-package files (.pkg) would >> always match in cases where the installed materials >> would be a byte-for-byte match. Those two are not the >> same thing. Which are you after? Both types? > > The main goal is this: If I install a package XYZ can I rebuild it > locally and get the exact same output, bit-by-bit identical. > > The build environment being as close to upstream build environment is a > prerequisite to achieve that goal. > It does not necessarily mean it has to be 100% identical though, some > differences may be forgiving. Unless I'm missing something, wouldn't using poudriere with the same make.conf as the package builders and default options from the same git build give *functionally* identical packages? I don't have a need for identical packages but I find it useful and elegant to check the git build level being used by the package builders, checkout the same build then build my few packages and dependencies locally. That way I get my options included in my packages where necessary but the rest of the packages are unaffected. Doing this for the whole tree with default options throughout should get the OP what he needs. Yes? Or have I misunderstood what is needed? HTH, Simon.
OpenPGP_0x3E276F607A844457.asc
(application/pgp-keys, 2.4 KB)
-----BEGIN PGP PUBLIC KEY BLOCK----- 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 gncBFSi/oRtENuYjo3CUQV/E63A= =S2zc -----END PGP PUBLIC KEY BLOCK-----
OpenPGP_signature.asc
(application/pgp-signature, 665 B)
-----BEGIN PGP SIGNATURE----- wsD5BAABCAAjFiEE5UAuvHys2iLKrKH5PidvYHqERFcFAmkRTBkFAwAAAAAACgkQPidvYHqERFc3 /Av/YUfum2+NeKWREzWzVwiDji/06RBCYSXbf5+ZKhK6QwQ1BM/vcOcmgzIjcbvbTmenMRDkIPLN 8G0ZLMLVDyHGckaiUOn4qMQRNB4OYREejt5BWhigdKjWC81N+IuCGA5xbsoALUC5dJdyem7jo4xi 1JVB3qLghNHOPrx0txwKVynxXt09BOQRRJgvnwWmrnTDcl3KbfUfL4gux2xkT7U1np702Fihau5W Z43/EMJc2MGmjdNMuc0n194xxyCFqmbHeoJgEXxLzipnf8NcmbKCRmw5z719vE56MJTjDXMywXXS 6BOPva8MTaIfA2Yu91kX8JiQ8pZdE2RQsvJppepo3mIki0c8Bgey+MKFmot7+4jW9Duf6jpccEww 6uzd8t22a3inIWf5watIj5vSaG24q+TOetHlGDlmf39iCyTVK74FbFkv2wUoqlkpHO5pSUD1N66+ HTc6cm7iNPU0X46fZBgSuWOMS3mEF70ZT+Ku0jO55yOsbQuAZ7OwlCSKGtvp =Wg9F -----END PGP SIGNATURE-----