[Reproducible-builds] Bug#787444: help2man: support externally-supplied --date for reproducibility

Daniel Kahn Gillmor dkg at fifthhorseman.net
Thu Jun 4 14:19:03 UTC 2015


On Thu 2015-06-04 08:17:59 -0400, Brendan O'Dea wrote:
> The idea was that unless that environment variable was set, the
> behaviour would be unchanged: the current date would be used.  It
> seems unlikely that DEB_BUILD_CHANGELOG would be set accidentally.

right, but this wouldn't be terribly useful for folks like fedora, who
also ship help2man and might want to be reproducible:

 https://admin.fedoraproject.org/pkgdb/package/help2man/
 http://securityblog.redhat.com/2013/09/18/reproducible-builds-for-fedora/

>> If the build system is going to set environment variables, maybe it
>> could set an environment variable with a parseable date string
>> (ISO-8601?) and help2man could look at that environment variable and
>> extract a string from it?  (ideally this extraction step would be
>> TZ-independent, too)
>
> That would also work, and if your reproducible build environment was
> to pull the changelog date and stick it into an environment variable,
> then you should only need to patch the tools rather than the Makefile
> of every package which uses them.
>
> At worst, for the tools you can't patch, you're in the same place you
> are now--having to patch all the Makefiles, and even that is perhaps
> easier as you already have the date:
>
>   --date=${DEB_BUILD_CHANGELOG_DATE:-$(date --iso-8601=seconds)}

Yep, i think this makes sense; reproducible-build folks -- do we want to
take this tack with help2man?  If so, what would the environment
variable be named?  what would its contents be?

         --dkg




More information about the Reproducible-builds mailing list