Published: 03.05.2021 | Edited: 09.05.2021 | Tags: 100daystooffload,federation,gitea

On federated code hosting

I have written a little about the possibility of Single-Sign-On (SSO) for Gitea getting closer to being a reality. Today I have stumbled upon a relatively different approach that I have found interesting: federated code hosting.

While still in the draft phase, the concept seems really intriguing. The same way Pleroma, Mastodon or a handful of other services federate (roughly meaning exchange data) with each other using an ActivityPub protocol, the same general idea could be brought to GitLab, gogs, Gitea and quite possibly to other code hosting platforms too. Maybe even not a git-based version control systems could be included for a maximum collaboration, as once the protocol is agreed upon, the implementation is easier. This all would require some ActivityPub protocol extensions, but would bring in the advantages of self-hosted platforms, in this case the code hosting ones.

Such approach would be decentralized and generally very opposed to the Single-Sign-On one briefly discussed before, as SSO is inherently centralized. While both approach would bring the possibility of a single identity over multiple networks, the federated code hosting goes far beyond, including, but not limited to new ticket federation, ticket comment federation, federated push activities and federated repository following among few proposed features.

I am a big fan of decentralized and self-hosted applications, self-hosting not just Pleroma but also Gitea as well and a handful of other services with related properties. That's why the idea of both, the code hosting and the federation at the same time is very appealing to me. But unlike to SSO, which seems almost already available for Gitea, the federation is too far off. The issues at Forgefed look like they stopped to halt around 9 months ago, at the time of writing this post.

I would not be surprised if some other, probably completely unrelated, parallel development was happening somewhere else, but I have just discovered this very concept, so maybe I will probably learn more as the time goes on. Hopefully it won't take too long.


This is a 54th post of #100daystooffload.