Hello Guix,

Recently I've been experiencing issues with using Guix from China. As
far as working around, so far so good I guess, and the ongoing Codeberg
GCD might shake things up a little, but I'm a little worried I took a
route where I could lock myself out of upgrading my homes and systems
later down the line.

If I could only have a reliable way to trigger a full re-clone and
re-authentication of the official Guix, then I'm confident there will
always be a way forward, hence most importantly there are a few
questions at the end of this message.

Meanwhile let's describe the situation briefly:

I'm in China. In the last 2 weeks, I've been plagued with errors 502 or
SSL errors when trying to guix pull %default-guix-channel from
Savannah. Pulling with git pull from inside a local clone of the
Savannah guix repo can yield the same error, but not repeatably so.

For this Savannah vs China problem, when inside guix, using my Socks
proxy is apparently unhelpful... Well, that is, unless I think I'm using
it but actually I'm not because it does not work from inside guix
pull. I thought I tested for that a while ago though.

What may have spelled my doom in the long run, I reacted to my Savannah
vs China problem by guix pulling from a local file system clone of the
Guix source tree. Now I'm suffering from erratic git "object not found"
errors when I guix pull. Apparently I can't even stay on a given commit
of official Guix for a while because this can (but not always!) break
again when I update my private channel and pull from its new HEAD. Then,
when my local official Guix clone has a new commit, I can guix pull
(always?) successfully again.

I tried one time to pull from Codeberg but I also got "object not found"
on the same object which was complained when trying to use the local
file system clone.

And then the last straw: this morning I noticed that when I remove the
Guix source commits checkouts under ~/.cache/guix, Guix does not seem to
re-clone and re-authenticate my channels from their initial commit. It
used to be that I could always trigger a fresh clone from that. Now it
seems that the checkouts are only anecdotally used when guix has failed
because it managed to git pull some channels but not all.

guix gc --verify did not find any problems with my store.

Hence my questions:

Was there a recent change - to guix, libgit, guile-git, ... - such that
the checkouts under ~/.cache/guix/checkouts are not used by guix pull as
ubiquitously as before?

In normal or less-than-normal-such-as-mine circumstances, should it be
considered a dangerous action to delete the cache of guix checkouts
under ~/.cache/guix?

What is at this time the recommended way to trigger a full re-clone and
re-authentication of guix channels from an already installed system or
home, if any?

P-S: on the bright side, I wish to report to the mothership that the
substitute server at https://mirrors.sjtug.sjtu.edu.cn/guix has recently
gone from helpful in the slow hours to lightning fast and reliable day
and night from pretty much everywhere I go in China. It was always nice
because the default substitute servers have a lot of slow hours around
here, but now it's really sweet! Whoever is taking care of that, thanks!

Runciter


Reply via email to