From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id wNYXHyqUSmV6jQAAG6o9tA:P1 (envelope-from ) for ; Tue, 07 Nov 2023 20:46:50 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id wNYXHyqUSmV6jQAAG6o9tA (envelope-from ) for ; Tue, 07 Nov 2023 20:46:50 +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 6290E33151 for ; Tue, 7 Nov 2023 20:46:50 +0100 (CET) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=elephly.net header.s=zoho header.b=YUyNaKPh; dmarc=none; arc=pass ("zohomail.com:s=zohoarc:i=1"); 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=2; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1699386410; 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=I5tzonOTjXBUZnKnxmunM2l+0qbI3Jh2roN4roGKchY=; b=qIfqc6VwggYNeyFa4/MEq37z/ILAYlxSwevvJ7k0PYJji95JZ/5jqD2Nm42jSjOGomSC0I d/tnUnBr2sJirecDJmDOlDqwNcckJCmC3iMSIeegl3qtfub03Fwa6rMKxh+WKhBTNR4sry TMUEokgANNLfWLfH8XSt2sJWOwzqiGduP9rrOe+Bc0OwpZB6lAkWgywJvCO81m1GyDURrA esPmVvkBjwdvFzxtACx8A0DywXB+//j95Y8OmSTFHQvSJqWu3llKZ49nVhHRvRPlI76RuW bZPomMSOvSIeYeClKSwG9C9i2FiPOpcU5nsJ1Wl4nrARpStbFjrxyuEcoFYFjg== ARC-Authentication-Results: i=2; aspmx1.migadu.com; dkim=pass header.d=elephly.net header.s=zoho header.b=YUyNaKPh; dmarc=none; arc=pass ("zohomail.com:s=zohoarc:i=1"); 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-Seal: i=2; s=key1; d=yhetil.org; t=1699386410; a=rsa-sha256; cv=pass; b=reXJJ1Nno3MYHtK33JIkrId4js8H6vlxZJDfl9wAywNDS4Uta+E8LUNsLBXqDEwjVRypke sjV8MvuE++4y4+puBV32NZIcPe1unVxOjsBW2Lg+gk52CSbQDOR3u/flCrAakJanuj/ojp flmUWVxQ7bDPd7nZ54Yo9IccOKlWrNcgjUK7PqY1r2UoJxtqAD7LaNJ2OgasbYfERe7l2r y9Q/U7iE4u6pybWjCVTp2lSnuxAhNuxamQGVPY66tBfnW2xpnVG6FclzUFdp3CVpqVA0ex 9ResWYK1/538Mgyg6Quj4hYcxvxwRxzbsaJZKCDIIGoqojb+4IFEQ+jeu/b/Ow== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r0S1l-0001Nm-OU; Tue, 07 Nov 2023 14:46:22 -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 1r0S1f-0001La-AN for guix-devel@gnu.org; Tue, 07 Nov 2023 14:46:15 -0500 Received: from sender4-of-o51.zoho.com ([136.143.188.51]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r0S1d-00041s-Hc for guix-devel@gnu.org; Tue, 07 Nov 2023 14:46:15 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1699386367; cv=none; d=zohomail.com; s=zohoarc; b=e03vF0JthpUeRfDGNIoCUYZyNKyN/ccWpixCvO1B0kcgpVKifh0vyvQGBP2WWF63rbzbbW6JDCiwPo6/P0p/sLtf/FjIadoKgCgYHT9Kowi0KCbvoT1cvO6cZPey+0MooiSFKt+wgHI3UgFu6WWE4MSMOsmNbpIaXyaM0RSDwok= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1699386367; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=I5tzonOTjXBUZnKnxmunM2l+0qbI3Jh2roN4roGKchY=; b=fRw0q6E8bBH4MfHG+KP0/l3cmGGyZzH0RGcA24SDuvokywQchFJZQo4LSRKvQwp7G3eJYs2BqxpoK9CAtZ4hOTtPGqHKcxB0YYqcAizDnngS6ZWx7OltAzUtxqCPhTXtxkh/g8LvA9CT9yqpq0p83raCvujnd9ksY7vDxFZa/aQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1699386367; s=zoho; d=elephly.net; i=rekado@elephly.net; h=References:From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:In-reply-to:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=I5tzonOTjXBUZnKnxmunM2l+0qbI3Jh2roN4roGKchY=; b=YUyNaKPhdF0eCvWASiZ1mHJTYbjUzaPEUONWBoTX/W+HCMZV+V+Jh4xXxET5UILJ kcKWE6oqZnB26hWzU6r+1bzjBEd1mLZHmCYdvVjiTJasXcDM0c8EcxNTrezL7P9Q5eW ge0a2jJ+SIxYR89vJ97Bv1HLoAWcFW58DxETa9Zw= Received: from localhost (cust-west-par-46-193-13-210.cust.wifirst.net [46.193.13.210]) by mx.zohomail.com with SMTPS id 1699386365246239.8376794790545; Tue, 7 Nov 2023 11:46:05 -0800 (PST) References: <87sf5pu06o.fsf@elephly.net> <87v8adidqp.fsf@gmail.com> User-agent: mu4e 1.10.7; emacs 29.1 From: Ricardo Wurmus To: Maxim Cournoyer Cc: guix-devel@gnu.org Subject: Re: Better support remote deployment Date: Tue, 07 Nov 2023 20:45:29 +0100 In-reply-to: <87v8adidqp.fsf@gmail.com> Message-ID: <87zfzp2vph.fsf@elephly.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-ZohoMailClient: External Received-SPF: pass client-ip=136.143.188.51; envelope-from=rekado@elephly.net; helo=sender4-of-o51.zoho.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -10.07 X-Spam-Score: -10.07 X-Migadu-Queue-Id: 6290E33151 X-Migadu-Scanner: mx10.migadu.com X-TUID: FAeFsCe8vZA0 Hi Maxim, > Ricardo Wurmus writes: > >> Hi Guix, >> >> I build software locally and deploy the result to a remote system with >> =E2=80=9Cguix copy=E2=80=9D. This works pretty well but has a few rough= edges: >> >> 1. =E2=80=9Cguix build -m manifest.scm=E2=80=9D does not generate a prof= ile. It only >> builds the list of packages. To build a profile from a manifest file we >> need to resort to something like this: >> >> guix shell -m $(PWD)/etc/container-server-manifest.scm -- sh -c 'ech= o $GUIX_ENVIRONMENT' >> >> 2. =E2=80=9Cguix package=E2=80=9D cannot install an existing profile sto= re item as the >> current generation of the profile. It can, however, install individual >> package items into a profile. >> >> 3. =E2=80=9Cguix package --remove=E2=80=9D does not support regular expr= essions, so >> removing packages that were installed with =E2=80=9Cguix install /gnu/st= ore/=E2=80=A6=E2=80=9D >> cannot easily be removed. >> >> Because of these limitations I cannot make use of a Guix profile symlink >> forest on the target system. Instead I build a profile locally (with >> the =E2=80=9Cguix shell=E2=80=9D trick above), copy it to the remote wit= h =E2=80=9Cguix copy >> --to=3Dremote /gnu/store/=E2=80=A6-profile=E2=80=9D, and then link that = profile to a fixed >> location on the remote system. >> >> I would like to change this workflow so that I can benefit from roll >> backs without having to manually mess with symlinks. >> >> What do you think about changing =E2=80=9Cguix package=E2=80=9D and/or = =E2=80=9Cguix copy=E2=80=9D to >> better support deployment of remote profiles? > > I like the use case, but perhaps it'd be best implemented via hooking > 'guix home' configs with 'operating-system' ? So you could say, for > this user, I want the following packages and services installed? > > Would that work for your use case? No, because on the remote I don=E2=80=99t have Guix System. It would still be useful, but not for this use case. --=20 Ricardo