cyclically dependent channels crashes guix pull

  • Open
  • quality assurance status badge
Details
3 participants
  • Marius Bakke
  • Martin Becze
  • zimoun
Owner
unassigned
Submitted by
Martin Becze
Severity
normal
M
M
Martin Becze wrote on 4 May 2020 04:38
(address . bug-guix@gnu.org)
834cde6a-8d43-6abe-819c-414611846cee@riseup.net
Cyclically dependent channels crashes guix pull. Cyclically dependent
channels probably shouldn't happen, but guix pull probably shouldn't go
into an endless loop and die either.

Cheers!,
-Martin
M
M
Marius Bakke wrote on 4 May 2020 18:16
87wo5rznel.fsf@devup.no
Martin Becze <mjbecze@riseup.net> writes:

Toggle quote (4 lines)
> Cyclically dependent channels crashes guix pull. Cyclically dependent
> channels probably shouldn't happen, but guix pull probably shouldn't go
> into an endless loop and die either.

Can you provide a channel configuration that reproduces this?
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl6wP8IACgkQoqBt8qM6
VPpxOggAqOM7P0AtyypF4u3p48mZ1c6Ccehc0Qeb3NX+XuR2j+DskrbAVKH7W9d/
UDXvXE34QTyEj0rphyWvqqJEJFiTiSXhmAouXLTXqVQyhEmDjiu2c3F95DJ0iUGs
RsspViZebgBgCEVekbPQMlWDlDrMpiS7OQGQvBG+7fF6UCFM2L/qqbbIUHXooS6p
Av+jqn6F6QQX2r5NFrzFEtE4BK3n5z6H/6F8OFUB6BhJLJ7CWIZTJRbDLXX6mwN9
WdHhQS/vnk+yVYq53LFxFzUXJaWpT/WzCJXmo9a/gnZ0PwWVkQ0orBH8hrY+Q20L
XloGItPGv+aOxlmJsdP9uZdVqpldmQ==
=9w4A
-----END PGP SIGNATURE-----

Z
Z
zimoun wrote on 4 May 2020 19:06
(name . Marius Bakke)(address . mbakke@fastmail.com)
CAJ3okZ0-T10dRqH8bBmbOfHgys0wETSe=hozW3K_CG+vFd5mfA@mail.gmail.com
On Mon, 4 May 2020 at 18:23, Marius Bakke <mbakke@fastmail.com> wrote:
Toggle quote (9 lines)
>
> Martin Becze <mjbecze@riseup.net> writes:
>
> > Cyclically dependent channels crashes guix pull. Cyclically dependent
> > channels probably shouldn't happen, but guix pull probably shouldn't go
> > into an endless loop and die either.
>
> Can you provide a channel configuration that reproduces this?

When one channel depends on another one which depends on the first.

This /tmp/channel1/ contains this .guix-channel

Toggle snippet (10 lines)
(channel
(version 0)
(dependencies
(channel
(name channel2-from-channel1)
(url "file:///tmp/channel2")
(branch "master"))))


This /tmp/channel2/ contains this .guix-channel

Toggle snippet (9 lines)
(channel
(version 0)
(dependencies
(channel
(name channel1-from-channel2)
(url "file:///tmp/channel1")
(branch "master"))))

And for example, the file 'my-channels.scm' contains:

Toggle snippet (16 lines)
(list
(channel
(name 'channel1)
(url "file:///tmp/channel1")
(branch "master"))
(channel
(name 'channel2)
(url "file:///tmp/channel2")
(branch "master"))
(channel
(name 'guix)
(url "https://git.savannah.gnu.org/git/guix.git")
(commit "aea6ab2f4ca060e68f8539cd612b0ce088627557")))


Then guix pull -C /tmp/my-channels.scm will be "Updating ..." for ever. :-)



Hope that helps.

All the best,
simon
?