Changes between Version 3 and Version 4 of ReproducibleBuilds


Ignore:
Timestamp:
Sep 29, 2022, 7:21:27 PM (2 months ago)
Author:
neverpanic (Clemens Lang)
Comment:

Did some reproducibility testing, and this definitely affects us.

Legend:

Unmodified
Added
Removed
Modified
  • ReproducibleBuilds

    v3 v4  
    2727
    2828The solution is to always specify a specific known-good commit of the upstream repository to use. When new software is available upstream, the portfile can be updated to reference that new version.
     29
     30=== Current reproducibility problems in MacPorts ===
     31
     32At the moment, binary archives in MacPorts are generally not reproducible. The following issues are known and must be fixed to get reproducible binary archives.
     33
     34 - The order of entries in a binary archive depends on the filesystem order. Entries should be sorted before being added to the archives.
     35 - The timestamps of files in a binary archive vary with the local system time. Timestamps for these files should be clamped to a specific maximum value, possibly specified by [https://reproducible-builds.org/specs/source-date-epoch/ $SOURCE_DATE_EPOCH].
     36 - The macOS linker includes a file's modification time when creating debug maps, unless the environment variable `ZERO_AR_DATE` is set (value doesn't matter). Search the ld64 source code for `ZERO_AR_DATE` in `src/ld/Options.cpp` for more information.