all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Unable to get rid of guix-past (and unable to pull)
@ 2024-11-27 23:28 Gabriel Wicki
  2024-11-28  0:39 ` James Smith
  2024-11-29 15:58 ` Simon Tournier
  0 siblings, 2 replies; 6+ messages in thread
From: Gabriel Wicki @ 2024-11-27 23:28 UTC (permalink / raw)
  To: help-guix

Howdy!

So, mysterious things seem to happen on my machines - yes, that's right,
i managed to reproduce the following behaviour.  But see yourself:

Guix pull fails (has guix-past been rebased or force-pushed?)

    gabriel@silvi ~$ guix pull
    Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
    Updating channel 'gabber' from Git repository at 'https://git.sr.ht/~gabber/gabber-channel'...
    Updating channel 'nonguix' from Git repository at 'https://gitlab.com/nonguix/nonguix'...
    Updating channel 'guix-gaming-games' from Git repository at 'https://gitlab.com/guix-gaming-channels/games.git'...
    Updating channel 'guix-past' from Git repository at 'https://codeberg.org/guix-science/guix-past.git'...
    guix pull: error: aborting update of channel 'guix-past' to commit f99ada4123de1eadf668d34dac2d726407634549, which is not a descendant of 5fb77cce01f21a03b8f5a9c873067691cf09d057
    hint: This could indicate that the channel has been tampered with and is trying to force a roll-back,
    preventing you from getting the latest updates.  If you think this is not the case, explicitly allow
    non-forward updates.

So i investigate:

    gabriel@silvi ~$ guix describe
    Generation 21	Oct 23 2024 22:56:15	(current)
    guix 5f4ba1c
        repository URL: https://git.savannah.gnu.org/git/guix.git
        branch: master
        commit: 5f4ba1c09fa0fba1ed230b80bae9f6a4d0d2d303
    gabber 20f7905
        repository URL: https://git.sr.ht/~gabber/gabber-channel
        branch: trunk
        commit: 20f7905206826e0d110cab57974b3426683ac814
    nonguix ad966c3
        repository URL: https://gitlab.com/nonguix/nonguix
        branch: master
        commit: ad966c3844385e8f7b60b0dc915f92a1eba47e09
    guix-gaming-games 5762eda
        repository URL: https://gitlab.com/guix-gaming-channels/games.git
        branch: master
        commit: 5762eda50230715555da5beb0f4d06a5456bb5c0
    guix-past 5fb77cc
        repository URL: https://gitlab.inria.fr/guix-hpc/guix-past
        branch: master
        commit: 5fb77cce01f21a03b8f5a9c873067691cf09d057

