From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id uMFvIIJHtmWUqAAAqHPOHw:P1 (envelope-from ) for ; Sun, 28 Jan 2024 13:24:34 +0100 Received: from aspmx1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id uMFvIIJHtmWUqAAAqHPOHw (envelope-from ) for ; Sun, 28 Jan 2024 13:24:34 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=marekpasnikowski.pl header.s=dkim header.b=SrCr7V+Y; dmarc=pass (policy=reject) header.from=marekpasnikowski.pl; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1706444674; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to: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:autocrypt:autocrypt; bh=18RN4HiJC8e+Ds5xJL5UKOOUo+mtitfHMHrP0Q4mIIk=; b=VHFNNs4cXy9kTyA3AwScrFhSNk4zZ7NN21SPFrMeh94cwDmAzdo2WR3FhYtcu/qmUUNeqi vaKfx1ysDBAHe4py+yrUnQmTaV8IT7y0F6akGRDnxO4cNCUiTTzRDATZqksoOPCDRwP+89 vuA617YaT9BHnDCS0TjTQeEUl4V3WU0+doaq1rw2AnDm717jiM7fvoTqV4S8lhrmiLWhgT MiG+/hoFfWuZsh63/QnzJ5j56iAH0DknlWp0vtgoy7I3PEzvbhcGrBym6aKBF2+5kTzrjt ADUZEFdfqlwNmPyX4alpzkBYVjrqUOb23JmF+ffY3xObOijq7SRX09/+u4Gmug== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=marekpasnikowski.pl header.s=dkim header.b=SrCr7V+Y; dmarc=pass (policy=reject) header.from=marekpasnikowski.pl; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1706444674; a=rsa-sha256; cv=none; b=pLCOXG1PxsUfl1jB+7yrwnFMdi/rVxVsmcX/I3aLyrVpsmuQ8nEgG2MwZ9tSdnZj8/5OTd SOpl6ikLI8BX8GvK2HJPFSlSPSy2yP8WqeMzxB1i/OJM+HILCWn1hICoMteW/fdcvp+hEV GK5qvz75gn4J9cFKCxqShLVXbBaoWgclK0ElVQPHW6naqmCCJYOhc5ddt1UfApp3lwuK8w QGdwEI65byWTYxL747PUu0OaxkBZzyjxuSsM05jH8Y7pLNnMKfc/RSAeClDvyXYnTNZjAV DhZSsmV2cmkWgQr4gRGc/PIOSgEkmCRCVpVtZmVNzynD5LJT92RLnzoJTMsFtQ== 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 219CD25888 for ; Sun, 28 Jan 2024 13:24:33 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rU4CZ-0001fe-P5; Sun, 28 Jan 2024 07:23:55 -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 1rU4CW-0001fD-Tb for help-guix@gnu.org; Sun, 28 Jan 2024 07:23:52 -0500 Received: from [81.190.248.246] (helo=marekpasnikowski.pl) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rU4CT-0006QK-4k for help-guix@gnu.org; Sun, 28 Jan 2024 07:23:52 -0500 Received: from localhost (localhost.lan [127.0.0.1]) by localhost (OpenSMTPD) with ESMTP id bf3aaefc for ; Sun, 28 Jan 2024 12:23:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=marekpasnikowski.pl; h= from:to:subject:date:message-id:in-reply-to:references :mime-version:content-type; s=dkim; bh=LYHUMMZmDF35EKwo6IWVio5vx /eoalCifC0Qk2vCcOU=; b=SrCr7V+Y4mYazOTyqJQCLmcByfY0469lapkgPGdH4 0lqSGhC9nzslAko0HZIe0UyxDRL79OrQ5E+HS9IdXe6aEajyY3sSOkdkXSqdmXVS ViDBHkATPxISFYt28f4ty79Q4pwRmtse7ZMwSkUsVTUBuLFJDmWQ2iV0VD4Ui030 GPwrnewrU5VMVlRIMK4+SGrK0Pk4wDQN4GBaiwqD9ZO6trnASvs8bmv89N5O3JHR CvENefB4r6+jF89V6kglleD5k9hw8LUHtZTR4zaq0J/80ELNkTuWVFCPVJQvIK0t pUkj1ISq4mHKBWM2H2TgdoKWMVNjid0hgKFjp7oBZv6yg== Received: by localhost (OpenSMTPD) with ESMTPSA id 271ce296 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO) for ; Sun, 28 Jan 2024 12:23:35 +0000 (UTC) From: Marek =?utf-8?B?UGHFm25pa293c2tp?= To: help-guix@gnu.org Subject: Re: Cannot build personal channel derivation during guix pull Date: Sun, 28 Jan 2024 13:23:42 +0100 Message-ID: <2207254.OBFZWjSADL@akashi> In-Reply-To: References: <1899125.tdWV9SEqCh@akashi> <9297467.CDJkKcVGEf@akashi> MIME-Version: 1.0 Autocrypt: addr=marek@marekpasnikowski.pl; keydata= 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 /UDUeeYvAnCadFzZz2+1Ew== Content-Type: multipart/signed; boundary="nextPart2273225.NgBsaNRSFp"; micalg="pgp-sha256"; protocol="application/pgp-signature" X-Host-Lookup-Failed: Reverse DNS lookup failed for 81.190.248.246 (failed) Received-SPF: pass client-ip=81.190.248.246; envelope-from=marek@marekpasnikowski.pl; helo=marekpasnikowski.pl X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 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_SORBS_DUL=0.001, RDNS_NONE=0.793, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: help-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -11.76 X-Spam-Score: -11.76 X-Migadu-Queue-Id: 219CD25888 X-Migadu-Scanner: mx12.migadu.com X-TUID: niXlQjfLot9x --nextPart2273225.NgBsaNRSFp Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii"; protected-headers="v1" From: Marek =?utf-8?B?UGHFm25pa293c2tp?= To: help-guix@gnu.org Subject: Re: Cannot build personal channel derivation during guix pull Date: Sun, 28 Jan 2024 13:23:42 +0100 Message-ID: <2207254.OBFZWjSADL@akashi> MIME-Version: 1.0 27.01.2024 18:27:23 CET Parnikkapore via: > That "import a local directory with secrets" trick seems like a nice one to > have in the bag! It really is. Last night I also came up with a more general notion of "private inputs". Those could be not only secrets, but also things like channel branch names in the channels.scm files. Basically any data that does not really need to be version tracked, or data which you do not want to track, like options which you want to experiment with in a wip-branch, without having to commit every time you flip an A/B test... The private inputs allow you to technically maintain functional purity, even if in the view of a particular repository, you create something that looks like side effects. > There's an extra law of Guix channels: all files within the file tree whose > name ends with .scm must be runnable in the build environment (i.e. no > network, no access to e.g. your home directory, etc.). This means that > `guix repl -L $FILE_TREE_ROOT $FILE_TREE_ROOT/any/file.scm` must run and > terminate without throwing any unhandled exceptions. (passing this test > doesn't guarantee that it will work, however.) That makes total sense to me. I was not able to deduce that, because I only used "guix home reconfigure" and "guix pull" as my test suite. This means I was always using the isolated environment, and thus was not able to see the differences to a "guix repl". > I'm not sure if having .scm files that are not modules within the file tree > would themselves cause a problem, but doing so is definitely unsupported > territory. I have already proven that it is not possible to include .scm files which are not modules. Guix will complain that there is "no code for module (whatever file path)" when pulling. > One more thing: the root of the "file tree" need not be the root of the Git > repo; it can be a subdirectory inside the repo. See > https://guix.gnu.org/manual/devel/en/html_node/Package-Modules-in-a-Sub_002 > ddirectory.html . In fact, this might be a more appropriate solution for > your monorepo - see > https://guix.gnu.org/en/blog/2023/from-development-environments-to-continuo > us-integrationthe-ultimate-guide-to-software-development-with-guix/ for an > example. Yes, the (directory) field of (channel) in .guix-channel . This is why a guix channel must not be equal to a version tracked repository. I would like to kindly remind everyone who reads this not to assume things too much. My personal /git/channel.git WAS not, IS not, and WILL not be a monorepo. What it happens to be is that it is my first stab at creation of a remote channel. Right now it is catch-all for my existing system and home configurations. However, for every piece of software I package, I will do so in a new channel, which is a fork of the software's repository. And I do have a grand dream of writing my own distribution of Guix, which will warrant yet another channel, if not more. Also, I personally dislike the monolith architecture. This is why my codebase right now is such a tangled mess - I tried using the noweb feature of Emacs Org, but that thing does not scale well... And now I have more pressing problems to solve than a refactor, which I will have to do regardless, when I eventually learn to define parameterized services. :-) --nextPart2273225.NgBsaNRSFp Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEWQ5QD+OdJrPmC3Q7bYGxIHcRiZ8FAmW2R04ACgkQbYGxIHcR iZ8+JhAAyPd1yqiu7HNXjxzKbplLwCzBjdAyU5gxBzGnp/t92wMgZgSg4CHGfQSC dGKNuMPWiGJ1cDGcV2wC4peJ2XJb6Y6G/Q1V9jGfF5aTyPxQTV/NpfJYQ/JOrQy/ Mc9peRmTOgCASlaGPJD0I7BwNoD8UJIxz+kcZlVpI7+h95mieBfWzMn2uPSsE04/ gLUu/uFh4yIqRBfA4DF6brqds6KwONrE0MvHk105+18OSQ4W3VY5JdH5zCrBDdaO Ziu8XpO9cIDKo35M+epIAAWnnLpU00hWlTVtcZI4UVTiMdQ49MA/5UUfo+QZSnMk djt8/T85rHpV6qbb7y0xNKl8hGurrFdppBaAnrSJao0fXCKoGSiGsShIzyA6XaI4 3eDBkM3POxWJKdJMg12ztsF1sgwLeSo1Uj5ibuwFdIHFryx36X2MLcZdtqP01ok4 uTfLX04w5VtkbQPnoaTgDHtW6bm7+2YPHY06B+ZKHVucYAsPlQ3OjERZjd54uU/G 1ZrAQI0uG7PHEZz6042F7WuhAZrXTv+TXi5rf66AMm3rbc6rI3B2ah8Vv+3dGMB6 b2qsUFYronLgj1mdYMF3rqabVSIy6qcg27FdOqUkZL/tx26tKBgKtyljK0r9r1RZ V9sLQSyKzIvhbtuBnuT/coPgqUGQtZRz7hgkkp8Pq4Ed0hRNTgU= =LuL7 -----END PGP SIGNATURE----- --nextPart2273225.NgBsaNRSFp--