From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id qEJZNCU9LGTh0AAASxT56A (envelope-from ) for ; Tue, 04 Apr 2023 17:07:17 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id wBiJNCU9LGQLbgAA9RJhRA (envelope-from ) for ; Tue, 04 Apr 2023 17:07:17 +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 AF0312E321 for ; Tue, 4 Apr 2023 17:07:17 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pjiFH-0003zX-4Q; Tue, 04 Apr 2023 11:06:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pjiFF-0003zL-Hx for guix-devel@gnu.org; Tue, 04 Apr 2023 11:06:49 -0400 Received: from mout01.posteo.de ([185.67.36.65]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pjiFD-0000ju-3f for guix-devel@gnu.org; Tue, 04 Apr 2023 11:06:49 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id ABB342405F5 for ; Tue, 4 Apr 2023 17:06:44 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1680620804; bh=ZrjJSRUb8iKkZhrTnZN1ULZ5efAJQsawr+MQZh86sgw=; h=Date:From:To:CC:Subject:From; b=mOAs9J/3nIfxwD4GEfY3F/6wAumkCCx2tf7R2h7yUgq1Kl6GmIC+RlPL5hYTibO88 muZ6U3Bxn/x2cfHUsD00RKzwSGl3QjFuoyqQyFNV0sUImQ026FyQ+fqF/QExDqW4TV BQvxN4secaQwVkf01qvR9TtggnIUa/DSwSz5n+s0aqbENGJ4GKQ2jdbklxEyCXAQMK WcyZ/MoYoxS+zRfM3jN3lDdp+gxETL6SRpXxS9wmAsYmeVbRShFnkXboNI3ym9t+3S EbWVE/bMM9ZUzhRFSosCgMn8GcAAN04DzJlDdw1Op5FSfwENaz4IHao4cDo6tgbKJ6 UT8mv2Rx9u8IQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4PrWLn6l0mz6tsb; Tue, 4 Apr 2023 17:06:41 +0200 (CEST) Date: Tue, 04 Apr 2023 14:32:11 +0000 From: Kyle To: Simon Tournier , Spencer Skylar Chan , Ricardo Wurmus CC: guix-devel@gnu.org Subject: Re: Google Summer of Code 2023 Inquiry In-Reply-To: <86ttxwvx8q.fsf@gmail.com> References: <6d30ee7b-f1f0-9199-fea8-efd434c8611c@terpmail.umd.edu> <86sfeb9zx8.fsf@gmail.com> <87ttycir7r.fsf@elephly.net> <42aa5844-0769-e122-efd7-8a152070c71c@terpmail.umd.edu> <09755392-de37-c039-6b60-46310f6f4314@terpmail.umd.edu> <86ttxwvx8q.fsf@gmail.com> Message-ID: <0DE0A1F6-58C0-47AD-BBDA-D99E4CD4213A@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=185.67.36.65; envelope-from=kyle@posteo.net; helo=mout01.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 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, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Seal: i=1; s=key1; d=yhetil.org; t=1680620837; a=rsa-sha256; cv=none; b=bFbJdLGOrRCC++rbL8AIqBo3q5VhExXWyVYpRDOf8ETSJyg5KsJiilA8v5h8BP/QJi7uKC trR567FxLQOru0VWA1u7fK/gg4r/hyo88TwOMh68Y6KLRQ4UuCMnoe30QsdGfmWzP2hkXy 1Imtsb6HzmSTwYZpBNxzBJU+Y7GkX4R4l81Wn2Mbd9TH7cyvNI1NwagBhrkTe8IPmeUl6C AvfvyeqpvqmVWkiTqVrlfzE5RZfMztN6jryasq0vmZqNeBbFoicfKY8D7UkBvt4bMiD0ij hxeqQIUnxhdqd9qbOvofftUEPyOsBcxQSOAN+ocmcjU/3GHG6FHqmxJ+lK25QA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=posteo.net header.s=2017 header.b="mOAs9J/3"; dmarc=pass (policy=none) header.from=posteo.net; 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" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1680620837; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id: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=xIuObM0yIjzgdAuK0b7iWdPwpZlUS/F6KRoMzgRJxok=; b=giXaC/4omvIXvSQA7K34Jrf33MKbotvD7t+U3bEOiEO5FmnmhFiUMZNUPdzA6R8Ma266Nz 2gd9k1zwuioLtVVHG/30qx3jTqzWrBsDA+WeqvETzaGPqXR0Wt8ycdgSD7h+PLQ5WZoFWg Rgg4sC6TlgF3sTl5Ek2O2UEkUyWmXcaf9wOr22CQ7Uw33X2u7116XXQptFuanqoM/XMNVn 47h9gBiC0qo9+76iP+aJYvw/zt+HTesMt5UwcHpJyv4sjO/opW0oHAUy4CnlYURw22obMu 4F6u7rBUGghZ/iCf0xDxpHh638ciU6b/aVP8gc3zj/Ig13TEmuKNYoavisLveA== Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=posteo.net header.s=2017 header.b="mOAs9J/3"; dmarc=pass (policy=none) header.from=posteo.net; 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-Scanner: scn0.migadu.com X-Migadu-Spam-Score: -5.01 X-Spam-Score: -5.01 X-Migadu-Queue-Id: AF0312E321 X-TUID: hgMY5XshI2KM >I do not know what you have in mind with =E2=80=9Cworking satisfiable >configurations=E2=80=9D or with =E2=80=9Ca variant of the solver=E2=80=9D= =2E To my knowledge, >this implies some SAT solver=2E Well, before going this direction, I >would suggest to read some output of the Mancoosi project [8]=2E >Especially this part [9]=2E From my point of view, the direction =E2=80= =9Cworking >satisfiable configurations=E2=80=9D or =E2=80=9Ca variant of the solver= =E2=80=9D would break the >reproducibility of a specific configuration for the general case=2E Part >of the problem about computational environment reproducibility is >because package manager implements solvers for installing some packages= =2E Yeah, we definitely don't want a solver for instantiating a profile=2E We = want that explicit already in the manifest=2Escm=2E However, my understandi= ng is that the role of an importer is to create a manifest=2Escm or, more r= ealistically, help a user get started creating it=2E There will probably us= ually need to be additional tweaking related to the intended application th= e computational environment supports=2E The CRAN importer, for example, can= not yet detect non-R dependencies=2E So, the profile author has to figure t= hose out for themselves=2E It's still very useful despite not being perfect= =2E=20 >Last, considering all Guix the version fields, I am not convinced it is >straightforward to guarantee some =E2=80=9Cnearby=E2=80=9D or newer versi= ons=2E It can >only be heuristics working with more or less accuracy; see =E2=80=9Cguix >refresh=E2=80=9D and all the updaters=2E Sure, but as is shown with "guix import cran" as I previously mentioned, i= t doesn't have to be perfect to be really useful in many cases=2E >All in all, I am not convinced Guix should try to implement a way to >=E2=80=9Cspecify the exact software version=E2=80=9D=2E Because it leads= to false >considerations that label versions are enough for reproducing >computational environments, when it is far to be=2E It definitely is not enough, but that is where its up to the profile autho= r to flesh out many examples of what their software is supposed to do and v= erify those still work under Guix=2E Having tools to benchmark against existing, but not long term reproducible= , software environments would help in this import case because that is the = goal with conda=2E Researchers should not expect to go from "good enough" f= or now to guaranteed reproducibility without also doing a lot of empirical = testing=2E=20 Researchers have to start somewhere and convenience often trumps other con= siderations at the beginning since most new projects fail=2E To get researc= hers to start from Guix, they need either an army of packagers willing to a= ssist them with packaging or for there to be so much convenience in Guix to= package new software such that it isn't much of a hassle for the researche= r to do it=2E I hope for both, but feel like working towards the latter wou= ld bolster the chances of the former=2E You could imagine Xapian being used= to suggest also additional package inputs just as "guix build -f" already = suggests missing scheme modules=2E