Hello Guix,

Following the Guix Days discussion on the (pre-)GCD about migrating to
Codeberg, some of us went to the Codeberg booth at FOSDEM to chat with
them.  They were nice and took the time to answer our many questions,
despite all this happening in an overcrowded and noisy environment.  :-)

Here are the main takeaways of the top of my head.  To those who were
here: please correct me or add anything I might have forgotten!

  • Scalability (storage): If the Guix repository were to have “tens of
    thousands” of forks (I think these were their words), then the
    storage requirements for Codeberg could be very high and
    problematic, due to lack (or partial lack, I’m not sure) of
    deduplication across forks.

    They mentioned the AGit workflow as a way to avoid that
    fork/branch/pull-request mechanism and its associated costs:
    https://forgejo.org/docs/latest/user/agit-support/

  • Scalability (bandwidth): We brought up the fact that all Guix users
    pull from the repo but they did not express any concern as far as
    bandwidth goes.

    They are working on setting up an alternate instance for read-only
    access such as clones over HTTPS, which will allow them to balance
    the load and keep the main instance focused on serving contributors.

  • Availability: From what they told us, they didn’t experience any
    serious downtime over the last year or so.  (I did see someone
    online suggest otherwise so if you have experience, please share.
    FWIW, over 3+ months of Guix-Science, I’ve seen a couple of 1–2h
    downtime notifications from them and experienced slowness once, but
    that’s about it.)

  • Resilience (people): The infra is volunteer-run, with one person 0.5
    full-time equivalent (FTE) paid by Codeberg e.V., the non-profit.
    They are considering employing another person part-time in the
    coming months.

    As someone noted during the Guix Days, because they’re in the
    European timezone, downtime is likely to be low for those of us in
    that timezone but possibly higher for those in other timezones.

  • User interfaces: They now know that some of us are not keen on using
    a web browser :-).  In addition to Forgejo-CLI and fj.el, they
    mentioned that the HTTP interface of Forgejo is close to that of
    GitHub, so it’s possible that tools that work for GitHub will also
    work for a significant portion of the Forgejo interface.

    The AGit workflow (see above) lets you create pull requests without
    touching the browser.

    If we find that some features are missing in the HTTP interface of
    Forgejo, “we can talk”, they said (most Codeberg volunteers are also
    Forgejo developers).

  • Software Heritage has a hard time archiving code at Codeberg due to
    rate limiting.  Apparently the two parties are now discussing it.

Overall my personal impression is that the plan to move there is
realistic.  The discussion also made it clear that we can and probably
should keep Guix and Codeberg volunteers in contact, as I suggested in
the draft GCD, and I feel that their openness and dedication can make
for a smooth process.

That’s it!

I plan to update the GCD and to formally submit it in the coming days,
now that the GCD process is itself effective.

Ludo’.

  • Discussion with C... Ludovic Courtès

Reply via email to