<div dir="ltr"><div><div>Hey Roland and list,<br><br>> Would you need to clamp the timestamps, to ensure that that maximum will <br>
> be at most E2FSPROGS_FAKE_TIME? That way, the older timestamps of the <br>
> files could be preserved.<br><br></div>I am not sure about explicit timestamp clamping (i.e. guarantee that no timestamp could be newer that provided fixed timestamp) happening there but one can argue that if the FS creation is reproducible it means that we have implicit time clamping (i.e. fixed timestamps). Though, in theory, it's still possible to have something like this in the code:<br>some_timestamp = input_fixed_timestamp + 1;<br></div><div>but IMHO it's highly unlikely.</div><div><br></div><div>Beg your pardon, if I got the timestamp clamping idea wrong.</div><div>For my use case what I really care about here is the reproducibility and nothing else so I might not be the best person to discuss this matter with.<br><br>> I was wondering why the environment variable is called <br>
> E2FSPROGS_FAKE_TIME instead of SOURCE_DATE_EPOCH.<br>
> (SOURCE_DATE_EPOCH is used in util/<a href="http://gen-tarball.in" rel="noreferrer" target="_blank">gen-tarball.in</a>, so it's not unknown <br>
> to the project)</div><div>Good question.<br></div><div>I think we can ask the author of <a href="https://github.com/tytso/e2fsprogs/commit/e1f7100643a46456be107b33098f6034b0835e6d">https://github.com/tytso/e2fsprogs/commit/e1f7100643a46456be107b33098f6034b0835e6d</a></div><div><br></div><div>Meanwhile what I can also suggest is to add the retrieval of the <code class="envar">SOURCE_DATE_EPOCH</code> from the environment but still allow it to be overwritten with the contents of E2FSPROGS_FAKE_TIME (in order not to break the existing code that might depend on this env var to be present and used).<br></div><div><br></div><div>Best,<br></div><div>Alex.<br></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 16, 2023 at 6:03 PM Roland Clobus <<a href="mailto:rclobus@rclobus.nl">rclobus@rclobus.nl</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello Alex, list,<br>
<br>
On 16/10/2023 13:03, Alex Zakharov wrote:<br>
> I think we can mention (after verification, see below please) that now <br>
> we can also use mkfs.ext4 (mke2fs)<br>
> <a href="https://github.com/tytso/e2fsprogs/pull/164" rel="noreferrer" target="_blank">https://github.com/tytso/e2fsprogs/pull/164</a><br>
<br>
Would you need to clamp the timestamps, to ensure that that maximum will <br>
be at most E2FSPROGS_FAKE_TIME? That way, the older timestamps of the <br>
files could be preserved.<br>
<br>
I was wondering why the environment variable is called <br>
E2FSPROGS_FAKE_TIME instead of SOURCE_DATE_EPOCH.<br>
(SOURCE_DATE_EPOCH is used in util/<a href="http://gen-tarball.in" rel="noreferrer" target="_blank">gen-tarball.in</a>, so it's not unknown <br>
to the project)<br>
<br>
With kind regards,<br>
Roland Clobus<br>
<br>
</blockquote></div>