From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id oHuAOyTS8GKhSgAAbAwnHQ (envelope-from ) for ; Mon, 08 Aug 2022 11:06:45 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id MPtSOyTS8GJygwEAauVa8A (envelope-from ) for ; Mon, 08 Aug 2022 11:06:44 +0200 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 8EE6036E0A for ; Mon, 8 Aug 2022 11:06:44 +0200 (CEST) Received: from localhost ([::1]:40716 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oKyNs-0007xc-Ba for larch@yhetil.org; Mon, 08 Aug 2022 04:45:13 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54744) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oKyNa-0007xE-4b for guix-devel@gnu.org; Mon, 08 Aug 2022 04:44:54 -0400 Received: from wout5-smtp.messagingengine.com ([64.147.123.21]:57363) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oKyNX-0008Co-OP; Mon, 08 Aug 2022 04:44:53 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.west.internal (Postfix) with ESMTP id 7C0FD32000D9; Mon, 8 Aug 2022 04:44:46 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Mon, 08 Aug 2022 04:44:46 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.net; h= cc:cc:content-transfer-encoding:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:to; s=fm1; t=1659948285; x=1660034685; bh=TLpFdLeH47D6eQhKu6a6wUHB39zP+WGis5olGgzSoC0=; b= iYvW1CgKJFFjQPLjG6p0T69sGKDkDQnyeBTNT7ekJDNCBCFwA7HBupTVYsYEoLDl /Sd5DxGK3yZHj94F8CN6F0JaAscExGf+ZtgckdWC36CDgXsziDrglVl11kbd8P1q 3FyV/8cHeVpcQpil9giltJ+CqV2bQZ6SKzcP4YP+NFOUVtUTUqfC2J9GmtHpZQJs 8PRaSmA/PA1p5noV7Sy9VYXQlJeQOKO30yKNSCcTOERWL+VghCDVVR9VmBtU7H3v dKJ48w8wpbxqCuEckOX7M6YMt+KGSfkvTaP2Edjwjz6Ez7n1fuxKZi41ZZcDE3qS L8yD+iYJ9iST0nKD7StT5Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1659948285; x= 1660034685; bh=TLpFdLeH47D6eQhKu6a6wUHB39zP+WGis5olGgzSoC0=; b=4 CayVtlxHeslHL8dOjieN4eg+/+QxitAOJcxk0h4DAo9+uWoSajFPGWYnrY3RfLA3 BmAYFHSG/viGGukGLQzBjk7jJIftFjMWAguKO09r1T00BdaggOme3xrx4SRLQtEj Ea+EOszGFQk0PdUHmLDp9yvDvgI0KJ5YupQ3Hpk4ORg3S7Ap7QLCq5dD2qnp0Ex2 Ec5HMGe+rY2aY6TCdfxMMwG/JPwDstf5d0Qu4jOY2IZAR3PQtlmSTIlWZ7fSO5mf s/Is9sZLmk3ZXWJjIqIRyd9YUDCLQeI8qnaRN9NZqIsXfLIW+LyOTRvLphfMdld1 ackn7Al+LAbpgPMID+XSA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrvdefkedgtdelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne gotffhvedqqdfjughrqdfuuhhsphgvtghtqdhlohifucdlhedmnecujfgurhephffvvfev ufgjfhffkfggtgfgsehtqhertddttdejnecuhfhrohhmpefmohhnrhgrugcujfhinhhsvg hnuceokhhonhhrrggurdhhihhnshgvnhesfhgrshhtmhgrihhlrdhnvghtqeenucggtffr rghtthgvrhhnpeelleevueeuleefheekieetfeekieegieduffefieeggffhgedvtdfgje duheelfeenucffohhmrghinhepghhnuhdrohhrghenucevlhhushhtvghrufhiiigvpedt necurfgrrhgrmhepmhgrihhlfhhrohhmpehkohhnrhgrugdrhhhinhhsvghnsehfrghsth hmrghilhdrnhgvth X-ME-Proxy: Feedback-ID: i184641e2:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 8 Aug 2022 04:44:44 -0400 (EDT) From: Konrad Hinsen To: Ludovic =?utf-8?Q?Court=C3=A8s?= To: Timothy Sample Cc: Guix Devel Subject: Re: A real-life test of long-term reproducibility In-Reply-To: <87iln3bwrm.fsf@gnu.org> References: <87iln3bwrm.fsf@gnu.org> Date: Mon, 08 Aug 2022 10:44:44 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=64.147.123.21; envelope-from=konrad.hinsen@fastmail.net; helo=wout5-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list 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+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1659949604; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=TLpFdLeH47D6eQhKu6a6wUHB39zP+WGis5olGgzSoC0=; b=XKHVQ9wWstPriKpMHdWDiqtaXyBz/r+LH8yqAipyI4fIWfdouhYmMe+nc2po04aQOYBBTb sq+brnSo4LdsszdZyWq5AmguK5CtLepgdLlcfZFgrhr4EwJqzSx6tDstVW+LtN1dplMzQ/ DzAKnkqk7Gr3TZVB1NtLzzFD97TlX4qUtiRCLHmNCJ3kMcdLq5624kPHD8WkRj9pQwC2ZO E/crdyn/Vf73dSNeOV7DBa6QC7BPAp9OB5Mu/4+IA38Q82dKQ+eAfLEF4uV3k2ij39ES0i LF8XdQIUo32oFgEktXPpXT8z7PzPyNI6RvWZ6vXVUNZBtIwPzSNaXFjGjwLE8w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1659949604; a=rsa-sha256; cv=none; b=l6PV41uNgWqYJXbwzbTbgzO5BN7xUCNmsV83stIzOraNW3pDs9eJyx9tkVGaNl+yh15bW5 hpVEIlGy2RPS1lvi1fGm83ykDrfJpuPO+eAMuGTsG+ue6zIBETBovZ5xItOSXY3Az2g51G mg9UGHMwsxlBCaIMmY6jurLjoDC7a9YUJMZAq77efdkEnjgu2sHVTu+JBO4jHFF3xr3OSh 2OjsenselnIePKjjOVvP5SYFviBpKFGkGaE/H4AIfaTVUbtXCfURUWI2khm8mTyWKWxXis O7V1T3TzSfRe81EiHBWaxCgrVY3SDcfkqNK0n608B+fYz1wfTpDhTv+f3b8n8g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=fastmail.net header.s=fm1 header.b=iYvW1CgK; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm1 header.b="4 CayVtl"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=fastmail.net (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 8.61 X-Spam: Yes Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=fastmail.net header.s=fm1 header.b=iYvW1CgK; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm1 header.b="4 CayVtl"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=fastmail.net (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 8EE6036E0A X-Spam-Score: 8.61 X-Migadu-Spam: Yes X-Migadu-Scanner: scn0.migadu.com X-TUID: OaAQM2ObpsQC Hi Ludo and Tim, Thanks for your comments and experiments! Ludovic Court=C3=A8s writes: > That=E2=80=99s a commit from January 2018, which is a few months before t= he > release of 0.15.0, the first release with proper =E2=80=98guix pull=E2=80= =99 support: Ouch. I wasn't aware that even "guix pull" happened later! >> I don't understand what is going wrong here, but it may be related to >> the fact that the commit I am trying to go back to is older than "guix >> time-machine". If that's the explanation, it would help if Guix showed >> some clear error message instead of crashing. > > It could check whether the target commit is in the closure of the > v0.15.0 commit, but then that would give special treatment to the > existing commit history. Maybe that=E2=80=99s OK though? I'd say yes, because the only problem is the existing commit history. At least until we extend time-machine to actually change the past ;-) > IIRC that was a bug in a Gnulib test (bundled in several GNU packages) > that would hang on machines with maybe more than 4 cores. (See commit > acc2dab7f2f50c9169d6388007c770878eae4a9c for example.) There might be > hints on how to work around it in the mailing list archive=E2=80=A6 Hardware dependencies... > That said, it may be possible to build that Jan. 2018 Guix using an > environment created from Guix 0.15.0 or 1.0.0; it=E2=80=99s likely to hav= e the > right versions of dependencies, and it should be reachable with > time-machine. I'll try with 1.0.0, that looks nicer than 0.15.0 ;-) > Besides, I recently added =E2=80=98etc/time-travel-manifest.scm=E2=80=99 = and added a > corresponding jobset at Nice! Guix will be certified for time travel! Timothy Sample writes: > It turns out it=E2=80=99s pretty easy, apart from having to boil the ocea= n. > Here=E2=80=99s what I did. Very interesting, thanks! > I=E2=80=99m honestly shocked that it worked so well. I wish I had a bett= er way > to keep track of where the sources came from. For example, I=E2=80=99m c= urious > how many came from the build farm or other fallback options. > > Overall, I give Guix two thumbs up! Other than the Python 3 optimizer > bit (which might be solvable), nothing substantive had to be changed to > make this happen. Indeed. And yet, from the point of view of a non-expert user, even the slightest fix required is a show stopper. > For best practices, I do have one suggestion. The Guix package > collection is not uniformly reproducible or archived. The best thing > you can do to ensure the long-term prospects of your projects is to > actually check how much of the source code is archived and how many of > the builds are reproducible. There is no turn-key solution for this Yes, that's a good idea, and I have done it for my most recent packages. Time will tell if this is enough. > Thanks Konrad for the interesting experiment. While testing this out, I > came to really appreciate how hackable Guix is. Even if I couldn=E2=80= =99t find > Mesa 17.2.1, say, I could proceed with a similar version or try to build > it with Git. It=E2=80=99s not ideal to have to make changes, but it=E2= =80=99s nice to > know that Guix fails gracefully. Definitely! Cheers, Konrad.