Subject: Re: bug#37694: Problem with guix pull from local repository
From: Marius Bakke <[email-masked]>
To: Tim Gesthuizen <[email-masked]>, [email-masked]
Date: Thu, 10 Oct 2019 20:13:45 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello Tim,

Tim Gesthuizen via Bug reports for GNU Guix <[email-masked]> writes:

> Hi,
> Guix tells me to report the following so I do:
>
> I have a local Guix checkout and wanted to test a local change in
> action. So as root I executed:
>
>> guix pull --url="/home/tibbe/src/guix" --branch=master
>
> Which resulted in:
>
>> Updating channel 'guix' from Git repository at '/home/tibbe/src/guix'...
>> Building from this channel:
>>   guix      /home/tibbe/src/guix	427e7a4
>> Computing Guix derivation for 'x86_64-linux'... \@ build-started /gnu/store/qyjfhsqsdy57hvh0axgr4l34v2a4d75m-guix-1.0.1-7.fc1fe72-checkout.drv - x86_64-linux /var/log/guix/drvs/qy//jfhsqsdy57hvh0axgr4l34v2a4d75m-guix-1.0.1-7.fc1fe72-checkout.drv.bz2 6671
>> @ build-log 6671 41
>> guile: warning: failed to install locale
>> @ build-log 6671 152
>> environment variable `PATH' set to `/gnu/store/i2cdl0hvrml8hjdqplqln8didnvxkgp5-gzip-1.10/bin:/gnu/store/jh17p4sns7dvbizwz58gdh953qpic144-tar-1.32/bin'
>> @ build-log 6671 116
>> Initialized empty Git repository in /gnu/store/sin7s2f4qw3f17fs8gfv4n059dciml9j-guix-1.0.1-7.fc1fe72-checkout/.git/
>> |@ build-log 6671 102
>> error: Server does not allow request for unadvertised object fc1fe722a05318ac05a71a0b127f231631e2843f
>> @ build-log 6671 55
>> Failed to do a shallow fetch; retrying a full fetch...
>> /@ build-log 6671 41
>> From https://git.savannah.gnu.org/r/guix
>> @ build-log 6671 68
>>  * [new branch]      core-updates            -> origin/core-updates
>> @ build-log 6671 68
>>  * [new branch]      guile-daemon            -> origin/guile-daemon
>> @ build-log 6671 75
>>  * [new branch]      imagemagick-updates     -> origin/imagemagick-updates
>> @ build-log 6671 76
>>  * [new branch]      install-doc-overhaul    -> origin/install-doc-overhaul
>> @ build-log 6671 62
>>  * [new branch]      master                  -> origin/master
>> @ build-log 6671 59
>>  * [new branch]      nix                     -> origin/nix
>> @ build-log 6671 70
>>  * [new branch]      python-updates          -> origin/python-updates
>> @ build-log 6671 66
>>  * [new branch]      qt-updates              -> origin/qt-updates
>> @ build-log 6671 75
>>  * [new branch]      reproduce-bug-29774     -> origin/reproduce-bug-29774
>> @ build-log 6671 61
>>  * [new branch]      rhel6                   -> origin/rhel6
>> @ build-log 6671 63
>>  * [new branch]      snapper                 -> origin/snapper
>> @ build-log 6671 63
>>  * [new branch]      staging                 -> origin/staging
>> @ build-log 6671 70
>>  * [new branch]      version-0.10.0          -> origin/version-0.10.0
>> @ build-log 6671 70
>>  * [new branch]      version-0.11.0          -> origin/version-0.11.0
>> @ build-log 6671 70
>>  * [new branch]      version-0.12.0          -> origin/version-0.12.0
>> @ build-log 6671 70
>>  * [new branch]      version-0.13.0          -> origin/version-0.13.0
>> @ build-log 6671 70
>>  * [new branch]      version-0.14.0          -> origin/version-0.14.0
>> @ build-log 6671 70
>>  * [new branch]      version-0.15.0          -> origin/version-0.15.0
>> @ build-log 6671 70
>>  * [new branch]      version-0.16.0          -> origin/version-0.16.0
>> @ build-log 6671 69
>>  * [new branch]      version-0.8.3           -> origin/version-0.8.3
>> @ build-log 6671 69
>>  * [new branch]      version-0.9.0           -> origin/version-0.9.0
>> @ build-log 6671 69
>>  * [new branch]      version-1.0.0           -> origin/version-1.0.0
>> @ build-log 6671 69
>>  * [new branch]      version-1.0.1           -> origin/version-1.0.1
>> @ build-log 6671 69
>>  * [new branch]      wip-bootstrap           -> origin/wip-bootstrap
>> @ build-log 6671 78
>>  * [new branch]      wip-build-systems-gexp  -> origin/wip-build-systems-gexp
>> @ build-log 6671 69
>>  * [new branch]      wip-buildroot           -> origin/wip-buildroot
>> @ build-log 6671 65
>>  * [new branch]      wip-check               -> origin/wip-check
>> @ build-log 6671 69
>>  * [new branch]      wip-container           -> origin/wip-container
>> @ build-log 6671 72
>>  * [new branch]      wip-cross-system        -> origin/wip-cross-system
>> @ build-log 6671 66
>>  * [new branch]      wip-deploy              -> origin/wip-deploy
>> @ build-log 6671 67
>>  * [new branch]      wip-deploy2             -> origin/wip-deploy2
>> @ build-log 6671 71
>>  * [new branch]      wip-gexp-grafts         -> origin/wip-gexp-grafts
>> @ build-log 6671 72
>>  * [new branch]      wip-gexp-hygiene        -> origin/wip-gexp-hygiene
>> @ build-log 6671 69
>>  * [new branch]      wip-git-https           -> origin/wip-git-https
>> @ build-log 6671 69
>>  * [new branch]      wip-gnome3.30           -> origin/wip-gnome3.30
>> @ build-log 6671 75
>>  * [new branch]      wip-go-build-system     -> origin/wip-go-build-system
>> @ build-log 6671 66
>>  * [new branch]      wip-grafts              -> origin/wip-grafts
>> @ build-log 6671 75
>>  * [new branch]      wip-haskell-updates     -> origin/wip-haskell-updates
>> @ build-log 6671 64
>>  * [new branch]      wip-hurd                -> origin/wip-hurd
>> @ build-log 6671 64
>>  * [new branch]      wip-ipfs                -> origin/wip-ipfs
>> @ build-log 6671 76
>>  * [new branch]      wip-ipfs-substitutes    -> origin/wip-ipfs-substitutes
>> @ build-log 6671 65
>>  * [new branch]      wip-ipfs2               -> origin/wip-ipfs2
>> @ build-log 6671 83
>>  * [new branch]      wip-kde-frameworks-update -> origin/wip-kde-frameworks-update
>> @ build-log 6671 70
>>  * [new branch]      wip-loongson2f          -> origin/wip-loongson2f
>> @ build-log 6671 71
>>  * [new branch]      wip-mediagoblin         -> origin/wip-mediagoblin
>> @ build-log 6671 67
>>  * [new branch]      wip-netlink             -> origin/wip-netlink
>> @ build-log 6671 79
>>  * [new branch]      wip-offload-compression -> origin/wip-offload-compression
>> @ build-log 6671 65
>>  * [new branch]      wip-perl6               -> origin/wip-perl6
>> @ build-log 6671 67
>>  * [new branch]      wip-potluck             -> origin/wip-potluck
>> @ build-log 6671 65
>>  * [new branch]      wip-rails               -> origin/wip-rails
>> @ build-log 6671 64
>>  * [new branch]      wip-rust                -> origin/wip-rust
>> @ build-log 6671 67
>>  * [new branch]      wip-texlive             -> origin/wip-texlive
>> @ build-log 6671 76
>>  * [new branch]      wip-texlive-importer    -> origin/wip-texlive-importer
>> \@ build-log 6671 73
>>  * [new tag]               bootstrap-20190815      -> bootstrap-20190815
>> @ build-log 6671 59
>>  * [new tag]               v0.0                    -> v0.0
>> @ build-log 6671 59
>>  * [new tag]               v0.1                    -> v0.1
>> @ build-log 6671 62
>>  * [new tag]               v0.10.0                 -> v0.10.0
>> @ build-log 6671 62
>>  * [new tag]               v0.11.0                 -> v0.11.0
>> @ build-log 6671 62
>>  * [new tag]               v0.12.0                 -> v0.12.0
>> @ build-log 6671 62
>>  * [new tag]               v0.13.0                 -> v0.13.0
>> @ build-log 6671 62
>>  * [new tag]               v0.14.0                 -> v0.14.0
>> @ build-log 6671 62
>>  * [new tag]               v0.15.0                 -> v0.15.0
>> @ build-log 6671 62
>>  * [new tag]               v0.16.0                 -> v0.16.0
>> @ build-log 6671 59
>>  * [new tag]               v0.2                    -> v0.2
>> @ build-log 6671 59
>>  * [new tag]               v0.3                    -> v0.3
>> @ build-log 6671 59
>>  * [new tag]               v0.4                    -> v0.4
>> @ build-log 6671 59
>>  * [new tag]               v0.5                    -> v0.5
>> @ build-log 6671 59
>>  * [new tag]               v0.6                    -> v0.6
>> @ build-log 6671 59
>>  * [new tag]               v0.7                    -> v0.7
>> @ build-log 6671 59
>>  * [new tag]               v0.8                    -> v0.8
>> @ build-log 6671 61
>>  * [new tag]               v0.8.1                  -> v0.8.1
>> @ build-log 6671 61
>>  * [new tag]               v0.8.2                  -> v0.8.2
>> @ build-log 6671 61
>>  * [new tag]               v0.8.3                  -> v0.8.3
>> @ build-log 6671 61
>>  * [new tag]               v0.9.0                  -> v0.9.0
>> @ build-log 6671 61
>>  * [new tag]               v1.0.0                  -> v1.0.0
>> @ build-log 6671 61
>>  * [new tag]               v1.0.1                  -> v1.0.1
>> |@ build-log 6671 580
>> Note: switching to 'fc1fe722a05318ac05a71a0b127f231631e2843f'.
>> 
>> You are in 'detached HEAD' state. You can look around, make experimental
>> changes and commit them, and you can discard any commits you make in this
>> state without impacting any branches by switching back to a branch.
>> 
>> If you want to create a new branch to retain commits you create, you may
>> do so (now or later) by using -c with the switch command. Example:
>> 
>>   git switch -c <new-branch-name>
>> 
>> Or undo this operation with:
>> 
>>   git switch -
>> 
>> Turn off this advice by setting config variable advice.detachedHead to false
>> 
>> @ build-log 6671 49
>> HEAD is now at fc1fe722a0 gnu: Add Guix-Jupyter.
>> /@ hash-mismatch /gnu/store/sin7s2f4qw3f17fs8gfv4n059dciml9j-guix-1.0.1-7.fc1fe72-checkout r:sha256 1j2d9anxgybv86pxcn1zdv121hb4nmjjp5ngx365fnd0mcg8q1iw 0yx19hxvmkr6ar65ym87xd83n6hz02mr7ibwis7i8wah85ypfq26
>> hash mismatch for store item '/gnu/store/sin7s2f4qw3f17fs8gfv4n059dciml9j-guix-1.0.1-7.fc1fe72-checkout'
>> @ build-failed /gnu/store/qyjfhsqsdy57hvh0axgr4l34v2a4d75m-guix-1.0.1-7.fc1fe72-checkout.drv - 1 hash mismatch for store item '/gnu/store/sin7s2f4qw3f17fs8gfv4n059dciml9j-guix-1.0.1-7.fc1fe72-checkout'
>> cannot build derivation `/gnu/store/w25r370p5zz5g56z6vgxqplrazrr2fr6-guix-daemon-1.0.1-7.fc1fe72.drv': 1 dependencies couldn't be built
>> Backtrace:
>> In ice-9/eval.scm:
>>     159:9 19 (_ #(#(#(#(#(#(#(#(#(#(#(?) ?) ?) ?) ?) ?) ?) ?) ?) ?) ?))
>> In ./guix/store.scm:
>>   1803:24 18 (run-with-store #<store-connection 256.99 7f42f39b30c0> ?)
>>    1673:8 17 (_ _)
>> In ./guix/gexp.scm:
>>     839:2 16 (_ _)
>>     695:2 15 (_ _)
>> In ./guix/monads.scm:
>>     482:9 14 (_ _)
>> In ./guix/gexp.scm:
>>    590:13 13 (_ _)
>> In ./guix/store.scm:
>>    1673:8 12 (_ _)
>> In ./guix/gexp.scm:
>>     839:2 11 (_ _)
>>     695:2 10 (_ _)
>> In ./guix/monads.scm:
>>     482:9  9 (_ _)
>> In ./guix/gexp.scm:
>>    590:13  8 (_ _)
>> In ./guix/store.scm:
>>    1673:8  7 (_ _)
>>    1673:8  6 (_ _)
>>   1696:38  5 (_ #<store-connection 256.99 7f42e32fb240>)
>> In ./guix/packages.scm:
>>    948:16  4 (cache! #<weak-table 1345/1759> #<package guix-daemon@?> ?)
>> In ./guix/grafts.scm:
>>     323:4  3 (graft-derivation #<store-connection 256.99 7f42e32fb2?> ?)
>>     172:4  2 (references-oracle #<store-connection 256.99 7f42e32fb?> ?)
>>    182:20  1 (_ _ _)
>> In ./guix/store.scm:
>>   1203:15  0 (_ #<store-connection 256.99 7f42e32fb240> _ _)
>> 
>> ./guix/store.scm:1203:15: Throw to key `srfi-34' with args `(#<condition &store-protocol-error [message: "build of `/gnu/store/w25r370p5zz5g56z6vgxqplrazrr2fr6-guix-daemon-1.0.1-7.fc1fe72.drv' failed" status: 1] 7f42eb168600>)'.
>> guix pull: error: You found a bug: the program '/gnu/store/fy8kjc7kymh8r1g9sb3h4ky7z8s8b7zf-compute-guix-derivation'
>> failed to compute the derivation for Guix (version: "427e7a48f834be925e859d5884fa33650fe5e929"; system: "x86_64-linux";
>> host version: "8325e1f8c4ca8acff802d98887fbc1a6b467ae4c"; pull-version: 1).
>> Please report it by email to <[email-masked]>.
>
> Just for the record:
>> guix pull --url="file:///home/tibbe/src/guix" --branch master
>
> Did not do anything for quite some time so I killed it.
> It lookes to me like Guix just checks out the wrong thing which results
> in the hash mismatch.
> Probably the interface just is not meant to be used like I tried to do.
>
> I would appreciate feedback on how to do this properly,

This had nothing to do with your local checkout: it happened to everyone
who tried to 'guix pull' between commits 6c50e1dc0 and 2d821e4c7.

Sorry for the breakage!  If you rebase your branch, it should work :-)