guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: guix pack file enumerator?


From: Ludovic Courtès
Subject: Re: guix pack file enumerator?
Date: Tue, 08 Dec 2020 12:13:26 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Hi,

Ricardo Wurmus <rekado@elephly.net> skribis:

> “guix pack” is great for deployment of applications to servers that
> don’t have Guix.  For a project I have a “deploy” target in my Makefile
> that essentially does this:
>
>     cat $(shell guix pack -RR -e '(load "guix.scm")' -S /bin=bin) | ssh 
> remote-server "tar xvzf - -C /where/i/want/it"
>
> This is fine for small deployments, but it’s a little annoying that it
> transfer *all* the files, even those that haven’t changed.  So I thought
> I could use rsync here, but it’s inconvenient that “guix pack” will do
> what it was designed for and produce a single file bundle.
>
> What do you think about adding an output format that is no format at all
> but a file enumeration printed to stdout?  That way I could use “guix
> pack” to produce a list of files to transfer and use that to transfer
> only the unchanged files.  Alternatively, perhaps we could have a
> “directory” format that merely copies (or links) the files to a new
> directory root.

You could untar the pack and rsync it.  We could have a ‘directory’
format but I’m afraid it would duplicate too much of the tarball code
(we’d have to check).

When you think about it, you could just as well have Guix on the other
side and then use ‘guix copy’… or maybe use Guix directly there.  (As in
‘guix pack --localstatedir -RR guix’.)

I know it’s not what you had in mind, but it seems to me that there’s a
continuum here, and maybe there’s just a gap to bridge to allow for
smoother workflows?

Thanks,
Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]