On 2026-02-14, Ludovic Courtès wrote: > Simon Josefsson via rb-general <[email protected]> > skribis: > >> HP-UX 'make' treats mtime 0 as a missing file, and POSIX encourage it: >> >> https://lists.gnu.org/archive/html/bug-gnulib/2024-12/msg00209.html >> https://lists.gnu.org/archive/html/bug-gnulib/2024-12/msg00227.html >> >> If you want to depend on GNU make behaviour, all is good. > > The Nix build daemon (and thus the Guix daemon) “forever” used mtime = 1 > to work around software that gives mtime == 0 special treatment: > > https://github.com/NixOS/nix/commit/14bc3ce3d6d5745717fa19b8b43b5fdd117ff757 > > It’s probably safer to avoid mtime == 0!
I have noticed a handful of packages in Guix which need a newer date, notably no earlier 1980, but probably other corner cases as well... Specifically, I recall at least one man page generator that only work(s|ed) with SOURCE_DATE_EPOCH newer than ~1980 (although which generator is not coming to me at the moment). There are a handful of comments about dos filesystem timestamps not supporting earlier than 1980... so maybe that is a thing? I also see guix sprinkled with a few other arbitrary values for SOURCE_DATE_EPOCH, although I will admit to being the one who picked some of them in guix semi-arbitrarily... :) But yeah, ideally figuring out a "meaningful" value for SOURCE_DATE_EPOCH is ideal; picking arbitrary timestamps can be more misleading that no timestamp at all... but we all make tradeoffs of judgement at the time with the limited time(stamps) we have. :) live well, vagrant
signature.asc
Description: PGP signature
