From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: bug#36747: Official MesCC bootstrap binaries differ from my locally built ones Date: Sun, 21 Jul 2019 20:56:16 -0400 Message-ID: <87ftmy51kk.fsf@netris.org> References: <875znwcoo9.fsf@netris.org> <87ef2j1pgt.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:57550) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hpMfP-0007nv-NJ for bug-guix@gnu.org; Sun, 21 Jul 2019 20:59:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hpMfO-0006VF-LW for bug-guix@gnu.org; Sun, 21 Jul 2019 20:59:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:50925) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hpMfO-0006V7-IS for bug-guix@gnu.org; Sun, 21 Jul 2019 20:59:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87ef2j1pgt.fsf@gnu.org> 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: Jan Nieuwenhuizen Cc: 36747@debbugs.gnu.org Hi Janneke, Thanks very much for the quick response to this issue. Jan Nieuwenhuizen wrote: > In any case, if store references are present in bootstrap binaries, then > they should be reproducible. Removing store references is one way to > make them reproducible but I'm not sure if that's the best way? > > Making a reference invalid helps making sure that it isn't used. But if > it cannot be used anyway, removing it could hide the fact that it may > differs accros builds, as we are finding out right now. Thoughts? I agree that store references should be removed, i.e. the hash component of the store file names should be replaced with all eeeeee's. Note that 'e' is never found in a valid Nix base32 hash string. This is what was done in our older bootstrap binaries, which we've been using for many years, since the early days of Guix. I'd like to build the new bootstrap binaries, but I'm unsure how to proceed. In your new batch of commits, you reference the commit that was used to perform the build: > From 172ee1045689cd42d2de837ee560d32c43730cc3 Mon Sep 17 00:00:00 2001 > From: Jan Nieuwenhuizen > Date: Sun, 21 Jul 2019 14:38:52 +0200 > Subject: [PATCH 3/4] bootstrap: bootstrap-mescc-tools: Update. > > Built with > 2e13b6fff94027158b3de5d3a1469dc9f89b0c39 bootstrap: mes-minimal-stripped: Remove store references. > > * gnu/packages/bootstrap.scm (%bootstrap-mescc-tools): Update. I guess that I should build from a checkout of commit 2e13b6fff94027158b3de5d3a1469dc9f89b0c39. However, that commit is not on Savannah, as demonstrated by the following URL, which reports "Bad commit reference: 2e13b6fff94027158b3de5d3a1469dc9f89b0c39". https://git.savannah.gnu.org/cgit/guix.git/commit/?id=2e13b6fff94027158b3de5d3a1469dc9f89b0c39 The other issue is that your proposed new fixes do not seem to apply to 'master'. Did you build the newly fixed bootstrap tarballs from something based on 'core-updates'? If so, that leaves me no way to independently verify the new bootstrap without putting my trust in the slightly older bootstrap -- the same one that I just failed to reproduce. What I need is a way to build the new bootstrap tarballs without using the existing 'core-updates' branch. I need a way to build them from a branch that's based upon the much older bootstrap binaries that we've been using for many years. Preferably, they should be built from something close to current 'master'. Is this feasible? Thanks, Mark