From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id uLh/KCvVyF87SQAA0tVLHw (envelope-from ) for ; Thu, 03 Dec 2020 12:08:11 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id EIU8JCvVyF/cMQAAbx9fmQ (envelope-from ) for ; Thu, 03 Dec 2020 12:08:11 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id C063594038E for ; Thu, 3 Dec 2020 12:08:10 +0000 (UTC) Received: from localhost ([::1]:47470 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kknP7-0007Lo-HM for larch@yhetil.org; Thu, 03 Dec 2020 07:08:09 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36236) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kknP0-0007L1-7r for bug-guix@gnu.org; Thu, 03 Dec 2020 07:08:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:55461) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kknP0-0001kt-0v for bug-guix@gnu.org; Thu, 03 Dec 2020 07:08:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kknOz-0007O1-Qo for bug-guix@gnu.org; Thu, 03 Dec 2020 07:08:01 -0500 X-Loop: help-debbugs@gnu.org Subject: bug#26247: Gettext introduces timestamps in .mo files Resent-From: Julien Lepiller Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Thu, 03 Dec 2020 12:08:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 26247 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Ludovic =?UTF-8?Q?Court=C3=A8s?= , zimoun Received: via spool by 26247-submit@debbugs.gnu.org id=B26247.160699725628349 (code B ref 26247); Thu, 03 Dec 2020 12:08:01 +0000 Received: (at 26247) by debbugs.gnu.org; 3 Dec 2020 12:07:36 +0000 Received: from localhost ([127.0.0.1]:38774 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kknOZ-0007NB-FP for submit@debbugs.gnu.org; Thu, 03 Dec 2020 07:07:35 -0500 Received: from lepiller.eu ([89.234.186.109]:56280) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kknOW-0007N0-Oo for 26247@debbugs.gnu.org; Thu, 03 Dec 2020 07:07:33 -0500 Received: from lepiller.eu (localhost [127.0.0.1]) by lepiller.eu (OpenSMTPD) with ESMTP id 76d5a666; Thu, 3 Dec 2020 12:07:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=lepiller.eu; h=date :in-reply-to:references:mime-version:content-type :content-transfer-encoding:subject:to:cc:from:message-id; s= dkim; bh=rBfBaCbucoLbNEa9dQRrMQlstWw0jWg7w5YCN/+EIRY=; b=h4peQKS AOfhbDLCm4gAV/+aJguI5Xfc06FD0k/JOV7bH7Kr7q1/sv9hgmlx6XwYEywT5Q7y FxjosqybR9Ys2lJHp5LzCl5wD+yDSD7NyQMhUsT/CX9QWxMfQopQLnFflRUjxZDl f+k7c6Yvea22EioLwoHtHksADj6SHj28LkDFJji5C8Gs01t2JErxzNy4/KFuXGGr G/lmu0ZF43vIl1lB1EOPwDPpqGLPugwX5Ni4NijjYmqe9IBlR9dvp+XEWT1WP5bz CPwFt55rEOFByPrmn54GrlaHqwNdmgE71jVG61f3ueYnmbFq6grpDJ52fg82090V OIn2gDt26GzU2RQ== Received: by lepiller.eu (OpenSMTPD) with ESMTPSA id ac972a89 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); Thu, 3 Dec 2020 12:07:29 +0000 (UTC) Date: Thu, 03 Dec 2020 07:07:16 -0500 User-Agent: K-9 Mail for Android In-Reply-To: <87v9djgox5.fsf@gnu.org> References: <8760iyxp3t.fsf@gnu.org> <865z5luzxx.fsf@gmail.com> <87v9djgox5.fsf@gnu.org> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----YIZFI38RP3RPKLPZYBMF4D7MU7LQ2P" Content-Transfer-Encoding: 7bit From: Julien Lepiller Message-ID: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: 26247@debbugs.gnu.org Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -1.18 Authentication-Results: aspmx1.migadu.com; dkim=fail (headers rsa verify failed) header.d=lepiller.eu header.s=dkim header.b=h4peQKS ; dmarc=fail reason="SPF not aligned (relaxed)" header.from=lepiller.eu (policy=none); spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Queue-Id: C063594038E X-Spam-Score: -1.18 X-Migadu-Scanner: ns3122888.ip-94-23-21.eu X-TUID: IW5dJzKvMpgT ------YIZFI38RP3RPKLPZYBMF4D7MU7LQ2P Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable So it's not gettext itself, but our build system that generates the en@quot= e and en@boldquote files=2E Do we really need them? If so, we should find a= way to generate them reproducibly=2E Le 3 d=C3=A9cembre 2020 05:32:54 GMT-05:00, "Ludovic Court=C3=A8s" a =C3=A9crit : >Hi Simon, > >zimoun skribis: > >> On Fri, 24 Mar 2017 at 23:54, ludo@gnu=2Eorg (Ludovic Court=C3=A8s) wro= te: >> >>> Gettext 0=2E19=2E8=2E1 (current core-updates, >>> 77ab6983a19ef307558ab2607920158d6bb94ba8) introduces timestamps in >=2Emo >>> file, without honoring SOURCE_DATE_EPOCH, which leads to >>> non-reproducible builds (for example =E2=80=98guix=E2=80=99)=2E >> >> Is it still relevant? Since Gettext is now at 0=2E20=2E1=2E How can I >> reproduce the issue? > >I still see this: > >--8<---------------cut here---------------start------------->8--- >$ guix challenge guix --substitute-urls=3D"https://ci=2Eguix=2Egnu=2Eorg >https://bayfront=2Eguix=2Egnu=2Eorg" >updating substitutes from 'https://bayfront=2Eguix=2Egnu=2Eorg'=2E=2E=2E = 100=2E0% >/gnu/store/babcmx68gkfxwzr3rmccan88dqjiqzb4-guix-1=2E2=2E0-3=2E35a32fe >contents differ: >no local build for >'/gnu/store/babcmx68gkfxwzr3rmccan88dqjiqzb4-guix-1=2E2=2E0-3=2E35a32fe' >https://ci=2Eguix=2Egnu=2Eorg/nar/lzip/babcmx68gkfxwzr3rmccan88dqjiqzb4-g= uix-1=2E2=2E0-3=2E35a32fe: >13wvxga668grzs0p6sp0ghvdiy96nc9w71vs11djjkypsaf7wpw1 >https://bayfront=2Eguix=2Egnu=2Eorg/nar/lzip/babcmx68gkfxwzr3rmccan88dqji= qzb4-guix-1=2E2=2E0-3=2E35a32fe: >1rpwil9h2whjd9dbwpikxn8prkg924nhljglwj9yjijh578nlfr8 > differing files: > /share/locale/en@quot/LC_MESSAGES/guix=2Emo > /share/locale/en@quot/LC_MESSAGES/guix-packages=2Emo > /share/locale/en@boldquot/LC_MESSAGES/guix=2Emo > /share/locale/en@boldquot/LC_MESSAGES/guix-packages=2Emo > /share/info/guix-cookbook=2Ede=2Einfo=2Egz > /lib/guile/3=2E0/site-ccache/guix/workers=2Ego > /lib/guile/3=2E0/site-ccache/guix/ui=2Ego > /lib/guile/3=2E0/site-ccache/guix/swh=2Ego > /lib/guile/3=2E0/site-ccache/guix/svn-download=2Ego >[=E2=80=A6] >--8<---------------cut here---------------end--------------->8--- > >=E2=80=98--diff=3Ddiffoscope=E2=80=99 is not an option here because it ta= kes too long >looking at all the =2Ego files=E2=80=A6 > >A focused diff shows this: > >--8<---------------cut here---------------start------------->8--- >$ diffoscope --exclude-directory-metadata=3Dyes >/tmp/{t1,t2}/share/locale/en@quot/ >--- /tmp/t1/share/locale/en@quot/ >+++ /tmp/t2/share/locale/en@quot/ >=E2=94=82 --- /tmp/t1/share/locale/en@quot/LC_MESSAGES >=E2=94=9C=E2=94=80=E2=94=80 +++ /tmp/t2/share/locale/en@quot/LC_MESSAGES >=E2=94=82 =E2=94=82 --- /tmp/t1/share/locale/en@quot/LC_MESSAGES/guix-p= ackages=2Emo >=E2=94=82 =E2=94=9C=E2=94=80=E2=94=80 +++ /tmp/t2/share/locale/en@quot/LC= _MESSAGES/guix-packages=2Emo >=E2=94=82 =E2=94=82 =E2=94=9C=E2=94=80=E2=94=80 msgunfmt {} >=E2=94=82 =E2=94=82 =E2=94=82 @@ -1,12 +1,12 @@ >=E2=94=82 =E2=94=82 =E2=94=82 msgid "" >=E2=94=82 =E2=94=82 =E2=94=82 msgstr "" >=E2=94=82 =E2=94=82 =E2=94=82 "Project-Id-Version: guix 1=2E2=2E0-3=2E35= a32fe\n" >=E2=94=82 =E2=94=82 =E2=94=82 "Report-Msgid-Bugs-To: bug-guix@gnu=2Eorg\= n" >=E2=94=82 =E2=94=82 =E2=94=82 -"PO-Revision-Date: 2020-11-29 18:33+0000\n= " >=E2=94=82 =E2=94=82 =E2=94=82 +"PO-Revision-Date: 2020-12-02 10:10+0000\n= " >=E2=94=82 =E2=94=82 =E2=94=82 "Last-Translator: Automatically generated\= n" >=E2=94=82 =E2=94=82 =E2=94=82 "Language-Team: none\n" >=E2=94=82 =E2=94=82 =E2=94=82 "Language: en@quot\n" >=E2=94=82 =E2=94=82 =E2=94=82 "MIME-Version: 1=2E0\n" >=E2=94=82 =E2=94=82 =E2=94=82 "Content-Type: text/plain; charset=3DUTF-8= \n" >=E2=94=82 =E2=94=82 =E2=94=82 "Content-Transfer-Encoding: 8bit\n" >=E2=94=82 =E2=94=82 =E2=94=82 "Plural-Forms: nplurals=3D2; plural=3D(n != =3D 1);\n" >=E2=94=82 =E2=94=82 --- /tmp/t1/share/locale/en@quot/LC_MESSAGES/guix= =2Emo >=E2=94=82 =E2=94=9C=E2=94=80=E2=94=80 +++ /tmp/t2/share/locale/en@quot/LC= _MESSAGES/guix=2Emo >=E2=94=82 =E2=94=82 =E2=94=9C=E2=94=80=E2=94=80 msgunfmt {} >=E2=94=82 =E2=94=82 =E2=94=82 @@ -1,12 +1,12 @@ >=E2=94=82 =E2=94=82 =E2=94=82 msgid "" >=E2=94=82 =E2=94=82 =E2=94=82 msgstr "" >=E2=94=82 =E2=94=82 =E2=94=82 "Project-Id-Version: guix 1=2E2=2E0-3=2E35= a32fe\n" >=E2=94=82 =E2=94=82 =E2=94=82 "Report-Msgid-Bugs-To: bug-guix@gnu=2Eorg\= n" >=E2=94=82 =E2=94=82 =E2=94=82 -"PO-Revision-Date: 2020-11-29 18:33+0000\n= " >=E2=94=82 =E2=94=82 =E2=94=82 +"PO-Revision-Date: 2020-12-02 10:10+0000\n= " >=E2=94=82 =E2=94=82 =E2=94=82 "Last-Translator: Automatically generated\= n" >=E2=94=82 =E2=94=82 =E2=94=82 "Language-Team: none\n" >=E2=94=82 =E2=94=82 =E2=94=82 "Language: en@quot\n" >=E2=94=82 =E2=94=82 =E2=94=82 "MIME-Version: 1=2E0\n" >=E2=94=82 =E2=94=82 =E2=94=82 "Content-Type: text/plain; charset=3DUTF-8= \n" >=E2=94=82 =E2=94=82 =E2=94=82 "Content-Transfer-Encoding: 8bit\n" >=E2=94=82 =E2=94=82 =E2=94=82 "Plural-Forms: nplurals=3D2; plural=3D(n != =3D 1);\n" >--8<---------------cut here---------------end--------------->8--- > >Ludo=E2=80=99=2E ------YIZFI38RP3RPKLPZYBMF4D7MU7LQ2P Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable So it's not gettext itself, but our build system t= hat generates the en@quote and en@boldquote files=2E Do we really need them= ? If so, we should find a way to generate them reproducibly=2E

