guile2.0-git rewrites libgit2 input to use guile-2.0

  • Open
  • quality assurance status badge
Details
3 participants
  • Danny Milosavljevic
  • Ludovic Courtès
  • Mark H Weaver
Owner
unassigned
Submitted by
Mark H Weaver
Severity
normal
M
M
Mark H Weaver wrote on 28 Mar 2019 21:38
One libgit2 derivation fails on armhf, another succeeds
(address . bug-guix@gnu.org)
875zs2d99d.fsf@netris.org
The 'guile2.0-git-0.2.0' package fails to build on hydra.gnu.org,
because its dependency 'libgit2' fails to build:


However, there's another 'libgit2' derivation in the same evaluation,
which succeeds:


Looking at the source for 'guile2.0-git', defined in
gnu/packages/guile.scm, it appears to use the standard 'libgit2'
package, unless 'package-for-guile-2.0' is somehow modifying the
'libgit2' derivation.

Any idea what's going on here?

Mark
D
D
Danny Milosavljevic wrote on 28 Mar 2019 22:40
(name . Mark H Weaver)(address . mhw@netris.org)(address . 35034@debbugs.gnu.org)
20190328224014.1dc8fb02@scratchpost.org
Hi Mark,

On Thu, 28 Mar 2019 16:38:27 -0400
Mark H Weaver <mhw@netris.org> wrote:

Toggle quote (5 lines)
> unless 'package-for-guile-2.0' is somehow modifying the
> 'libgit2' derivation.
>
> Any idea what's going on here?

Not really, *but* I've recently replaced Python by Guile in libgit2
tests.

Maybe that broke something - especially if package-for-guile-2.0 somehow
either provides both guile versions as native inputs or selects one
incompatible with the "generate.scm" I wrote.

Here, (ice-9 textual-ports) seems to be not found. Does it not exist in
guile 2.0 ? (I wasn't aware we still used guile 2.0 for something...)
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAlydP0YACgkQ5xo1VCww
uqVIlwf7BTRyk2KHj5WDEsSYOIs6wjmCnBp7bca3EOLPntMgR4sSTn+3Ehczjlwh
76n2uUD+F5JgzAJatY06lkbbEKEoD52+W2NZ53KeTyeYU3dCruRTUwyJ39v/n7wr
q3uATj5ZQPHWEcw4mXIDVkn122PWzz4LpRT7eRoqsGXVv/dJnDZoj/zbZ0CVuLSt
Gor2DBT8nX7FVfnjS73U7hjM8nxkJaoaUY+27SSnjUvfq74U0qvXqEIsMgUkaGBs
hFaQq+ZQvTsh4jXUo5P9j3Cy+eEJ1EegKLuuqP9NWv9Dl0jfp9jpviVIBm7S87ZG
qqdnKAeRLTSj9nE7brWGzHi0nqtFYA==
=CtrJ
-----END PGP SIGNATURE-----


M
M
Mark H Weaver wrote on 28 Mar 2019 22:58
guile2.0-git rewrites libgit2 input to use guile-2.0 (was: One libgit2 derivation fails on armhf, another succeeds)
(address . 35034@debbugs.gnu.org)
871s2qd5k1.fsf@netris.org
retitle 35034 guile2.0-git rewrites libgit2 input to use guile-2.0
thanks

It turns out that this problem is not specific to armhf. 'guile2.0-git'
recently started failing to build on all Hydra-supported systems.

I see now what's going on. The problem was introduced by:

commit 03fb5ff6ae01a680c786d9ee148839543c519411
Author: Danny Milosavljevic <dannym@scratchpost.org>
Date: Thu Mar 21 23:28:43 2019 +0100
gnu: libgit2: Avoid Python.
* gnu/packages/patches/libgit2-avoid-python.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/version-control.scm (libgit2)[source]: Use it.
[inputs]: Remove python.
[native-inputs]: Add guile-2.2.

The 'guile-git' package has 'libgit2' as an input. The 'guile2.0-git'
variant package uses 'package-for-guile-2.0' to rewrite 'guile-git' to
use 'guile-2.0'. Unfortunately, this rewrites more deeply than we
probably want. In this case, the rewriting extends into 'libgit2',
changing its native-input from 'guile-2.2' to 'guile-2.0'. However, the
Guile code that Danny wrote doesn't work with 'guile-2.0', because it
uses the (ice-9 textual-ports) module, which doesn't exist in Guile 2.0.

Suggestions?

Mark
L
L
Ludovic Courtès wrote on 29 Mar 2019 16:29
Re: guile2.0-git rewrites libgit2 input to use guile-2.0
(name . Mark H Weaver)(address . mhw@netris.org)
87imw1aecl.fsf@gnu.org
Hi Mark,

Mark H Weaver <mhw@netris.org> skribis:

Toggle quote (14 lines)
> retitle 35034 guile2.0-git rewrites libgit2 input to use guile-2.0
> thanks
>
> It turns out that this problem is not specific to armhf. 'guile2.0-git'
> recently started failing to build on all Hydra-supported systems.
>
> I see now what's going on. The problem was introduced by:
>
> commit 03fb5ff6ae01a680c786d9ee148839543c519411
> Author: Danny Milosavljevic <dannym@scratchpost.org>
> Date: Thu Mar 21 23:28:43 2019 +0100
>
> gnu: libgit2: Avoid Python.

[...]

Toggle quote (8 lines)
> The 'guile-git' package has 'libgit2' as an input. The 'guile2.0-git'
> variant package uses 'package-for-guile-2.0' to rewrite 'guile-git' to
> use 'guile-2.0'. Unfortunately, this rewrites more deeply than we
> probably want. In this case, the rewriting extends into 'libgit2',
> changing its native-input from 'guile-2.2' to 'guile-2.0'. However, the
> Guile code that Danny wrote doesn't work with 'guile-2.0', because it
> uses the (ice-9 textual-ports) module, which doesn't exist in Guile 2.0.

I’m tempted to sidestep the problem by removing “guile2.0-git”, which I
think is of little use.

WDYT?

Ludo’.
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 35034@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 35034
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch