<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 18 March 2017 at 03:19, Robin Becker <span dir="ltr"><<a href="mailto:robin@reportlab.com" target="_blank">robin@reportlab.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">An issue has been raised for reportlab to support a specific environment variable namely SOURCE_DATE_EPOCH. The intent is that we should get our time from this variable rather than time.localtime(time.time()) so that produced documents are more invariant.<br>
<br>
First off is this a reasonable request? The variable is defined by debian here <a href="https://reproducible-builds.org/specs/source-date-epoch/" rel="noreferrer" target="_blank">https://reproducible-builds.or<wbr>g/specs/source-date-epoch/</a><br>
<br>
What happens if other distros decide not to use this environment variable? Do I really want distro specific code in the package?<br></blockquote><div><br></div><div>While the reproducible builds effort started in Debian and is furthest advanced there, it's not distro specific - interested developers working on other distros were already looking into it, and the Core Infrastructure Initiative has backed it as one of their security assurance initiatives. Software Freedom Conservancy have a decent write-up on the current state of things after December's Reproducible Builds Summit: <a href="https://sfconservancy.org/blog/2016/dec/26/reproducible-builds-summit-report/">https://sfconservancy.org/blog/2016/dec/26/reproducible-builds-summit-report/</a> <br><br>However, you'll probably want to make yourself a helper function that uses SOURCE_DATE_EPOCH if defined, and falls back to the current time otherwise. That way you'll get reproducible behaviour when a build system configures the setting, while retaining your current behaviour for environments that don't.<br></div><div><br></div><div>Cheers,<br></div><div>Nick.<br><br></div><div>P.S. A question well worth asking for *us* is whether or not setting SOURCE_DATE_EPOCH appropriately (if it isn't already set in the current environment) should be part of the build system abstraction PEPs. <br></div></div><br>-- <br><div class="gmail_signature">Nick Coghlan   |   <a href="mailto:ncoghlan@gmail.com" target="_blank">ncoghlan@gmail.com</a>   |   Brisbane, Australia</div>
</div></div>