Subject: bug#78274: SSL syscall failure error in guix pull

From: [email-masked]
Date: Tue, 06 May 2025 00:32:04 +0000

Hello guix,

Last week I downloaded the latest iso of Guix System (v2ih7qy0xrh4w8hp9zd4r06kknbg95jr-image.iso) and after installed it I tried to run guix pull and got this error:

```
$ guix pull
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
guix pull: error: Git error: SSL error: syscall failure: Resource temporarily unavailable
```

Has anyone run into the same problem?

It seems to be an issue in libgit2 dealing with large repositories, because I've found this [open issue in libgit2sharp](https://github.com/libgit2/libgit2sharp/issues/1262#issuecomment-2833483789) reporting a similar behavior. In this thread, user Hex4dec even pointed out that the same problem happens in Guix System.

Some comments in this issue recommended to clone or pull a repository using git:// instead of https:// as a workaround.
To test this, I edited my `.config/guix/channels.scm` to be like this:

```plaintext
(list (channel
        (name 'guix)
        (url "git://git.savannah.gnu.org/guix.git")
        (introduction
         (make-channel-introduction
          "90f0f8713da9cf0dc0bb5c93446a4eba11075352"
          (openpgp-fingerprint
           "D963 A5A3 8A80 3D52 4461  F914 7483 0A27 6C32 8EC2")))))
```

And then `guix pull` and `sudo guix system reconfigure` worked as intended.

I still don't have a good understanding of guix to write and submit a patch for this issue. But as I understand, the only necessary change would be to change the URL in the file `.guix-channel` in guix source code to use git://, right?

If there is anything that I could help with this issue, count on me :)

Thanks in advance,
Arthur