[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Trying to replicate guix packages list on another machine
From: |
zimoun |
Subject: |
Re: Trying to replicate guix packages list on another machine |
Date: |
Mon, 27 Jun 2022 16:32:31 +0200 |
Hi,
On Mon, 27 Jun 2022 at 15:49, Emmanuel Medernach
<Emmanuel.Medernach@iphc.cnrs.fr> wrote:
> [Machine A]$ guix package --list-installed | sort | awk '//{ print $1
> "@" $2; }'
> cmake@3.19.2
> gcc-toolchain@4.9.4
> glibc@2.33
> gsl@2.6
> icu4c@68.2
> make@4.3
> pcre@8.44
> zlib@1.2.11
Instead, it seems easier to run:
guix package --export-manifest
> But on machine B:
>
> [Machine B]$ cat ~/.config/guix/channels.scm
> (list (channel
> (name 'guix)
> (url "https://git.savannah.gnu.org/git/guix.git")
> (commit
> "a0178d34f582b50e9bdbb0403943129ae5b560ff")
> (introduction
> (make-channel-introduction
> "9edb3f66fd807b096b48283debdcddccfea34bad"
> (openpgp-fingerprint
> "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))))
Did you run “guix pull” or “guix pull -C ~/.config/guix/channels.scm”?
> [Machine B]$ guix install cmake@3.19.2 gcc-toolchain@4.9.4 glibc@2.33
> gsl@2.6 icu4c@68.2 make@4.3 pcre@8.44 zlib@1.2.11
> guix install: error: glibc: package not found for version 2.33
I guess “guix describe” on ’Machine B’ is not the state specified by
’Machine A’. From my understanding, the easiest workflow is:
machine-A$ guix describe -f channels > state-A.scm
machine-A$ guix package --export-manifest > pkgs-A.scm
exchange these 2 files (even, it is better that these 2 files are
versioned with the project itsefl ;-))
machine-B$ guix time-machine -C state-A.scm \
package -m pkg-A.scm \
-p profile-A
This way, the global state of ’Machine B’ is unchanged; in case you are
working on several projects at various states in the same time.
Hope that helps,
simon
Re: Trying to replicate guix packages list on another machine, Julien Lepiller, 2022/06/27