From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id MLIiCpAwS2FhKwEAgWs5BA (envelope-from ) for ; Wed, 22 Sep 2021 15:33:04 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id 4AXOBZAwS2HTNAAAB5/wlQ (envelope-from ) for ; Wed, 22 Sep 2021 13:33:04 +0000 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 6D4C0B850 for ; Wed, 22 Sep 2021 15:33:03 +0200 (CEST) Received: from localhost ([::1]:52552 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mT2Mw-0007du-DN for larch@yhetil.org; Wed, 22 Sep 2021 09:33:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54092) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mT2MM-0007cg-BT; Wed, 22 Sep 2021 09:32:27 -0400 Received: from wout2-smtp.messagingengine.com ([64.147.123.25]:34241) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mT2MB-00011k-HF; Wed, 22 Sep 2021 09:32:22 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id 165EB3201C5D; Wed, 22 Sep 2021 09:32:09 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Wed, 22 Sep 2021 09:32:09 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm3; bh=lkOnTpiK4SU/odNV9MUnnH1pc9WveuD8fLFzjXNMH KA=; b=A7PdW0oER90xs3lJU5Yj3db7rCxeFBFvVcOXCZDlc9uqnhBRnUv3a5f9U aAk/kE1xTq9lespvi8JylfQMmhj65P6Zqlb8b4YzBDpppIjwXfBqwsdA33zA4gsh pRDdYUGdN1bLsJoqinkfOC4IIO868M5Ldq2ctYwrgA1nKZSbVPwOLxaEyOzhlkO0 ktT063lNlG2OqsiSp14pphJxETykJMHyXlO+tS/UzdPgR/WSPydspYUC8iHODkT5 ytLjffTvFcdtmh+lJqMuLlNjTsjzOT0JQ++ZDAEcoT3E2Ea1YPvDbdES+AjQSHpk f1fm5FjnrQk7lHTdozPc0DEyMqtGQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvtddrudeijedgieegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvufgjfhffkfggtgfgsehtqhertddttdejnecuhfhrohhmpefmohhnrhgr ugcujfhinhhsvghnuceokhhonhhrrggurdhhihhnshgvnhestghnrhhsrdhfrheqnecugg ftrfgrthhtvghrnhepgefhtdeiuedvkeeuhefgveelueehieelvdfgieevhfegieduveeh gfeffeehueefnecuffhomhgrihhnpegtnhhrshdqohhrlhgvrghnshdrfhhrpdhorhgtih gurdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhho mhepkhhonhhrrggurdhhihhnshgvnhestghnrhhsrdhfrh X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 22 Sep 2021 09:32:02 -0400 (EDT) From: Konrad Hinsen To: Katherine Cox-Buday , Ludovic =?utf-8?Q?Cou?= =?utf-8?Q?rt=C3=A8s?= Subject: Re: [Spam:]Re: =?utf-8?B?4oCcV2hhdOKAmXM=?= in a =?utf-8?Q?packag?= =?utf-8?Q?e=E2=80=9D?= In-Reply-To: <875yutwuij.fsf@gmail.com> References: <87wnnbpgnp.fsf@inria.fr> <875yutwuij.fsf@gmail.com> Date: Wed, 22 Sep 2021 15:32:00 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: softfail client-ip=64.147.123.25; envelope-from=konrad.hinsen@cnrs.fr; helo=wout2-smtp.messagingengine.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_SOFTFAIL=0.665 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: guix-devel@gnu.org, guix-science@gnu.org Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1632317584; 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=lkOnTpiK4SU/odNV9MUnnH1pc9WveuD8fLFzjXNMHKA=; b=JzxPzrNnAcUkp2V6LOoVe3rOUJbCdcjmj1FHRHa+BnhIwXQe15vIGOyH/pVDflfINE2xFv cV/JFC1O6D6Em0AoeSRXcQ4knY7rkhUyBxxoOu/Pfwn/MLOK68A2YPw/yzkgLiAo2CzcJX xj+CjjWmY5yhidVN26ETkBRizDnsapxuh4Q2r7YC4qESjW0Dy5xwiZIBAmmy5fK2u8qC9P qqcjK+4V1/QH3hNFJwzGWAjQBh6qBwyx2JvHJ3swb9wjIfDZd+qXialySRzFwtx95Zi0vt dl+Lzbg3hLyXuchnG/kwM7rsKnw5b5WmyMRPP5XrA+pJBg1GFfMmlBGk4W64DQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1632317584; a=rsa-sha256; cv=none; b=V5z6nD4124HHCkROaQkpT7CHxkZkNSG4wFzQTyIPLRQuAGMT/ZOgUzlLmGUEBR+5JgEQoU xrYoQMkdXHgexYQuT9bjKaPsQVOsqu7i/WnsYAqlwHjhET1TXiM7Q5reDQQmFHK/01aY/c TBLyLnqxlDK6GcxpXPaR7+2JBS8t0TAqleZEVcP/9T3DSbz0f6uLO11PmWTXAU/Q0poIla 1gVSK3riBTE2158hHYpqTIDEDmJg7ovf+XabHZGoxqNJlj5q6ICCIgmahlpIySK+REvrKs aQXoQFqiBbtPwlGeT0Vl9SQbw0h7o5v/cogjsqj5cgL/KroaHB7OPvgGneTKaQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm3 header.b=A7PdW0oE; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Spam-Score: 0.11 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm3 header.b=A7PdW0oE; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Queue-Id: 6D4C0B850 X-Spam-Score: 0.11 X-Migadu-Scanner: scn0.migadu.com X-TUID: +bINYkJDdy6F Hi Katherine and Ludo, > I appreciate this post very much. Setting aside questions of freedom, +1 > This is perhaps a rehash of the "worse is better"[2] conversation, but > I often struggle with deciding whether to do things the "fast" way, or > the "correct" way. I think when your path is clear, the correct way > will get you farther, faster. But when you're doing experiments, or > exploratory programming, being bogged down with the "correct" way of > doing things (i.e. Guix packages) might take a lot of time for no Exactly. Most software engineering tools situate themselves somewhere on the "fast" vs. "robust" scale, and defend their position as the one and only Good Thing. Guix is at the "robust" end of the scale in the software management category. And that's what I want for most of the software I use, i.e. everything I don't hack on myself. Which is why I like Guix :-) What is so far insufficiently supported by computing technology is the necessary transition from "fast" to "robust". There are a few exceptions, such as programming language with gradual typing. In most situations, moving software from exploratory to robust involves a lot of rewriting, often manually, with no tooling support. > Bringing this back to Guix, and maybe the GNU philosophy, it has been > very helpful for me to be able to leverage the flexibility of Guix to > occasionally do things the "fast" way, perhaps by packaging a > binary. Paradoxically, it has allowed me to stay within the Guix and > free software ecosystem. In my opinion, flexibility is key to growing > the ecosystem and community, and I would encourage Guix as a project > to take every opportunity to give the user options. +100 :-) There is a lot we can improve here. Tutorials would be a good start. Example: How do you package a binary in Guix? In particular, how do you deal with binaries that have binary dependencies that they expect in /lib etc.? A next step would be tool support: Grab whatever PyPI offers, even if it's only binary wheels, and turn that into a Guix package. Another aspect would be supporting software development moving from fast to robust. Suppose I have software I compile by hand, or via a simple Makefile, somewhere in my home directory. How do I go from there to (1) a quick-and-dirty Guix package, then (2) a very basic publishable Guix package and finally (3) a Guix package with tests and documentation? The path should be supported by various tools, from automatic rewriting to debugging. As an example, something I have wished for more than once is the possibility to run the individual build steps of a Guix package under my own account in my home directory, for debugging purposes. Konrad --=20 --------------------------------------------------------------------- Konrad Hinsen Centre de Biophysique Mol=C3=A9culaire, CNRS Orl=C3=A9ans Synchrotron Soleil - Division Exp=C3=A9riences Saint Aubin - BP 48 91192 Gif sur Yvette Cedex, France Tel. +33-1 69 35 97 15 E-Mail: konrad DOT hinsen AT cnrs DOT fr http://dirac.cnrs-orleans.fr/~hinsen/ ORCID: https://orcid.org/0000-0003-0330-9428 Twitter: @khinsen ---------------------------------------------------------------------