Subject: Re: bug#76660: current guix pull doesn't authenticate

From: 45mg <[email-masked]>
Date: Sun, 02 Mar 2025 06:24:55 +0000

Tomas Volf <[email-masked]> writes:

> Jack Hill <[email-masked]> writes:
[...]
>> jackhill@lissome ~$ guix pull
>> Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
>> guix pull: error: aborting update of channel 'guix' to commit 6ca7b07a251739dfaefa639e74c01e3013c9454c, which is not a descendant of f13f0769688493271f43f31a016957355dbecb30
>> 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.
>>
>> I don't have reason to believe the channel needs to be rolled back, I assume
>> something is wrong with the savannah copy of the repo, but don't know. Can
>> someone confirm?
>
> Can confirm.
[...]
> Given that f13f0769688493271f43f31a016957355dbecb30 has fairly large
> commit message, maybe the known bugs in how we are using guile-git
> finally caught up with us.

I just re-authenticated my existing checkout of Guix from scratch (`rm
-r ~/.cache/guix/authentication/* && guix git authenticate`), and the
authentication was successful. (The checkout is up-to-date, as both
6ca7b07a251739dfaefa639e74c01e3013c9454c and
f13f0769688493271f43f31a016957355dbecb30 can be found in `git log`.)

However, I have not yet pulled 6ca7b07a251739dfaefa639e74c01e3013c9454c.
I'm currently on b9063be5a73114c1bfb23121b7c9b612835d014d [1].

So, I think you're right - it's probably an issue in `guix pull` or the
authentication mechanism, not the Guix repository (assuming that others
can also reproduce this).

[1] ...well, technically, I'm pulling from a personal authenticated fork
    where upstream commits are rebased onto the branch I pull from; so
    the hashes are all different even though the commit contents are all
    the same. So I'm not actually on
    b9063be5a73114c1bfb23121b7c9b612835d014d; rather, that's the last
    commit that I rebased onto my fork branch.