Forgejo makes a full break from Gitea
The world of open-source "forges" is becoming a little more fragmented. The Forgejo project is a software-development platform that started as a "soft
" fork of Gitea in late 2022. On February 16, Forgejo announced its intent to become a "hard fork
" of Gitea to continue its stated objectives of community-controlled development and to "liberate software development from the shackles of proprietary tools
". In a world where proprietary tools cast a long shadow over open-source development those are welcome words—if the project can deliver.
Gitea was (and is) a popular open-source Git hosting and collaboration platform. Gitea itself is a fork of Gogs that started in December 2016 due to frustration with the "single-maintainer management model of Gogs
" and opted for a "more open and faster development model
". Originally the project's governance, spelled out in an earlier version of its CONTRIBUTING.md file, specified the project would have three "owners" responsible for keeping development "healthy
". The actual responsibilities and rights of the owners were vague, but they were to be elected yearly by Gitea's maintainers "who decide with a simple voting model which contributions get accepted and who will play the owner role
".
That community of maintainers did not get a vote when Gitea's domain and trademarks were quietly transferred by two of Gitea's "owners" (Lunny Xiao and Matti Ranta) to a for-profit business called Gitea Ltd. The announcement said this was to meet the goal of "ensuring the long term success of the project
" by allowing companies "unable to contribute back to open source via sponsorship or code contribution
" to support Gitea in the form of paying Gitea Ltd directly. In addition, the company would "act as a steward
" of the project, which would "of course remain open source, and a community project
". To date, the company seems to have remained good to its word about Gitea itself remaining open source. It has launched a hosted cloud offering with features not available in the self-hosted version, but the self-hosted version of Gitea otherwise remains open-source. The "enhanced
" enterprise version hinted at in the announcement, which one would expect to be open-core, has yet to appear.
Unsurprisingly, members of the Gitea community objected. They published an open letter on October 25, 2022 (with running updates afterward above the letter) and asked Gitea owners to, instead, form a non-profit that would hold the domain and trademarks. Once it was made clear that would not happen, the community announced it would create a soft fork of Gitea to "keep the Gitea community united
". The Forgejo project was announced on December 15, 2022 under the auspices of Codeberg e.V., a non-profit based in Berlin, Germany that provides the Codeberg collaboration platform.
The name Forgejo, for those who wonder, is taken from the Esperanto word for forge, forĝejo. Having learned from earlier mistakes, the community arranged for the Forgejo domains to be held by Codeberg e.V., and the project has a detailed set of documents about various aspects of project governance, such as decision-making, branding, merging pull requests, its mission, teams, and how money is handled. While Gitea still uses GitHub for development, Forgejo has been developed on the Codeberg platform and is now the underlying software for Codeberg.
Why now?
Since its launch in December 2022, Forgejo has followed Gitea development as a set of commits on top of the Gitea development branch—doing work in feature branches and rebasing on top of Gitea periodically. In early January, Forgejo contributor Earl Warren started a discussion to change Forgejo's development workflow and "become independent and cherry-pick from the Gitea codebase until the divergences are too great and that becomes impossible
". Warren argued that the existing workflow no longer made sense because Gitea "merges very large untested code (feature or refactor) that have been the cause of major regressions with high impact on users
". He also argued that a simpler workflow would improve stability and make it easier for contributors with a single development branch versus multiple feature branches. Warren also claimed that Gitea had "turned Open Core
" and took issue with its "security behavior
" without elaborating.
Following the discussion, Warren put forward a proposal on January 14 to change Forgejo's workflow after its next major release or March 1, "whichever comes first
". In that proposal he also argued that Forgejo has the funding, resources, and governance to operate independently, and that the change "would not hinder a cooperation that does not exist
". While Forgejo had consumed Gitea's work, Warren wrote that Gitea contributors "never cherry-picked a commit from Forgejo
". Warren, at least, has submitted a number of contributions to Gitea based on work from Forgejo.
What does it mean, exactly, to be a hard fork rather than a soft fork? In its February 16 announcement, the Forgejo project explained that being a soft fork meant Forgejo contains "all of Gitea, both good and bad
", so users could move from Gitea to Forgejo as a drop-in replacement. Those days are not over, yet, but the end is in sight. Users planning to move from Gitea to Forgejo should do so "sooner rather than later
" because "eventually, Forgejo will stop being a drop-in replacement
". Forgejo does intend to remain compatible with the Gitea API, at least as it exists today. The announcement says that any changes to the API will be evaluated carefully, and that Forgejo will try to remain compatible with Gitea—though contributors may use their own judgment whether or not to implement new APIs. The announcement noted that parts of Forgejo have already diverged, such as documentation, localization, and the Forgejo Actions continuous-integration system.
What now?
Gitea Ltd hasn't addressed Forgejo's announcement directly. It did, however, put out a blog post (just ahead of the Forgejo "hard fork" announcement that was planned in the open) on February 14 for the Free Software Foundation Europe (FSFE)'s "I Love Free Software Day". That post noted several organizations "using Gitea to build Free or otherwise Open Source software
", including FSFE, the Blender Foundation, openSUSE, and others.
Both projects seem to have enough momentum to carry forward, though it's fair to speculate whether there's enough interest by users, contributors, and customers to sustain both indefinitely. Gogs, for example, doesn't appear to have thrived since the Gitea fork. The Gogs repository on GitHub shows recent activity, but Gogs's last release was on February 25, 2023—almost a year ago as of this writing. The demo linked from its homepage errors out, and the newsletter link on the homepage leads to a 404 instead of current news about the project.
Given Forgejo's backing (and use) by Codeberg e.V., it seems likely to remain viable over the long haul. Codeberg, as a platform, has attracted a respectable following with more than 117,000 projects and 95,000 users. Respectable, but a tiny sample compared to GitHub's millions of projects and users. Unless there's a mass exodus from Gitea to Forgejo, it also seems that Gitea will continue at about the same pace. Gitea boasted that it had hit 40,000 stars on GitHub in January of this year, a metric that it claimed is demonstrative of Gitea's "significance in empowering developers worldwide
" as well as "the trust and confidence the global developer community places in Gitea
". There's more than a touch of irony in citing success on a platform you ostensibly seek to replace.
In theory, sites using the ForgeFed protocol could help displace proprietary alternatives by making it easier to collaborate between software forges. If it's ever actually implemented, that is. The ForgeFed protocol is an ActivityPub extension for allowing software forges to interact without users needing to create accounts on every forge. In a post about federation from early 2023, the Forgejo project paints a lovely picture of an open ecosystem that challenges GitHub:
[GitHub is] a textbook example of a walled garden. We want to create something similar [to GitHub], but in an open ecosystem where everything speaks the ForgeFed protocol, so you're never locked-in by which forge or code collaboration software that you use.
In practice, federation is probably years away from implementation or adoption. The post suggested that federation was likely to be included in the 1.19 release, and claimed that Forgejo intended to contribute federation upstream to Gitea. However, federation did not appear in 1.19 and the issue tracking federation implementation in Forgejo indicates much left to be done. The ForgeFed site lists only one project, called Vervis, with a working implementation, but that project does not seem ready for real-world usage just yet.
Gitea and Forgejo are trying to solve the same problem—providing a self-hosted open-source software development platform that can provide all the features developers need and want. Gitea has opted to abandon real community governance to try to sustain development by offering commercial support, with a willingness to work on top of proprietary platforms and entertain non-open offerings. Forgejo has opted for the other road, rejecting proprietary tools and trying to establish a community-led, non-profit approach to sustaining itself.
Both paths have many challenges and obstacles. Gitea and Forgejo are likely to be competing for the same users, contributors, and mind share. It will be interesting to look back in a year or three and see how successful they've been, and how much impact they've had in moving open-source developers away from proprietary platforms.
Posted Feb 23, 2024 19:44 UTC (Fri)
by ceplm (subscriber, #41334)
[Link] (3 responses)
> SourceHut is already federated via email. We have no intention of adding ActivityPub support at this time.
Posted Feb 23, 2024 20:38 UTC (Fri)
by intelfx (subscriber, #130118)
[Link]
I'd rather call his statement disingenuous than pragmatic.
Posted Feb 24, 2024 7:27 UTC (Sat)
by flussence (guest, #85566)
[Link] (1 responses)
It would also be a good trial run before the nuclear sledgehammer that is ActivityPub, which I imagine will unleash a spam nightmare the day it's turned on.
Posted Feb 24, 2024 7:36 UTC (Sat)
by ceplm (subscriber, #41334)
[Link]
Posted Feb 23, 2024 20:22 UTC (Fri)
by epa (subscriber, #39769)
[Link] (2 responses)
Posted Feb 23, 2024 22:19 UTC (Fri)
by vhns (guest, #138460)
[Link] (1 responses)
the author also mentions the irony of gitlab hosting its code in github
Posted Feb 23, 2024 22:57 UTC (Fri)
by ceplm (subscriber, #41334)
[Link]
Posted Feb 23, 2024 22:54 UTC (Fri)
by dskoll (subscriber, #1630)
[Link] (1 responses)
I switched from Gitea to Forgejo shortly after the original fork. It was seamless at the time, and I guess I have a bit more confidence in Forgejo's future than Gitea's.
Posted Feb 26, 2024 10:34 UTC (Mon)
by misc (subscriber, #73730)
[Link]
I also have a rather strange feeling around some accounts coming out of nowhere on Github just to work on his PRs only, given he has a reputation for shady stuff (after discussing with a few french folks over the years to see if it was me being too paranoid or not).
We worked in the same coworking space around 2021/2022 while his focus was fedeproxy ( https://lab.forgefriends.org/fedeproxy/fedeproxy ). I wasn't working on that, I just happened to be there, and the project looked weird right from the start as it was built on the idea that people would donate PAT for the Github interop ( that's the initial goal: https://forgefriends.org/blog/2021/01/16/what-is-fedeproxy/ ). I mentioned this was likely a T&S violation, and that it would result in a mess due to lack of user impersonation, but it took 6 months before this part was dropped (6 months while the project was being financed full time thanks to a EU grant ).
In the mean time, I was also surprised to see them importing bookwyrm code, as bookwyrm was and still is non free ( https://lab.forgefriends.org/fedeproxy/fedeproxy/-/merge_... ). Errors happens, but I kinda expected more from a free software veteran that refused to use github because that was non free.
And now I recall that time, during one of our first discussion on the topic of community growth and best practices, he mentioned that in the past, some people tried to weaponize CoC against him (and started rumors ). In theory, that's something that could happen, but in practice, that's kinda a red flag, especially when mentioned quasi unprompted to a guy that you barely know (but I know my face make people tell their life, so I wasn't that surprised in practice ).
And when I look what was achieved on the forgejo side, I also do not see much progress, most of the time was spent rebasing while gitea folks were doing the work. Federation is being worked on since more than 3 years now, and more if you count the numerous previous projects ( like forgefed was created in 2018: https://github.com/forgefed/forgefed/issues/5 ). There is still not much to show. The only substantial code was written by a PhD student at the MIT (student that wrote that independently of the 3 or 4 different standards projects ). People do not even have mockup of what the UX would look like, or the type of workflow that are worked on. This is not surprising, since federation is becoming a empty signifier. It give fuzzy feeling of freedom of movement, self hosting, etc. But in practice, that's unclear what would happen.
If you look at the roadmap in June 2022 ( https://forgefriends.org/blog/2022/06/30/2022-06-state-fo... ), you can see that nothing happened, or is bound to happen by June 2024 (eg, in 3 months ). Sure, forking take time, but not that much time before getting at least 1 project out of the door.
Posted Feb 24, 2024 16:14 UTC (Sat)
by kleptog (subscriber, #1183)
[Link] (4 responses)
It's common here to set-up a non-profit, which has various tax-exemptions, and a wholly-owned company underneath it to handle the actual work. This is because it can be difficult for non-profits to enter certain types of financial transactions precisely because the ownership is so fuzzy.
It seems actually to be a discussion about how the projects are run, wrapped up in discussion about legal entities to make it more confusing. And it certainly seems like the creation of the company precipitated discussions about how the project was actually run.
Posted Feb 24, 2024 19:03 UTC (Sat)
by smurf (subscriber, #17840)
[Link] (3 responses)
Not in Germany. "Tax deductible donations" and "severely constrained in how and for what funds are spent" are pretty much the same thing here.
And that's the point. You can set up a nice ostensibly-not-for-profit corporation that "owns" your code base all you want, but that basically means that its owners are hopefully-B-DFLs and can spend the income any way they personally want. Even setting up such a structure without a community discussion, let alone consensus, is enough of a red flag to me to decide not to contribute.
On the other hand, a nonprofit association isn't owned by anybody; it must spend its monies for the common good as defined by its bylaws (defined as the latest version that's been reviewed and OK'd by the tax authorities), otherwise the people elected to administer it are going to have some ugly legal problems.
Posted Feb 26, 2024 14:15 UTC (Mon)
by paulj (subscriber, #341)
[Link] (2 responses)
Now I think that corporate entities that are setup to further the interests of a Free Software project absolutely must not be charities/public-benefit. They should be trade-organisations or non-profit corporates (i.e., non-profit simply by articles of incorporation - but *not* with any special tax status).
This is because the interests of the software are bound too much with the interests of the programmers working on it. There is no way to disentangle them. If you have a corporate setup to pay programmers to work on software, it should /not/ have special tax exemptions. It's just intrinsic abuse if it has such exemptions. It should rather be setup to just not make a profit, at most.
Posted Feb 27, 2024 18:32 UTC (Tue)
by marcH (subscriber, #57642)
[Link] (1 responses)
Potentially interesting but falling too short.
Also, a single experience can always make a good story but is it really representative? Structures matter but IMHO leaders and personalities matter much more.
Posted Feb 28, 2024 10:33 UTC (Wed)
by paulj (subscriber, #341)
[Link]
In the US, the 501.3c status is just too easy to get, and there is insufficient monitoring of it to prevent abuse. That is my experience. Charity status in the likes of the UK and Ireland is harder to acquire - I hope it is better monitored - so I think we see fewer charitable organisations for Free Software.
Posted Feb 27, 2024 18:50 UTC (Tue)
by marcH (subscriber, #57642)
[Link] (4 responses)
So I bet Gitlab is far from perfect but I don't see how any of these projects could beat it right now. For alternatives to succeed, Oracle would have to buy Gitlab and kill it as they usually do. Conversely, if Gitlab management is smart enough then they will always keep their "open-core" big enough not to scare away most users and customers. Then projects like sourcehut, Forgejo and others will stay "fringe": used only by people who care more about software "freedom" than getting their job done. That is: a very small and very opiniated minority who loves... forking and fragmentation.
Posted Feb 28, 2024 8:47 UTC (Wed)
by vasvir (subscriber, #92389)
[Link]
For example: Small company with 3-5 developers.
I had to move from trac and subversion so I spent sometime for the transition.
I installed gitlab but it looked to me so heavy that was pointless.
I installed gitea and was like a fresh breeze of air. I managed to figure our the schema and help trac2gitea to move my bugs.
Maybe gitea misses a ton of things that github/gitlab already have. I don't know. I can't tell.
All I know is that it works for me and my limited resources. Maybe a bigger team will hit its limits.
Posted Feb 28, 2024 14:07 UTC (Wed)
by brunowolff (guest, #71160)
[Link] (2 responses)
Posted Feb 28, 2024 16:47 UTC (Wed)
by marcH (subscriber, #57642)
[Link] (1 responses)
Well yes of course "open-core" is more risky in the long term than a truly neutral project. But it's less risky than closed source like GitHub. There's a whole spectrum of long term risks but long term is often "another CEO's problem". To get products to the market today, users need a solution that works today and that requires a tested and supported product. Because marginal costs are so small, software is where economies of scale have the strongest effect, that's why we have so many monopolies - both closed and open source.
Posted Feb 28, 2024 21:45 UTC (Wed)
by Wol (subscriber, #4433)
[Link]
I shall be using Scarlet, but my employer would rather pay for OpenQM ... oh well ...
Cheers,
Posted Feb 28, 2024 14:35 UTC (Wed)
by SLi (subscriber, #53131)
[Link] (1 responses)
https://codeberg.org/forgejo/governance/issues/58
It seems to me there's a lot of "this comment was removed for being off topic", "moderation discussions are off topic", "that comment was removed because the user is banned", and what feels like a decent amount of vitriol.
It seems like an ostensibly very democratic approach. I'm not sure such a software project can function if it's democratic instead of being more do-ocratic. But I wish them good luck nevertheless.
Posted Apr 7, 2024 19:13 UTC (Sun)
by mattdm (subscriber, #18)
[Link]
It looks like they're trying to use the issue tracker for a formal decision-making process (described at the top of the first issue you link) and to route other discussion to a linked forum topic (or possibly several). It's frustrating when tons of people come in and ignore that process, and then even double-down by posting that they don't like that posts not following what was asked are removed.
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Not eating your gogfood?
The Gogs repository on GitHub
Er, sorry, what? Gogs doesn't even host itself?
Not eating your gogfood?
Not eating your gogfood?
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
> [...]
> This is because the interests of the software are bound too much with the interests of the programmers working on it. There is no way to disentangle them.
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
You should also be scared of companies that weaponize licences, like what used to happen with mysql.
Forgejo makes a full break from Gitea
Forgejo makes a full break from Gitea
Wol
Forgejo makes a full break from Gitea
https://codeberg.org/forgejo/discussions/issues/112
https://codeberg.org/forgejo/governance/issues/16
Forgejo makes a full break from Gitea