I think one nice thing if Fedora used forgejo vs Gitlab is that forgejo is working on being able to participate in federation of forges. This could allow folks to use their accounts from other forges that are federated to create issues, PRs, etc vs having to make a gitlab account.
Pagure had federation, but no one used it. I do not think federation is going to be production ready any time soon. It has been worked on since 2018 (date of the 1st draft proposal for some protocol), and there is nothing ready yet besides Vervis. Given the history behind the forgejo project, I have strong doubts it will be implemented in a production ready soon.
On top of that, if we want the federation to be useful, it should at least federate with the rest of the world (eg, github, and/or gitlab.com), and so once that’s done, there would be no specific advantage to using the lesser known forge for that.
As for Forgejo itself, I will just link to what I said on LWN. Council members can also ask privately to @jflory7 about the more substantial and private feedback I gave him 2 months ago when he asked for it to my team.
I don’t particularly care about federation, so whether that will happen in the future or not is not really interesting to me.
What is interesting to me is UX. And GitLab’s UX sucks (subjectively, of course - you can probably Stockholm-Syndrome or Sunk-Cost-Fallacy yourself into “liking” it, but that’s not happened to me - yet).
There’s layers and layers of ever-changing menus and side bars, making it hard to find how to do common tasks like 1) opening a new issue or 2) creating a merge request. Apparently even links to “Issues” and “Merge Requests” are hidden two clicks away somewhere behind a non-obvious sidebar menu item if they’re not pinned to the sidebar manually.
I have always preferred the “cleaner” / “more obvious” UI of GitHub, pagure, and forgejo.
(The fact that GitLab’s “open core” business model is questionable is another thing entirely.)
In the case of forgejo, we will be opting to use codeberg.org for the hosting?
No — I talked to some people at the Codeberg desk at FOSDEM[1] and they did not think they had the capacity to handle such a large project.
don’t have misc’s nose for detecting underlying drama, I guess ↩︎
If anyone is interested, here is the full link: Forgejo makes a full break from Gitea [LWN.net]
I’m not particularly concerned one way or another about federation either as @decathorpe mentioned.
If codeberg is using foregjo, that would seem to indicate to me it is functional. Personally, I ignore the drama and look at the facts.
I second this. I tried migrating to Gitlab when Microsoft bought GitHub, but the UX is terrible. I also don’t like the fact that javascript is required to do literally everything. I would expect that at least some basic functionally works.
If Fedora is going to selfhost, I think we should also take resource usage into account. Gitlab is written in Ruby and needs a lot of resources to run.
Gitea/Forgejo in contrast is very lightweight, and has a clean, easy to use UI.
Is there a specific reason we don’t want to use Gitea? I think Forgejo would be the better option, but if there are too many votes against it, due to the drama, could Gitea be considered?
The only drama I knew about was that Gitea did some “shady” things, like moving ownership of the domain name and trademark into a for-profit org. I was not aware that there was a drama about forgejo too … but oh well.
I mean, if there are strong reasons to prefer GitLab over Forgejo (I suspect that GitLab as a project is more sustainable than Forgejo, for example), I guess I would be able to make it work for me ~somehow~ - especially because the Fedora packaging workflow is mostly CLI-based for most things anyway.
And if we need to move bug tracker from bugzilla to something else, GitLab and Forgejo would probably both work fine for this … though doing some quick testing, the Forgejo web UI is much snappier than GitLab.
Perhaps with some irony… I think this will get a little better without the “Ultimate” edition, because there are fewer features and options to cram in there.
And we could probably tailor defaults to be more in line with what we think is sensible (like making those common things more obvious).
For those who are interested I found a good video that summarized the situation between Gitea and Forgejo: https://www.youtube.com/watch?v=Oc3cEfhpp08
IMHO, unless Codeberg goes under (which appears unlikely), I wouldn’t worry too much about the long term stability of Forgejo. Perhaps I’m wrong, but I believe Codeberg has a good reputation. Seems it ticks off all the boxes.
I would hope the decision will be made on the technical merits and how the solution fits into Fedora’s strategy and goals.
What would need to be added to Forgejo to be able to replace src.fedoraproject.org? What do we need customized?
Forgejo is not perfect. But GitLab is an Open Core product / cripppleware that will keep getting worse (similar to all other forges are dominated by a for-profit company). Switching to GitLab means engaging, durably, into this trap.
There are other forges that look like Forgejo in the sense that they are community based and developed in the interest of the general public. But they either lack usability (radicle for instance is improving a lot but I do not think it is really usable yet) or momentum (that is, I believe, the problem pagure has).
As someone working on improving and packaging Forgejo daily, I think the question is not so much about debating the merits of GitLab vs forgejo. It is more about engaging on a road that, despite its many flaws, is the only one that has any chance of success in the long run.
If the Fedora community uses Forgejo and participates in making it durable, it will stand a much better chance to succeed. It is usable but it is not an off-the-shelf product with a polished UX, it is a tool that needs momentum and participation.
P.S. I am highly motivated by federation and data portability because they are a requirement for any online service. It will come to Forgejo eventually, but that’s a different matter.
I may have missed something here. But what about pagure vs. forgejo? Currently pagure is used, it is minimal but seems to work well?
I second forgejo though, it is really good software. And Gitea seems to have some real issues in governance, like hosting their stuff on Github even after a 7 years old issue and every task being finished.
I think all eggs should be in the same basket as some of them like silverblue and other projects some in gitlab some in github is a issue.
Would running your own GitLab instance avoid those concerns? If I understand right GNOME does.
I never heard of Forgejo or Gitea prior to this thread.
The problem of Open Core is not solved by self-hosting I’m afraid. But that’s a different discussion.
The choice is yours and it is not an easy one. Engage on a path that is guaranteed to entrap you, by design (Open Core). Or engage on a path that is uncertain because it tries really hard to become durable where other have failed in the past decades.
I read a bit more into forgejo and like what they mention! I never heard the term Open Core before but the Wikipedia page summed it up nicely, and I don’t like that model as it feels inherently deceptive (offering a free limited version to entice and charging for the useful stuff for the entrapment). I don’t exactly know GitLab pricing or features list, but if there’s a more FOSS, high-quality self-hostable alternative, why not use it?
I don’t know of past drama or corporate decisions for Fedora, but I’d totally self-host a forgejo instance over GitLab now! Hearing the points about federation and using other accounts sounds convenient too.
Even prior to hearing about forgejo, I probably wouldn’t have bothered with GitLab after hearing it uses Ruby. I only messed with that once with Mastodon, but Friendica fits nicer with my LEMP stack
Gitlab also uses way more resources than Forgejo.
But another side: what is the history of Pagure and why not use it?
I only ever saw it in Fedora, and found it really interesting. It does all the stuff I need too.
The problem with Pagure is it has really few developers. It arose as a RH/Fedora project and never spread out of the community.
Forgejo seems to have the same philosophy and being under a no-profit organization looks like really similar to the LibreOffice history after its fork from OpenOffice. It has a wider base of developers, my only concern is that is written in Go… Fedora has a lot of Python developers and nearly all other tools are written in Python. I don’t know how many users have the skills to extend the needed functionalities for forgejo…