From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Subject: bug#35283: ISO images are not reproducible Date: Sun, 21 Apr 2019 18:42:28 +0200 Message-ID: <87imv75myz.fsf@gnu.org> References: <87a7gk9tf4.fsf@gnu.org> <11935672730123242979@scdbackup.webframe.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([209.51.188.92]:59119) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hIFYV-0003c8-0s for bug-guix@gnu.org; Sun, 21 Apr 2019 12:43:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hIFYU-0001e2-2B for bug-guix@gnu.org; Sun, 21 Apr 2019 12:43:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:35460) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hIFYT-0001dy-Vj for bug-guix@gnu.org; Sun, 21 Apr 2019 12:43:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hIFYT-0000hS-SQ for bug-guix@gnu.org; Sun, 21 Apr 2019 12:43:01 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <11935672730123242979@scdbackup.webframe.org> (Thomas Schmitt's message of "Sun, 21 Apr 2019 10:17:59 +0200") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Thomas Schmitt Cc: bug-xorriso@gnu.org, 35283@debbugs.gnu.org Hi, "Thomas Schmitt" skribis: >> 833480cc1f vm: Reset file timestamps in ISO images. > > That's also a big solution for the problem of timestamps of synthetic fil= es. > > I understand that your plan for reproducibility is to make timestamps > completely insignificant. Radical but effective. > > But since you set in commit 6901b9248e SOURCE_DATE_EPOCH to 1980, why not > use the same seconds value for the ISO file objects ? Files in /gnu/store, by convention, all have their mtime set to 1 (one second after the epoch). >> 6901b9248e vm: Reset file timestamps of the EFI image in ISO images. > > Maybe the commit message should have mentioned that setting SOURCE_DATE_E= POCH > not only influences mformat underneath grub-mkrescue, but also the run > of xorriso, where it determines volume date timestamps and GPT individual > UUIDs. > (Other impacts of the variable get overridden by the > -volume_date "all_file_dates" > command in commit 833480cc1f.) AFAICS, setting SOURCE_DATE_EPOCH didn=E2=80=99t have a noticeable impact on Xorriso, or at least it was overridden by the =E2=80=9C-volume_date=E2=80= =9D options that I pass. It=E2=80=99s crucial for me to have the mtime set to 1 for all the files on= the ISO; I wanted the 1980 setting to apply only to =E2=80=98efi.img=E2=80=99. >> 52b5fe5bcf gnu: grub: 'grub-mkrescue' honors 'GRUB_FAT_SERIAL_NUMBER'. > > I still riddle why /efi.img in the 0.16.0 ISO has 1.4 MB of size > but grub-mkrescue.c uses mformat -f 2880, which is supposed to produce > a 2.8 MB FAT image. I haven=E2=80=99t dig deep enough to provide a satisfactory answer. :-) >> 1b0b1651b1 gnu: mtools: 'mformat' initializes boot sector before writi= ng > > How good are chances to bring such changes into upstream ? I=E2=80=99ve emailed them (actually tried to, their mailing list rejected my message.) We=E2=80=99ll see! Ludo=E2=80=99.