From mboxrd@z Thu Jan 1 00:00:00 1970 From: zimoun Subject: Re: unexpected reproducibility of reproducible blog post? Date: Mon, 27 Apr 2020 12:05:24 +0200 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:39046) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jT0dx-0007CB-Oc for guix-devel@gnu.org; Mon, 27 Apr 2020 06:05:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jT0dw-0008UG-2h for guix-devel@gnu.org; Mon, 27 Apr 2020 06:05:41 -0400 Received: from mail-qt1-x82a.google.com ([2607:f8b0:4864:20::82a]:41312) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jT0dv-0008Ts-Lt for guix-devel@gnu.org; Mon, 27 Apr 2020 06:05:39 -0400 Received: by mail-qt1-x82a.google.com with SMTP id h26so13438526qtu.8 for ; Mon, 27 Apr 2020 03:05:37 -0700 (PDT) In-Reply-To: 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: Leo Prikler Cc: Guix Devel Hi Leo, Thank you for testing. On Mon, 27 Apr 2020 at 00:53, Leo Prikler wrote: > yours: /gnu/store/klisfr3a4wxb9dc5sgibb45kky72kg65-docker-pack.tar > mine: /gnu/store/klisfr3a4wxb9dc5sgibb45kky72kg65-docker-pack.tar Nice! What is your "guix describe"? > 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 do not know. That's why I am asking. :-) Because when reading the blog post, I naively assume that all had been run with the same version of Guix and the post mentions only one commit. Well, if it is not the case, it should be mentioned in the blog post because it is currently misleading, IMO. > I think the larger problem here is that, while Guix itself is > reproducible, Guix + org-mode (specifically the latter) is not. Why? > 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. Do you mean evaluate twice in a row leads to different results? By results, I mean items in '/gnu/store'. Because, yes the org-babel cache should not be reproducible. But that another story and should not impact the result of a source block. > 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. I do not know and I am not sure to follow. My point is: - only one Guix commit is provided by the post, so it seems legitimate to assume this commit had been used for all the post - using this commit leads to different item in the store The question is why? - another commit had been used. Which one? Could be mentioned in the post? - or there is something unexpected and let inspect what. All the best, simon