unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Better support remote deployment
@ 2023-11-01 12:19 Ricardo Wurmus
  2023-11-01 15:20 ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
  2023-11-07 19:07 ` Maxim Cournoyer
  0 siblings, 2 replies; 15+ messages in thread
From: Ricardo Wurmus @ 2023-11-01 12:19 UTC (permalink / raw)
  To: guix-devel

Hi Guix,

I build software locally and deploy the result to a remote system with
“guix copy”.  This works pretty well but has a few rough edges:

1. “guix build -m manifest.scm” does not generate a profile.  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 'echo $GUIX_ENVIRONMENT'

2. “guix package” cannot install an existing profile store item as the
current generation of the profile.  It can, however, install individual
package items into a profile.

3. “guix package --remove” does not support regular expressions, so
removing packages that were installed with “guix install /gnu/store/…”
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 “guix shell” trick above), copy it to the remote with “guix copy
--to=remote /gnu/store/…-profile”, 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 “guix package” and/or “guix copy” to
better support deployment of remote profiles?

-- 
Ricardo


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2023-12-10 13:52 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-11-01 12:19 Better support remote deployment Ricardo Wurmus
2023-11-01 15:20 ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2023-11-02  9:59   ` Ricardo Wurmus
2023-11-07 19:07 ` Maxim Cournoyer
2023-11-07 19:45   ` Ricardo Wurmus
2023-11-08  2:12     ` Maxim Cournoyer
2023-11-08  2:39       ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2023-11-08 14:36         ` Maxim Cournoyer
2023-11-09  7:38           ` Efraim Flashner
2023-11-09 15:01             ` Maxim Cournoyer
2023-11-16 15:23           ` Ludovic Courtès
2023-11-16 16:47             ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2023-11-21  1:33             ` Tomas Volf
2023-11-23  4:24               ` Maxim Cournoyer
2023-12-10 13:49             ` Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).