Build ID & reproducible build
Daniel Kahn Gillmor
dkg at fifthhorseman.net
Sun Dec 2 11:48:47 GMT 2018
On Sun 2018-12-02 11:25:47 +0100, Domenico Andreoli wrote:
> in working at making dwarves [0] build reproducible I stumbled upon
> the Build ID, which is just the root of tons of other diffs.
>
> diffoscope highlights:
>
> │ │ │ │ Displaying notes found in: .note.gnu.build-id
> │ │ │ │ Owner Data size Description
> │ │ │ │ GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring)
> │ │ │ │ - Build ID: 6f3f14da239d0b68ba179ee7a2f2570c4d970db0
> │ │ │ │ + Build ID: c68caf4dba0ea46c05dddf9405bda4290c6ceaa6
The build ID is for associating debug files with their active binaries.
They are deterministically generated from the binaries themselves.
So while it may look like a "root cause", i think you've got the
causality reversed -- this is a symptom, and not a cause. As long as
any variation exists in the binaries, the build ID will differ. Once the
binaries are concretely reproducible, the build ID will become
reproducible too.
i agree with you that this should be documented someplace. i don't know
whether it already is written up someplace though (i haven't really
searched).
--dkg
More information about the Reproducible-builds
mailing list