zimoun writes:
> Hi, > > Do not take the snippet as bullet-proof. It is a quick example to > illustrate the Guix power. ;-) Yep understood - it was a good starting point for me to expand on! > You mean that: > > $ guix pull -C /tmp/one-channel.scm -p /tmp/one > /tmp/one-channel.scm:2:1: error: 'guix' channel is lacking > hint: Make sure your list of channels contains one channel named `guix' > providing the core of Guix. Yes - I think I understand now, having re-read parts of the manual. A channel.scm represents a guix channel AND optional other channels. It has to describe where guix is. > I am not sure to understand what you want to do, but you can pin one > “guix” version with something like: > > --8<---------------cut here---------------start------------->8--- > (list > (channel > (name 'past) > (url "https://gitlab.inria.fr/guix-hpc/guix-past.git")) > (channel > (name 'guix) ; avoid to recompute heavy derivations and build modules > (url "https://git.savannah.gnu.org/git/guix.git") > (commit "d62c9b2671be55ae0305bebfda17b595f33797f2"))) ; v1.1.0 > --8<---------------cut here---------------end--------------->8--- > Yep this is what I've ended up doing - but am still a bit surprised that even with a pinned guix commit id, and a private channel containing a single trivial package with available substitute, doing a 'git pull' is still fairly expensive (approx 1min). This is quicker than pulling latest guix, of course - so there is some improvement. I was hoping that pinning the guix channel would make 'guix pull' pretty fast. My guess is that even though no packages are downloaded to update the guix channel, time is still required to create the updated profile with the pinned guix and the update to the single package in my private channel? ------- In my (simple/limited) use-case I can avoid the 'guix pull' altogether by using use of GUIX_PACKAGE_PATH to point to my local packages that I'm updating - no 'guix pull' is then needed (unlike a local channel/git repo) and I get rid of the 1min wait. This works well but having read this in the cookbook: "Note: Starting from Guix 0.16, the more flexible Guix channels are the preferred way and supersede ‘GUIX_PACKAGE_PATH’." I'm wondering GUIX_PACKAGE_PATH is ultimately going to be removed, and replaced by local clones of channels (which I accept are far more flexible, but in my specific use-case less efficient)? I don't suppose anyone cares to comment on if GUIX_PACKAGE_PATH is likely to be completely phased out in favor of channels or if it is recognized as separately useful to channels? Personally I think GUIX_PACKAGE_PATH still serves some practical purpose, which is not as well covered by channels?