Weirdly enough, guix-past is not im my channels configuration (which is
managed by guix home):

    gabriel@silvi ~$ cat .config/guix/channels.scm
    (list (channel
            (name 'guix)
            (url "https://git.savannah.gnu.org/git/guix.git")
            (branch "master")
            (introduction
            (make-channel-introduction
                "9edb3f66fd807b096b48283debdcddccfea34bad"
                (openpgp-fingerprint
                "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA"))))
        (channel
            (name 'gabber)
            (url "https://git.sr.ht/~gabber/gabber-channel")
            (branch "trunk"))
        (channel
            (name 'nonguix)
            (url "https://gitlab.com/nonguix/nonguix")
            (branch "master")
            (introduction
            (make-channel-introduction
                "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
                (openpgp-fingerprint
                "2A39 3FFF 68F4 EF7A 3D29  12AF 6F51 20A0 22FB B2D5"))))
        (channel
            (name 'guix-gaming-games)
            (url "https://gitlab.com/guix-gaming-channels/games.git")
            (branch "master")
            (introduction
            (make-channel-introduction
                "c23d64f1b8cc086659f8781b27ab6c7314c5cca5"
                (openpgp-fingerprint
                "50F3 3E2E 5B0C 3D90 0424  ABE8 9BDC F497 A4BB CC7F")))))

And even pulling with explicitly stating the channels file (which i
thought would **only** pull the channels described in said file) fails
pulling guix-past -- which is *not* part of that very file:

    gabriel@silvi ~$ guix pull --channels=!$
    guix pull --channels=.config/guix/channels.scm
    Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
    Updating channel 'gabber' from Git repository at 'https://git.sr.ht/~gabber/gabber-channel'...
    Updating channel 'nonguix' from Git repository at 'https://gitlab.com/nonguix/nonguix'...
    Updating channel 'guix-gaming-games' from Git repository at 'https://gitlab.com/guix-gaming-channels/games.git'...
    Updating channel 'guix-past' from Git repository at 'https://codeberg.org/guix-science/guix-past.git'...
    guix pull: error: aborting update of channel 'guix-past' to commit f99ada4123de1eadf668d34dac2d726407634549, which is not a descendant of 5fb77cce01f21a03b8f5a9c873067691cf09d057
    hint: This could indicate that the channel has been tampered with and is trying to force a roll-back,
    preventing you from getting the latest updates.  If you think this is not the case, explicitly allow
    non-forward updates.

Needless to say, `guix-past' is (seemingly) defined nowhere on my
system.

    gabriel@silvi ~$ sudo cat /etc/guix/channels.scm
    (list (channel (name (quote guix)) (url "https://git.savannah.gnu.org/git/guix.git") (branch "master") (introduction (make-channel-introduction "9edb3f66fd807b096b48283debdcddccfea34bad" (openpgp-fingerprint "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA")))))

Any ideas where this is coming from and/or how i can work around this
issue?  Or where /else/ i could look.  Thanks for any input!

gabber


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unable to get rid of guix-past (and unable to pull)
  2024-11-27 23:28 Unable to get rid of guix-past (and unable to pull) Gabriel Wicki
@ 2024-11-28  0:39 ` James Smith
  2024-11-29 17:54   ` Gabriel Wicki
  2024-11-29 15:58 ` Simon Tournier
  1 sibling, 1 reply; 6+ messages in thread
From: James Smith @ 2024-11-28  0:39 UTC (permalink / raw)
  To: Gabriel Wicki; +Cc: help-guix

Gabriel Wicki <gabriel@erlikon.ch> writes:

> Howdy!
>
> So, mysterious things seem to happen on my machines - yes, that's right,
> i managed to reproduce the following behaviour.  But see yourself:
>
> Guix pull fails (has guix-past been rebased or force-pushed?)
>
>     gabriel@silvi ~$ guix pull
>     Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
>     Updating channel 'gabber' from Git repository at 'https://git.sr.ht/~gabber/gabber-channel'...
>     Updating channel 'nonguix' from Git repository at 'https://gitlab.com/nonguix/nonguix'...
>     Updating channel 'guix-gaming-games' from Git repository at 'https://gitlab.com/guix-gaming-channels/games.git'...
>     Updating channel 'guix-past' from Git repository at 'https://codeberg.org/guix-science/guix-past.git'...
>     guix pull: error: aborting update of channel 'guix-past' to commit f99ada4123de1eadf668d34dac2d726407634549, which is not a descendant of 5fb77cce01f21a03b8f5a9c873067691cf09d057
>     hint: This could indicate that the channel has been tampered with and is trying to force a roll-back,
>     preventing you from getting the latest updates.  If you think this is not the case, explicitly allow
>     non-forward updates.
>
> So i investigate:
>
>     gabriel@silvi ~$ guix describe
>     Generation 21	Oct 23 2024 22:56:15	(current)
>     guix 5f4ba1c
>         repository URL: https://git.savannah.gnu.org/git/guix.git
>         branch: master
>         commit: 5f4ba1c09fa0fba1ed230b80bae9f6a4d0d2d303
>     gabber 20f7905
>         repository URL: https://git.sr.ht/~gabber/gabber-channel
>         branch: trunk
>         commit: 20f7905206826e0d110cab57974b3426683ac814
>     nonguix ad966c3
>         repository URL: https://gitlab.com/nonguix/nonguix
>         branch: master
>         commit: ad966c3844385e8f7b60b0dc915f92a1eba47e09
>     guix-gaming-games 5762eda
>         repository URL: https://gitlab.com/guix-gaming-channels/games.git
>         branch: master
>         commit: 5762eda50230715555da5beb0f4d06a5456bb5c0
>     guix-past 5fb77cc
>         repository URL: https://gitlab.inria.fr/guix-hpc/guix-past
>         branch: master
>         commit: 5fb77cce01f21a03b8f5a9c873067691cf09d057
>
> Weirdly enough, guix-past is not im my channels configuration (which is
> managed by guix home):
>
>     gabriel@silvi ~$ cat .config/guix/channels.scm
>     (list (channel
>             (name 'guix)
>             (url "https://git.savannah.gnu.org/git/guix.git")
>             (branch "master")
>             (introduction
>             (make-channel-introduction
>                 "9edb3f66fd807b096b48283debdcddccfea34bad"
>                 (openpgp-fingerprint
>                 "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA"))))
>         (channel
>             (name 'gabber)
>             (url "https://git.sr.ht/~gabber/gabber-channel")
>             (branch "trunk"))
>         (channel
>             (name 'nonguix)
>             (url "https://gitlab.com/nonguix/nonguix")
>             (branch "master")
>             (introduction
>             (make-channel-introduction
>                 "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
>                 (openpgp-fingerprint
>                 "2A39 3FFF 68F4 EF7A 3D29  12AF 6F51 20A0 22FB B2D5"))))
>         (channel
>             (name 'guix-gaming-games)
>             (url "https://gitlab.com/guix-gaming-channels/games.git")
>             (branch "master")
>             (introduction
>             (make-channel-introduction
>                 "c23d64f1b8cc086659f8781b27ab6c7314c5cca5"
>                 (openpgp-fingerprint
>                 "50F3 3E2E 5B0C 3D90 0424  ABE8 9BDC F497 A4BB CC7F")))))
>
> And even pulling with explicitly stating the channels file (which i
> thought would **only** pull the channels described in said file) fails
> pulling guix-past -- which is *not* part of that very file:
>
>     gabriel@silvi ~$ guix pull --channels=!$
>     guix pull --channels=.config/guix/channels.scm
>     Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
>     Updating channel 'gabber' from Git repository at 'https://git.sr.ht/~gabber/gabber-channel'...
>     Updating channel 'nonguix' from Git repository at 'https://gitlab.com/nonguix/nonguix'...
>     Updating channel 'guix-gaming-games' from Git repository at 'https://gitlab.com/guix-gaming-channels/games.git'...
>     Updating channel 'guix-past' from Git repository at 'https://codeberg.org/guix-science/guix-past.git'...
>     guix pull: error: aborting update of channel 'guix-past' to commit f99ada4123de1eadf668d34dac2d726407634549, which is not a descendant of 5fb77cce01f21a03b8f5a9c873067691cf09d057
>     hint: This could indicate that the channel has been tampered with and is trying to force a roll-back,
>     preventing you from getting the latest updates.  If you think this is not the case, explicitly allow
>     non-forward updates.
>
> Needless to say, `guix-past' is (seemingly) defined nowhere on my
> system.
>
>     gabriel@silvi ~$ sudo cat /etc/guix/channels.scm
>     (list (channel (name (quote guix)) (url "https://git.savannah.gnu.org/git/guix.git") (branch "master") (introduction (make-channel-introduction "9edb3f66fd807b096b48283debdcddccfea34bad" (openpgp-fingerprint "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA")))))
>
> Any ideas where this is coming from and/or how i can work around this
> issue?  Or where /else/ i could look.  Thanks for any input!
>
> gabber

Hi Gabriel,

Just like packages can depend on other packages, so Guix channels can
depend on other channels. A channel can define dependencies in the
.guix-channel file at the root of each repository. Checking through each
channel, I found that guix-gaming-games depends on guix-past. As for
getting around it, you could try running "guix pull --roll-back" and try
pulling again.

Hope that helps,

James


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unable to get rid of guix-past (and unable to pull)
  2024-11-27 23:28 Unable to get rid of guix-past (and unable to pull) Gabriel Wicki
  2024-11-28  0:39 ` James Smith
@ 2024-11-29 15:58 ` Simon Tournier
  2024-12-01 13:26   ` Ludovic Courtès
  1 sibling, 1 reply; 6+ messages in thread
From: Simon Tournier @ 2024-11-29 15:58 UTC (permalink / raw)
  To: Gabriel Wicki, help-guix

Hi,

On Thu, 28 Nov 2024 at 00:28, Gabriel Wicki <gabriel@erlikon.ch> wrote:

>     guix pull: error: aborting update of channel 'guix-past' to commit f99ada4123de1eadf668d34dac2d726407634549, which is not a descendant of 5fb77cce01f21a03b8f5a9c873067691cf09d057

[...]

>     guix-past 5fb77cc
>         repository URL: https://gitlab.inria.fr/guix-hpc/guix-past
>         branch: master
>         commit: 5fb77cce01f21a03b8f5a9c873067691cf09d057

Ouch!  That because Ludo pushed commit [1]
5fb77cce01f21a03b8f5a9c873067691cf09d057 to
https://gitlab.inria.fr/guix-hpc/guix-past but not to
https://codeberg.org/guix-science/guix-past.

In the meantime, you pulled and thus you get this 5fb77cc because it was
still the reference of the old location (inria).  Then you pulled again
but this time using the new location (codeberg).  And bang!

Somehow, that’s a migration typo. :-)  And we cannot do more now it’s
done.

1: https://gitlab.inria.fr/guix-hpc/guix-past/-/commits/master/?ref_type=HEADS

> Needless to say, `guix-past' is (seemingly) defined nowhere on my
> system.

As explained, it is indirectly pulled via guix-gaming-channels [2].

In other words, the scenario reads:

 1. Migration of guix-past from Inria to Codeberg
 2. 5fb77cc pushed to guix-past Inria
 3. guix-gaming-channels had not yet updated their dependency (guix-past)
 4. you pulled, so fetched 5fb77cc from guix-past Inria via the channel
    guix-gaming-channels
 5. guix-gaming-channels updated their dependency reference (guix-past)
 6. you pulled again… Bang!

Well, there is various solutions.  Somehow, you need to clean some cache
to make the authentication passes.  Is it still broken for you?

Cheers,
simon


1: https://gitlab.com/guix-gaming-channels/games/-/blob/34a0e847c1f5a062b4cfa261ee1ff06e1f9f0973/.guix-channel#L15-21



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unable to get rid of guix-past (and unable to pull)
  2024-11-28  0:39 ` James Smith
@ 2024-11-29 17:54   ` Gabriel Wicki
  0 siblings, 0 replies; 6+ messages in thread
From: Gabriel Wicki @ 2024-11-29 17:54 UTC (permalink / raw)
  To: help-guix

Thanks James and Simon

Rolling back and pulling again did the trick!


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unable to get rid of guix-past (and unable to pull)
  2024-11-29 15:58 ` Simon Tournier
@ 2024-12-01 13:26   ` Ludovic Courtès
  2024-12-01 18:28     ` Simon Tournier
  0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2024-12-01 13:26 UTC (permalink / raw)
  To: Simon Tournier; +Cc: Gabriel Wicki, help-guix

Hello,

Simon Tournier <zimon.toutoune@gmail.com> skribis:

> On Thu, 28 Nov 2024 at 00:28, Gabriel Wicki <gabriel@erlikon.ch> wrote:
>
>>     guix pull: error: aborting update of channel 'guix-past' to commit f99ada4123de1eadf668d34dac2d726407634549, which is not a descendant of 5fb77cce01f21a03b8f5a9c873067691cf09d057
>
> [...]
>
>>     guix-past 5fb77cc
>>         repository URL: https://gitlab.inria.fr/guix-hpc/guix-past
>>         branch: master
>>         commit: 5fb77cce01f21a03b8f5a9c873067691cf09d057
>
> Ouch!  That because Ludo pushed commit [1]
> 5fb77cce01f21a03b8f5a9c873067691cf09d057 to
> https://gitlab.inria.fr/guix-hpc/guix-past but not to
> https://codeberg.org/guix-science/guix-past.

This was also reported it at:

  https://codeberg.org/guix-science/guix-past/issues/5

Not sure if there’s something we can do to make the transition smoother,
such as introducing a merge commit with
5fb77cce01f21a03b8f5a9c873067691cf09d057 as one of its parents.

Ludo’.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unable to get rid of guix-past (and unable to pull)
  2024-12-01 13:26   ` Ludovic Courtès
@ 2024-12-01 18:28     ` Simon Tournier
  0 siblings, 0 replies; 6+ messages in thread
From: Simon Tournier @ 2024-12-01 18:28 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Gabriel Wicki, help-guix

Hi,

On Sun, 01 Dec 2024 at 14:26, Ludovic Courtès <ludo@gnu.org> wrote:

> Not sure if there’s something we can do to make the transition smoother,
> such as introducing a merge commit with
> 5fb77cce01f21a03b8f5a9c873067691cf09d057 as one of its parents.

I think the transition – of those who haven’t yet – would be smoother if
commit 5fb77 is removed (force push) from the gitlab.inria.fr repository
and thus the migration would be only indicated in the ’Project
information’ field.

The repository is already in archive mode so an indication via ’Project
information’ appears to me enough.  And it avoids the breakage.

Well, I am not convinced the information by commit 5fb77 really helps
but for sure its collateral breaks the transition.

For the ones who have already pulled commit 5fb77, nothing can be done.
But the others, removing commit 5fb77 from gitlab.inria.fr makes the
transition easier for them, IMHO.

Cheers,
simon


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-12-01 19:03 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-27 23:28 Unable to get rid of guix-past (and unable to pull) Gabriel Wicki
2024-11-28  0:39 ` James Smith
2024-11-29 17:54   ` Gabriel Wicki
2024-11-29 15:58 ` Simon Tournier
2024-12-01 13:26   ` Ludovic Courtès
2024-12-01 18:28     ` Simon Tournier

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.