GNU bug report logs - #47949
Failed to produce output path for guix-package-cache

Previous Next

Package: guix;

Reported by: Roel Janssen <roel <at> gnu.org>

Date: Thu, 22 Apr 2021 11:39:02 UTC

Severity: normal

Full log


Message #44 received at 47949 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Vagrant Cascadian <vagrant <at> debian.org>, Ludovic Courtès
 <ludo <at> gnu.org>, Roel Janssen <roel <at> gnu.org>
Cc: 47949 <at> debbugs.gnu.org
Subject: Re: bug#47949: Failed to produce output path for guix-package-cache
Date: Thu, 03 Nov 2022 09:48:21 +0100
Hi Vagrant,

On Wed, 02 Nov 2022 at 11:40, Vagrant Cascadian <vagrant <at> debian.org> wrote:

>> I do not know if “git clean -dfx” would help because here the error is
>> probably between the repositories src/guix and src/guix-master and Guix
>> manages them under 2 unrelated directory checkouts.
>
> I had the impression that it uses git to copy the branches (rather than
> cp -r or something), otherwise the --branch=master argument would be
> meaningless (e.g. --branch=master does not mean whatever happens to be
> in the working directory), so I would assume the state of the local
> working directory wouldn't matter, only what's in the specified branch
> as git sees it.

From my understanding, this

  guix pull --url=/home/vagrant/src/guix --branch=master

creates one directory under ~/.cache/guix/checkouts/ and then this,

  guix pull --url=/home/vagrant/src/guix-master --branch=master

creates another directory under ~/.cache/guix/checkouts/ and these both
directory does not have the same name because their url is different.

IIUC, you were at generation 139 (using a clone of
/home/vagrant/src/guix living under say
~/.cache/guix/checkouts/maboosgggz6g6va54rikfxrsdsxhe363jri7g5dhcqb57odwklaa)

--8<---------------cut here---------------start------------->8---
# First version where I noticed failures:
Generation 139       Oct 22 2022 13:07:08
  guix bb2701b
    repository URL: /home/vagrant/src/guix
    branch: master
    commit: bb2701b9111a3d82a82ceaaf2b22b51ecd8ac21f

# Failed to pull from 139, successfully pulled from 138:
Generation 140       Oct 24 2022 13:19:21
  guix 8663be6
    repository URL: /home/vagrant/src/guix-master
    branch: master
    commit: 8663be6da7f13a8eeea71dc1f493f7adc5b7672a
--8<---------------cut here---------------end--------------->8---

and then you had difficulties, but note that “guix pull” generating 140
created another clone from /home/vagrant/src/guix-master living under
~/.cache/guix/checkouts/ie7tn3i564wpt5i2dqqm7ixzqfxwpp2ns6rqkyqn4z55d4kqujuq.

Generation 140 did not updated the checkout used by generation 139.

Somehow, the state of
~/.cache/guix/checkouts/maboosgggz6g6va54rikfxrsdsxhe363jri7g5dhcqb57odwklaa
and the state of
~/.cache/guix/checkouts/ie7tn3i564wpt5i2dqqm7ixzqfxwpp2ns6rqkyqn4z55d4kqujuq
require some compatibility, no?


Well, I have lost the topic of the initial bug report. :-)

BTW, I agree that “guix pull” and “guix time-machine” are requiring too
much resource (especially bandwidth) when we could imagine more resource
shares between various accounts and root.  Well, I do no know if
guile-git provides the git-worktree feature.  Or we could also imagine a
more automated workflow using only one local clone as you are doing.


Cheers,
simon




This bug report was last modified 2 years and 44 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.