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 ms5.migadu.com with LMTPS id sE4GKErxpmPfwwAAbAwnHQ (envelope-from ) for ; Sat, 24 Dec 2022 13:32:10 +0100 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 GHXhJ0rxpmMcrQAA9RJhRA (envelope-from ) for ; Sat, 24 Dec 2022 13:32:10 +0100 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 480F53968F for ; Sat, 24 Dec 2022 13:32:10 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p93gY-0002rw-8w; Sat, 24 Dec 2022 07:31:30 -0500 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 1p93gT-0002rO-Nq for guix-devel@gnu.org; Sat, 24 Dec 2022 07:31:25 -0500 Received: from mx2.dismail.de ([159.69.191.136]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p93gR-0000Xt-Bg for guix-devel@gnu.org; Sat, 24 Dec 2022 07:31:25 -0500 Received: from mx2.dismail.de (localhost [127.0.0.1]) by mx2.dismail.de (OpenSMTPD) with ESMTP id d5d62844; Sat, 24 Dec 2022 13:31:18 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=dismail.de; h=from:to:cc :subject:in-reply-to:references:date:message-id:mime-version :content-type; s=20190914; bh=mGgyvrti1RPUHFsZVupkfPjS6CnnxhMRK+ 2aOIVllGc=; b=rBYNKMJyJXCtGo9JA6WzSD5jzJi+B15aXdEYq8k7P+fSaJBMU5 rD9R/HeMqDCT3O/p7RixnxCmZIHpMriojTEdifis1SxPceZIk/daBKe/fFFQ3XLj PIIDpC8cyVROjlzgZn0U6rukrKGkfvc1z1+cLiYNigimcCKp010w7vqZ8WkoncR5 scXmu7ap61x5s9vqFy8R1oiNYDC6OJrSi6A1tTsDuynaPq47ml6/26bfQ+goyU4N 4JmTE3jkT+MR1i/wlfTR9xf17W52lo9DyH/my9Qvdl+HaE6Y3GE49g0mb9mXFbcC hZiR4fFY4SD4DXfvgN0OdJoseabXzqVSdJoQ== Received: from smtp2.dismail.de ( [10.240.26.12]) by mx2.dismail.de (OpenSMTPD) with ESMTP id e4f740cb; Sat, 24 Dec 2022 13:31:17 +0100 (CET) Received: from smtp2.dismail.de (localhost [127.0.0.1]) by smtp2.dismail.de (OpenSMTPD) with ESMTP id 8d55261e; Sat, 24 Dec 2022 13:31:17 +0100 (CET) Received: by dismail.de (OpenSMTPD) with ESMTPSA id 19f8dc35 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Sat, 24 Dec 2022 13:31:16 +0100 (CET) From: Joshua Branson To: Vagrant Cascadian Cc: jgart , guix-devel@gnu.org Subject: Re: Stratification of GNU Guix into Independent Channels In-Reply-To: <87cz894e34.fsf@contorta> (Vagrant Cascadian's message of "Fri, 23 Dec 2022 20:31:43 -0800") References: <84400bcea3eee39dc15d82812a8006bb@dismail.de> <87cz894e34.fsf@contorta> X-Gnus-Sucks: I know man Date: Sat, 24 Dec 2022 07:31:08 -0500 Message-ID: <875ye1c7ar.fsf@dismail.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=159.69.191.136; envelope-from=jbranso@dismail.de; helo=mx2.dismail.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, 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=1671885130; a=rsa-sha256; cv=none; b=EiNEERcgc5RXnaN3e4mOL80xEqd18VWfRXgceitwIv27pU18SkIiGy7VfYY1kg4kYHtdWk z9a6hgcZrFdfUy9C1GOo0TOl7m3uBeF1Xc1J9wfRmBQX2TnqZt2tSGlwmwj/hnfJ2dnisu y8Yz0uVbD6tSObRPLvteUI9q+YxXq4Czj3SOx10LV8hKMa7G+yySDu6CeOBeE8paTHP/0K i3V1U6K+b3pvhV1+LYIwF5aX3Jl4tKw82Yru7t5aIw7r5YONpaRULD0kXTs11W+g/Gdf5V joleXvnyMgbUPBC3flr8BnxxSSghOiLRWTDF1J415Tcg6fxcgyMW48rrK6P2kQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=dismail.de header.s=20190914 header.b=rBYNKMJy; 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"; dmarc=pass (policy=reject) header.from=dismail.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1671885130; 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:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=DXJmcmsPHv5m2XKeO7ty2uWcF6EatGjHFu78tHZmWRQ=; b=d45cFpDYTiUjsJ02crZSPuTsnyijJvrutdvXYPwiQqtR+05njmSKDCvAmRLsavc+l8GlWI /MX1akRjb5cfw2h1zZmLHcxjqTY/jw3lqe4++1q6BZ7S7P+vHy5jlluOrQ9V+5xfbWZXP6 NDnv+D0LlVl4PTbmChwUlCzCN2X1BqqPOlOZxEAK3S5+5ETay8uJDXH9x+1iv3Yp8cldAW A4IyPt324WooVZGGiaEVzFnu7Y93Us+OlbYcVcGGZbmeLN8IU0zuvnAPL6IrE/dE8kVgju Tf8+z46Q8OcxW73GZflZ7nCUvY209eU5S/RnQTgdUEf6we3E2/ocmwuCR/10GA== X-Spam-Score: -10.26 X-Migadu-Queue-Id: 480F53968F Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=dismail.de header.s=20190914 header.b=rBYNKMJy; 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"; dmarc=pass (policy=reject) header.from=dismail.de X-Migadu-Scanner: scn0.migadu.com X-Migadu-Spam-Score: -10.26 X-TUID: JBaQQafYRgw6 Vagrant Cascadian writes: > On 2022-12-24, jgart wrote: >> I wanted to ask you what are your thoughts on this idea. This is a >> thought experiment at this stage. >> >> Should GNU Guix be a small core of packages (and services?)? >> >> For example, GNU Guix would be a core channel containing the reduced >> binary seed bootstrap and a few other core packages to bootstrap the >> system. That's it. Users subscribe to this channel to get started. > > I definitely am excited and hopeful to think this *could* be possible! > > >> Users could then decide what channels they'd like to subscribe to/opt >> in to by adding any of the following channels as they please: >> >> python-channel >> rust-channel > ... >> scheme-channel >> etc... >> >> The above channels would still be maintained under the auspices of GNU. >> >> What do you think would be the pros and cons of the stratified >> approach versus the monorepo approach that we currently have? > > The pros would be only having to pull the small bits you actually want, > and that could be faster to run "guix pull". > > This would certainly make it much easier to package a "core" subset of > guix for other distros (e.g. I work on packaging guix in Debian) that > having to package the whole entire guix universe. > > I suspect the "small bootstrap core set" to eventually pull in quite a > bit of other things, and continually be at risk of needing to pull in > more things... > > You would probably need to have inter-channel dependencies... which > makes me wonder how many cyclic dependencies might result... > > git alone pulls in dependencies for perl, python, git, subversion, > openssl ... and what is the dependency cycle for each of those? Guix > apparently can generate pretty charts for this stuff, though I have yet > to try. :) > Fun fact of the day, the OpenBSD crowd is creating got, which is a rewrite of git, with less features, in C. :) > > I have the (perhaps mininformed) impression nix has a split more along > these lines with the core of nix being one thing, and then collections > of packages being other repositories. > > >> GNU Guix proper would be a solid core of packages that is very easy to >> maintain. This would greatly reduce the maintenance burden since >> maintaining a world of rust, golang, or python packages is opt in by >> those who want to do that particular work. > > If it is possible, it seems likely to make releasing more regularly and > less stressfully... > > >> Would being subscribed to just the hypothetical small core channel in >> this proposal increase download/installation speeds given the >> availability of substitutes? > > I suspect it would significantly increase guix pull speeds, at the very > least. > > > live well, > vagrant