[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#826158: texinfo: please make makeinfo info output reproducible



Source: texinfo
Version: 6.1.0.dfsg.1-8
Severity: wishlist
Tags: upstream
User: reproducible-builds@lists.alioth.debian.org
Usertags: toolchain
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Dear Maintainer,

Thanks to the SOURCE_DATE_EPOCH [1] support in TL2016, pdf output of
makeinfo can be made reproducible, even when using @today in the texi
file (when SOURCE_DATE_EPOCH_TEX_PRIMITIVES is set to 1).

It would be great to extend the SOURCE_DATE_EPOCH support for info
output from makeinfo. See a proposed solution in the attached patch.

Regards,
Alexis Bienvenüe.

[1] https://reproducible-builds.org/specs/source-date-epoch/
Description: Reproducible info output
 Honour the SOURCE_DATE_EPOCH environment variable to get a reproducible
 @today value for info output when it is set.
 See https://reproducible-builds.org/specs/source-date-epoch/
Author: Alexis Bienvenüe <pado@passoire.fr>

--- texinfo-6.1.0.dfsg.1.orig/tp/Texinfo/Common.pm
+++ texinfo-6.1.0.dfsg.1/tp/Texinfo/Common.pm
@@ -1218,7 +1218,7 @@ sub expand_today($)
     return {'text' => 'a sunny day'};
   }
   my($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst)
-   = localtime(time);
+   = ($ENV{SOURCE_DATE_EPOCH} ? gmtime($ENV{SOURCE_DATE_EPOCH}) : localtime(time));
   $year += ($year < 70) ? 2000 : 1900;
   return $self->gdt('{month} {day}, {year}',
           { 'month' => $self->gdt($MONTH_NAMES[$mon]),

Reply to: