From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Prikler Subject: unexpected reproducibility of reproducible blog post? Date: Mon, 27 Apr 2020 00:53:42 +0200 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:42322) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jSq9v-0008Um-71 for guix-devel@gnu.org; Sun, 26 Apr 2020 18:53:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jSq9s-0004dV-4v for guix-devel@gnu.org; Sun, 26 Apr 2020 18:53:57 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:43202) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jSq9r-0004aG-CH for guix-devel@gnu.org; Sun, 26 Apr 2020 18:53:55 -0400 In-Reply-To: CAJ3okZ3mbK-HQ5-FH+ESMPxi8QCeWVpEswkdnXJE_9SuG8WtJQ@mail.gmail.com List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane-mx.org@gnu.org Sender: "Guix-devel" To: zimon.toutoune@gmail.com Cc: guix-devel@gnu.org Hi simon, I've executed your commands, et voilĂ  yours: /gnu/store/klisfr3a4wxb9dc5sgibb45kky72kg65-docker-pack.tar mine: /gnu/store/klisfr3a4wxb9dc5sgibb45kky72kg65-docker-pack.tar Unsurprisingly, this did not change when adding channels -- though, if you were to add your personal channel with some override for gcc- toolchain, things might be different. I don't know, what configuration exactly went into the blog post, but I assume, it is not the same as for the time-machine experiments before. Since the prefix `guix time-machine --channels=guix-version-for- reproduction.txt --` appears to be missing from the command, that hash is therefore probably not indicative of anything. I think the larger problem here is that, while Guix itself is reproducible, Guix + org-mode (specifically the latter) is not. Particularly, looking at the source[1,2], it appears as if all code blocks were evaluated once, but evaluating them again in a new environment would bring different results. In other words, you'd have to use `guix time-machine` inside `guix time-machine` to get a truly reproducibly org-mode file, or else come up with a smart way of dynamically updating the hash in the source blocks themselves. All the best, Leo [1] https://lists.gnu.org/archive/html/guix-devel/2020-01/msg00106.html [2] https://github.com/khinsen/reproducibility-with-guix/blob/master/reproducibility-with-guix.org