From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:60734) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ixSPp-0007Fy-WC for gwl-devel@gnu.org; Fri, 31 Jan 2020 04:16:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ixSPo-0007MT-Ns for gwl-devel@gnu.org; Fri, 31 Jan 2020 04:16:41 -0500 MIME-Version: 1.0 References: <875zh3w3yp.fsf@elephly.net> In-Reply-To: <875zh3w3yp.fsf@elephly.net> From: zimoun Date: Fri, 31 Jan 2020 10:16:25 +0100 Message-ID: Subject: Re: How to install GWL? Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gwl-devel-bounces+kyle=kyleam.com@gnu.org Sender: "gwl-devel" To: Ricardo Wurmus , =?UTF-8?Q?Ludovic_Court=C3=A8s?= Cc: gwl-devel@gnu.org Hi Ricardo, (+Ludo) Yesterday evening, I asked the Ludo's opinion about how to deal with package that depends on Guix as a library. So his is CC'd. In case, he wants to make an input. ;-) On Wed, 22 Jan 2020 at 22:56, Ricardo Wurmus wrote: > the GWL is intended to be an extension of Guix. It uses Guix in two > ways: > > 1) it uses modules provided by Guix as one would use a library. These > include (guix gexp), (guix derivations), (guix monads), (guix store), > etc. > > 2) it uses Guix to install packages at runtime based on whatever > workflow a user asks to be run. > > The =E2=80=9Cgwl=E2=80=9D package has the =E2=80=9Cguix=E2=80=9D package = among its inputs due to 1). > This version of Guix will always be somewhat old, and older than the > version of Guix used to install the GWL. This is okay for using Guix > modules, but it wouldn=E2=80=99t be okay for 2). > > How should the GWL be installed for maximum convenience and > compatibility? Does it make sense to install it as a channel so that it > is tied to the user=E2=80=99s current version of Guix? That would be pre= tty > awkward and less convenient than just typing =E2=80=9Cguix install gwl=E2= =80=9D. > > If we stick with installing the workflow language as a package, how > should package installation be handled? Should all workflows require a > channels definition for reproducibility, so that we could instantiate an > inferior Guix using the exact specified version? If none is provided we > could fall back to the latest version of Guix. > > How does that sound? The difference between "as a package" --which implies inferiors-- or "as a channel" is: embed vs extend. I was convinced that "as a package" was more convenient. Now I am not sure.= :-) Because we know what "embed" means. ;-) For example, Julien's home-manager [1] uses the "as a channel" approach. [1] https://framagit.org/tyreunom/guix-home-manager All the best, simon