On Tue, Dec 01, 2020 at 05:43:22PM +0100, Holger Peters wrote:
Great!
I used `guix refresh --list-dependent libgit2` to see which packages
would be rebuilt as a consequence of changing libgit2, and tested
several of them against the update, and found that it caused failures of
packages using python-pygit2:
------
$ ./pre-inst-env guix build --no-grafts stagit rust-libgit2-sys@0.8.2 offlate \
python-pygit2 emacs-evil-magit fritzing kopete kate r-stm jucipp celestia-gtk \
celestia rust-libgit2-sys@0.10 gitg guix emacs-magit gwl gitless guix-build-coordinator \
--keep-going
[... it does a lot of work ...]
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/usr/local/include -I/gnu/store/q9rm8h9imazsq2c4qiv2yjpvlvliywqb-python-3.8.2/include/python3.8 -c src/blob.c -o build/temp.linux-x86_64-3.8/src/blob.o
In file included from src/blob.h:34:0,
from src/blob.c:30:
src/types.h:36:2: error: #error You need a compatible libgit2 version (0.99.x or 1.0.x)
#error You need a compatible libgit2 version (0.99.x or 1.0.x)
^~~~~
error: command 'gcc' failed with exit status 1
command "python" "-c" "import setuptools, tokenize;__file__='setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))" "build" failed with status 1
builder for `/gnu/store/0fvjfybgr66vygz1w5x6739fqsi14f9b-python-pygit2-1.1.0.drv' failed with exit code 1
build of /gnu/store/0fvjfybgr66vygz1w5x6739fqsi14f9b-python-pygit2-1.1.0.drv failed
------
I fixed this by updating python-pygit2 to the latest version, which is
compatible with libgit2 1.1.0.
I also tested the most important libgit2 user: Guix itself. Guix
commands are designed to compose usefully so you can do these arcane
wizard-ish Unix command substitutions:
------
$ $(./pre-inst-env guix build guix)/bin/guix pull
Authenticating channel 'guix', commits 9edb3f6 to 4496e03 (6 new commits)...
Building from this channel:
Computing Guix derivation for 'x86_64-linux'...
[... it does more work ...]
New in this revision:
105 new packages: catfish, cgoban, chicken-agrep, chicken-datatype, chicken-iset, chicken-srfi-1, chicken-srfi-14, chicken-srfi-69, chicken-test, cl-array-operations,
cl-check-it, cl-clamp, …
135 packages upgraded: altermime@0.3.11, b4@0.5.3, cava@0.7.3, cl-alexandria@1.2, cl-bst@2.0-0.8545aed, cl-ironclad@0.52, cl-simple-parallel-tasks@1.0-1.ce7b60f,
cl-stumpwm@20.11, cl-webkit@2.4-10.5ce3ea1, cpupower@5.9.12, dfu-util@0.10, drbd-utils@9.15.1, …
News for channel 'guix'
Local substitute servers discovery is now supported
Logical Volume Manager (LVM) now supported on Guix System
hint: Run `guix pull --news' to read all the news.
------
It worked for me, so I pushed it as
68fa8fb0cb9f887a6d6069c897a16dc8fce0036d.
Thank you for the contribution!