Le 3 d=C3=A9cembre 2020 05:32:54 GMT-05:00, "Ludovic = Court=C3=A8s" <ludo@gnu=2Eorg> a =C3=A9crit :
Hi Simon,

zimoun <zimon=2Etoutoune@gmail= =2Ecom> skribis:

On Fri, 24 Mar 2017 at 23:54, ludo@gnu=2Eorg (Ludovic Court=C3=A8s) wrote= :

Gettext 0=2E19= =2E8=2E1 (current core-updates,
77ab6983a19ef307558ab2607920158d6bb94ba8= ) introduces timestamps in =2Emo
file, without honoring SOURCE_DATE_EPOC= H, which leads to
non-reproducible builds (for example =E2=80=98guix=E2= =80=99)=2E

Is it still relevant? Since Gettext is now= at 0=2E20=2E1=2E How can I
reproduce the issue?

I= still see this:

--8<---------------cut here---------------start-= ------------>8---
$ guix challenge guix --substitute-urls=3D"https://= ci=2Eguix=2Egnu=2Eorg https= ://bayfront=2Eguix=2Egnu=2Eorg"
updating substitutes from 'https://b= ayfront=2Eguix=2Egnu=2Eorg'=2E=2E=2E 100=2E0%
/gnu/store/babcmx68gkfxwzr= 3rmccan88dqjiqzb4-guix-1=2E2=2E0-3=2E35a32fe contents differ:
no local= build for '/gnu/store/babcmx68gkfxwzr3rmccan88dqjiqzb4-guix-1=2E2=2E0-3=2E= 35a32fe'
https://ci=2Eguix=2Egnu= =2Eorg/nar/lzip/babcmx68gkfxwzr3rmccan88dqjiqzb4-guix-1=2E2=2E0-3=2E35a32fe= : 13wvxga668grzs0p6sp0ghvdiy96nc9w71vs11djjkypsaf7wpw1
https://bayfront=2Eguix=2Egnu=2Eorg/nar/lzi= p/babcmx68gkfxwzr3rmccan88dqjiqzb4-guix-1=2E2=2E0-3=2E35a32fe: 1rpwil9h= 2whjd9dbwpikxn8prkg924nhljglwj9yjijh578nlfr8
differing files:
/= share/locale/en@quot/LC_MESSAGES/guix=2Emo
/share/locale/en@quot/LC_= MESSAGES/guix-packages=2Emo
/share/locale/en@boldquot/LC_MESSAGES/gu= ix=2Emo
/share/locale/en@boldquot/LC_MESSAGES/guix-packages=2Emo
= /share/info/guix-cookbook=2Ede=2Einfo=2Egz
/lib/guile/3=2E0/site= -ccache/guix/workers=2Ego
/lib/guile/3=2E0/site-ccache/guix/ui=2Ego<= br> /lib/guile/3=2E0/site-ccache/guix/swh=2Ego
/lib/guile/3=2E0/s= ite-ccache/guix/svn-download=2Ego
[=E2=80=A6]
--8<---------------c= ut here---------------end--------------->8---

