Subject: bug#44827: tests/channels.scm: Test failures building on Debian i386 or armhf with libgit2-dev 1.0.1

From: Ludovic Courtès <[email-masked]>
Date: Fri, 27 Nov 2020 11:02:54 +0100

Hi,

Vagrant Cascadian <[email-masked]> skribis:

> On 2020-11-26, Ludovic Courtès wrote:

[...]

>> In particular, Guile-Git 0.4.0 has this thing compile-time check to make
>> sure it matches the ABI of the underlying libgit2 version (0.28 or 1.0):
>>
>>   https://gitlab.com/guile-git/guile-git/-/commit/2b4d077c6f55648f42af31ae783ca4d8c1c5f1de
>>
>> So if you change libgit2 versions, you need to rebuild Guile-Git.
>
> Oh, this will be fun to keep track of in debian... :/ :)

Note that the problem is the same for packages written in C since it’s
an ABI change in libgit2.  (Except that in C perhaps you get a SONAME
mismatch at load time rather than an error at run time…)

> Yeah, the guile-git was built with the older 0.28 version of libgit2-dev
> (although also with all the architectures).
>
> Interestingly enough, guix pull completely fails with the older
> libgit2-dev version installed, but installing the new version it works
> fine.
>
> I'll build a newer guile-git version and force it to use the newer
> libgit2-dev package, and see if that fixes the issues.
>
> Then I'll have to come up with complicated versioned dependencies to
> ensure it keeps working in Debian and it becomes detectable when it
> needs to be rebuilt...

Heheh.  Let me know how it goes!

Thanks,
Ludo’.