=E2=80=98--diff=3Dd= iffoscope=E2=80=99 is not an option here because it takes too long
looki= ng at all the =2Ego files=E2=80=A6

A focused diff shows this:
--8<---------------cut here---------------start------------->8---$ diffoscope --exclude-directory-metadata=3Dyes /tmp/{t1,t2}/share/locale/= en@quot/
--- /tmp/t1/share/locale/en@quot/
+++ /tmp/t2/share/locale/e= n@quot/
=E2=94=82 --- /tmp/t1/share/locale/en@quot/LC_MESSAGES
=E2= =94=9C=E2=94=80=E2=94=80 +++ /tmp/t2/share/locale/en@quot/LC_MESSAGES
= =E2=94=82 =E2=94=82 --- /tmp/t1/share/locale/en@quot/LC_MESSAGES/guix-pac= kages=2Emo
=E2=94=82 =E2=94=9C=E2=94=80=E2=94=80 +++ /tmp/t2/share/local= e/en@quot/LC_MESSAGES/guix-packages=2Emo
=E2=94=82 =E2=94=82 =E2=94=9C= =E2=94=80=E2=94=80 msgunfmt {}
=E2=94=82 =E2=94=82 =E2=94=82 @@ -1,12 +1= ,12 @@
=E2=94=82 =E2=94=82 =E2=94=82 msgid ""
=E2=94=82 =E2=94=82 = =E2=94=82 msgstr ""
=E2=94=82 =E2=94=82 =E2=94=82 "Project-Id-Version:= guix 1=2E2=2E0-3=2E35a32fe\n"
=E2=94=82 =E2=94=82 =E2=94=82 "Report-Ms= gid-Bugs-To: bug-guix@gnu=2Eorg\n"
=E2=94=82 =E2=94=82 =E2=94=82 -"PO-Re= vision-Date: 2020-11-29 18:33+0000\n"
=E2=94=82 =E2=94=82 =E2=94=82 +"PO= -Revision-Date: 2020-12-02 10:10+0000\n"
=E2=94=82 =E2=94=82 =E2=94=82 = "Last-Translator: Automatically generated\n"
=E2=94=82 =E2=94=82 =E2=94= =82 "Language-Team: none\n"
=E2=94=82 =E2=94=82 =E2=94=82 "Language: e= n@quot\n"
=E2=94=82 =E2=94=82 =E2=94=82 "MIME-Version: 1=2E0\n"
=E2= =94=82 =E2=94=82 =E2=94=82 "Content-Type: text/plain; charset=3DUTF-8\n"=E2=94=82 =E2=94=82 =E2=94=82 "Content-Transfer-Encoding: 8bit\n"
=E2= =94=82 =E2=94=82 =E2=94=82 "Plural-Forms: nplurals=3D2; plural=3D(n !=3D 1= );\n"
=E2=94=82 =E2=94=82 --- /tmp/t1/share/locale/en@quot/LC_MESSAGES= /guix=2Emo
=E2=94=82 =E2=94=9C=E2=94=80=E2=94=80 +++ /tmp/t2/share/local= e/en@quot/LC_MESSAGES/guix=2Emo
=E2=94=82 =E2=94=82 =E2=94=9C=E2=94=80= =E2=94=80 msgunfmt {}
=E2=94=82 =E2=94=82 =E2=94=82 @@ -1,12 +1,12 @@=E2=94=82 =E2=94=82 =E2=94=82 msgid ""
=E2=94=82 =E2=94=82 =E2=94=82 = msgstr ""
=E2=94=82 =E2=94=82 =E2=94=82 "Project-Id-Version: guix 1=2E2= =2E0-3=2E35a32fe\n"
=E2=94=82 =E2=94=82 =E2=94=82 "Report-Msgid-Bugs-To= : bug-guix@gnu=2Eorg\n"
=E2=94=82 =E2=94=82 =E2=94=82 -"PO-Revision-Date= : 2020-11-29 18:33+0000\n"
=E2=94=82 =E2=94=82 =E2=94=82 +"PO-Revision-D= ate: 2020-12-02 10:10+0000\n"
=E2=94=82 =E2=94=82 =E2=94=82 "Last-Trans= lator: Automatically generated\n"
=E2=94=82 =E2=94=82 =E2=94=82 "Langua= ge-Team: none\n"
=E2=94=82 =E2=94=82 =E2=94=82 "Language: en@quot\n"=E2=94=82 =E2=94=82 =E2=94=82 "MIME-Version: 1=2E0\n"
=E2=94=82 =E2=94= =82 =E2=94=82 "Content-Type: text/plain; charset=3DUTF-8\n"
=E2=94=82 = =E2=94=82 =E2=94=82 "Content-Transfer-Encoding: 8bit\n"
=E2=94=82 =E2= =94=82 =E2=94=82 "Plural-Forms: nplurals=3D2; plural=3D(n !=3D 1);\n"
-= -8<---------------cut here---------------end--------------->8---
<= br>Ludo=E2=80=99=2E



------YIZFI38RP3RPKLPZYBMF4D7MU7LQ2P--