https://codeberg.org uses the https://gitea.io software for its free remote Git repository service. If you're uncomfortable with non-free software, open-core, commercial underpinnings and/or corporate ownership of Github and Gitlab, hosting your repos on Codeberg — or starting your own Gitea site — are very viable alternatives.
Thanks, this was very helpful! I was scanning the prose on the Codeberg website looking to see if Codeberg itself was open source, but all it said was that it was "free" and "non-profit."
Now I see that Gitea is the software (basically a clone of GitHub that is visually almost div-for-div, released with an MIT license, that you can host yourself), and Codeberg is central hosting (a "hub") running Gitea, operated as a non-profit.
I had developed the impression that gitea kept all the project metadata -- bug tracking, PRs, etc -- in the same repository with the project code. Was this impression correct? Looking at the "Comparison" page does not suggest anything, one way or the other.
To me that would be the most important differentiator. Do any of the others do it?
Wait, is that something you would want? I would find it pretty awful if my git history for my code had all the other things like issues and PR metadata in it. Could potentially see it being useful if it were stored in an "auxiliary" repo that I could pull separately.
Their half-translated UI (my browser is set to polish) is extremely off-putting.
So many people seem to think that providing low quality translations is improving accessibility. It isn't. It's doing the opposite, pure english websites provide much better UX to international users.
BTW, Microsoft with their automatically translated MSDN docs is by far the worst offender in this area.
That's the case because you speak English. Think about the last time you had to navigate a website in a language you didn't speak (in my case e.g. Chinese or Russian). I remember being very happy with a few (incomplete) clues in English about were to look and what to expect.
By all means, advocate for making it easy to change the language back to the original. But this stance will decrease accessibility.
In case of technical websites, you have to know English anyway, because even if there is a broken translation of the documentation, function names, enums and all the cool stuff remains in the original language anyway.
Especially when you never see the subject matter translated anyway, which would be the case with Git. There aren’t any conventional translations of words like “repo” or “pull request” in most languages, and when you try you risk making it incomprehensible, or comical.
For example, take their Swedish translation of “pull request”: “Pull-förfrågning”. They had to leave “pull” untranslated, probably because it would be impossible to understand if you actually were to translate it word by word; unfortunately “pulla” is a sexual slang word in Swedish [1], so the whole translation sounds like a request for sexual assistance.
Eh, "pulla" is not the correct Swedish translation for "pull". It would be "dra" or "rycka". There is a GitHub repository where bunch of Swedish developers have tried to translate the entire git vocabulary into Swedish, you can see it here: https://github.com/bjorne/git-pa-svenska
Table shows that "pull" is usually referred to as "pulla" but the suggestion is to change it to "rycka". If you do know Swedish, there is a discussion about the naming of "pull" here: https://github.com/bjorne/git-pa-svenska/issues/30
In Sweden, you can assume that pretty much everyone understands English, so if your website has an incomplete Swedish translation, might just be better to go with English one anyways.
But in Spain (outside the big cities), not that many people do understand English. In that case, it'll be better to serve a incomplete Spanish version instead of in English, as otherwise they'll be completely lost.
So as always, I'd say it really depends, and it's hard to generalize over all "international users".
> So many people seem to think that providing low quality translations is improving accessibility. It isn't. It's doing the opposite, pure english websites provide much better UX to international users.
Personally, I kind of like the balance of gogs/gitea on that subject.
You can switch language quite easily using the menu in the bottom center/right.
Also, in a self hosted context you can disable/enable languages in the configuration file easily.
Also, if you find the translation really bad (I think in most cases, the default translation is from MS automatic translation), you cam easily contribute to it:
I personally contributed to the French translation a few years ago, which was really bad in Gogs at the time, specially with some over translation of technical terms such as "git commit" which was translated to "git commission" (a bit weird and laughable since "faire une commission" can be a weird formal way to say "pooping" in some contexts).
I took me a few hours to go through a few of the message strings and propose an hopefully better translation. It's quite easy to contribute to the project in this manner, far easier than contributing code.
Lastly keep in mind that gogs was created by a Chinese developer, and I'm half expecting that Chinese developers are not as fluent in English as developers from India or Europe. In this context, pushing for an internationalized service is a good call vs an English only UI.
When the audience is programmers or generally tech people, not translating from English might indeed be the best option. The lingua franca of technology is English.
E.g. looking at the quality of Microsoft's German translations (which seem to be done by a poorly trained bot), the translation is actually counterproductive, because it's full of special terms translated into German that either would not be translated from English in a "native" German text, or where a different translation is commonly used.
My favourite is the Visual Studio translation for Link-Time Code-Generation. Which is translated as "Link-Zeitcode Generierung" which in English means "Link Timecode Generation".
How can you say that localization is a difficult problem that no one has solved yet. i18n is the case for as long as I’ve been writing software, and probably longer. So minimum 20 years.
I do agree that it’s not a walk in the park because it takes loads of resources to provide actual translations and one has to make i18n a feature in the code. But... come on. phpMyAdmin was doing this in 2004.
We are missing the trees for the forest here. I think that Codeberg is not communicating their core values the best way and my understanding is: to be an open source, ethical, safe home for open source projects under Non-Profit Collaboration Community. If your repo were ever (even temporarily) disabled by a false or intentionally bullying DMCA take down request, you would know right away why every single word in the above sentence is important. And, hosted in Europe, under EU laws.
See https://sourcehut.org/ for a vastly different source code hosting solution. If you're interested in something other than an open source GitHub clone, then that is more likely to interest you.
SourceHut is great, it still missing organizations support though (they promised to add it in a few months). The only problem compared to Gitea is deployment. SourceHut written in a mix of Python and Go, while Gitea in a pure Go. Gitea is essentially one binary. I wish SourceHut would dump Python and rewrite everything in Go.
"Everything is one binary", while convenient, just means "monolith", and usually "unscaleable monolith". That has nothing to do with Go. Plus, compiled-in filesystems and runtime-extracting applications are a thing, so anything can be a binary.
Sourcehut is specifically designed to be a composeable set of services, so regardless of language, it's never going to be one binary.
Imprints on websites are only required in a few countries. Frankly, I find it absurd that on the one hand, my contact details as a domain owner are being removed from WHOIS citing data protection, but on the other hand I am required by law to put the same information on the website I'm running on the domain.
Great question. Let me copy/paste explanation of one of the founders:
Collaboration platforms like SourceForge, GitHub, and GitLab enabled and facilitated the development and organization of free software projects.
But as developers of free software we fell into a trap – we poured invaluable source code, documentation and last not least a huge and steady stream of data about our personalities, interests and social networks into proprietary platforms.
These platforms are no charities, they operate to fulfill the commercial objectives of their founders and owners, outside of our control. They are valued and sold for billions of dollars.
Codeberg is trying to fix that. The nonprofit Codeberg e.V. has been founded as independent non-government organization to launch and build a free home for Free and Open Source Software.
Thumbs up for mentioning this, and thanks for your effort. I've always found it odd (to say the least) that F/OSS projects are happily giving away their dev's and user's eyeballs and clicks to commercial entities when many F/OSS projects advertise altruistic or other ethical motives and licenses. Using github.com (or any other project hosting service) for your project's home page also ruins the web and puts all the power in the hand of very few when regular DNS and web hosting has regulated rules where providers and registrars can be negotiated with, switched, appealed, etc. Not to mention that github.com blocks indie search crawlers, adding to the search monopoly we have.
So compared to gitlab and sourcehut (my other favorite options for free github alternatives), this is librejs complaint (sourcehut has this, don't think gitlab does), and has a github-like UI. It seems to be pushing the privacy angle and is hosted in the EU. Any other big reasons to prefer this over gitlab/sourcehut/self-hosted?
You didn't find it because you didn't look. Scroll to the bottom of the page and click on "Imprint". Quote:
"Codeberg is a non-profit organisation dedicated to build and maintain supporting infrastructure for the creation, collection, dissemination, and archiving of Free and Open Source Software. If you have questions, suggestions or comments, please do not hesitate to contact us at contact@codeberg.org."
It's a kind of club ("eingetragener Verein" [1]) that is funded by its members and through donations.
Your comment is very helpful, but starting it with "You didn't find it because you didn't look" is not very fair. Most native English speakers would not expect 'Imprint' to have that information.
I think a lot of people are probably unfamiliar with any definition of "imprint" that would cause them to look there. I know I can't explain what it means in this context.
FWIW I saw the Imprint link at the bottom, but I didn't know that's where I could find company info. However, there was a link to their mission statement in the middle of the page which includes the same info.
Still not very informative. No names, no funding info (who, how much, can I help?).
To me, not being able to divine the people behind the I iniative is a bit incongruous to being a community effort. Makes it feel like a company, not a club.
Does anyone else think Github now has a name recognition advantage? I am not a super ninja developer so I still have to make resumes, and in there I can just put github logo and a username there. Saves space and looks quite professional. I can't do that with newer services. Or am I just being over cautious here?
Edit: And its not just about resumes, its the case for getting traction for your project too. I feel comfortable contributing to a project hosted on github and am sort of weary of things hosted on other places.
Having a remote git repo monoculture where it has to be Github or nothing is unhealthy for the software ecosystem.
Gitlab is a good alternative, but why not have more choices? Anybody who might want to hire you can click a link to a Codeberg/Gitea site and see what looks like a very familiar repo. It should be the project itself that is attracting users and devs, not where the git repo is remotely hosted.
For free-software projects, a Gitea site like Codeberg might be an even better choice because of the conflicts involved in using a commercial entity like GitHub that uses closed-source software yet bases its entire business on a free project (Git).
Its mobile UI is broken all over on my system. But I am all in for getting inspired by exact Github UX/UI. They're the main reason I don't want to switch to alternatives even if I hate Github after MS-merger and following "improvements of the service".
Personally I most dislike forced deanonymization with 2fa or annoying me with device verification which locked me out of my anonymous account with old expired email (I didn't need it secured and I don't want to prove anything to MS to restore it too). Some people also reported increasing external CI services throttling in favor of Actions, I wouldn't be surprised if they give preferential treatment to Packages too.
In the end I don't want power of MS over my code and workflow to grow too much. I know they claim Github is independent but it's not really reassuring.
It is not clear if this is a free software project. Can it be installed locally? I see "open source" written here and there, but no link to the actual code (besides gitea).
Ok, so top comment (currently) is about localisation. A really interesting topic, but has anyone tried it out yet and have opinions on the functionality?
https://codeberg.org uses the https://gitea.io software for its free remote Git repository service. If you're uncomfortable with non-free software, open-core, commercial underpinnings and/or corporate ownership of Github and Gitlab, hosting your repos on Codeberg — or starting your own Gitea site — are very viable alternatives.
(Edited for typos)
Thanks, this was very helpful! I was scanning the prose on the Codeberg website looking to see if Codeberg itself was open source, but all it said was that it was "free" and "non-profit."
Now I see that Gitea is the software (basically a clone of GitHub that is visually almost div-for-div, released with an MIT license, that you can host yourself), and Codeberg is central hosting (a "hub") running Gitea, operated as a non-profit.
Gitea is a fork of gogs.
Gogs is still in development as well. If people are interested, definitely check that out as well.
1 reply →
I had developed the impression that gitea kept all the project metadata -- bug tracking, PRs, etc -- in the same repository with the project code. Was this impression correct? Looking at the "Comparison" page does not suggest anything, one way or the other.
To me that would be the most important differentiator. Do any of the others do it?
Wait, is that something you would want? I would find it pretty awful if my git history for my code had all the other things like issues and PR metadata in it. Could potentially see it being useful if it were stored in an "auxiliary" repo that I could pull separately.
5 replies →
It's not the case, the PRs, bug tracking and other metadata are stored inside an SQL database:
Here are the tables on my at home deployment:
Edit: delete a few lines in the list of tables, it was way too long for an HN post...
It's difficult to see how gitea is anything other than a copyright infringement of GitHub.
Compare:
- https://codeberg.org/n0mad/vulkan-tests
- https://try.gitea.io/egrteg/LibreLingo
- https://github.com/kantord/LibreLingo
What are they infringing on? Site layout? There are tons of Github alternatives that all follow similar layout and styles. Gitlab, Gogs, Bitbucket...
1 reply →
Please do yourself a favor and google "copyright".
1 reply →
Their half-translated UI (my browser is set to polish) is extremely off-putting.
So many people seem to think that providing low quality translations is improving accessibility. It isn't. It's doing the opposite, pure english websites provide much better UX to international users.
BTW, Microsoft with their automatically translated MSDN docs is by far the worst offender in this area.
That's the case because you speak English. Think about the last time you had to navigate a website in a language you didn't speak (in my case e.g. Chinese or Russian). I remember being very happy with a few (incomplete) clues in English about were to look and what to expect.
By all means, advocate for making it easy to change the language back to the original. But this stance will decrease accessibility.
In case of technical websites, you have to know English anyway, because even if there is a broken translation of the documentation, function names, enums and all the cool stuff remains in the original language anyway.
1 reply →
I would rather just use google translate to do it automatically on the entire page, and yes I do that quite regularly from German.
Especially when you never see the subject matter translated anyway, which would be the case with Git. There aren’t any conventional translations of words like “repo” or “pull request” in most languages, and when you try you risk making it incomprehensible, or comical.
For example, take their Swedish translation of “pull request”: “Pull-förfrågning”. They had to leave “pull” untranslated, probably because it would be impossible to understand if you actually were to translate it word by word; unfortunately “pulla” is a sexual slang word in Swedish [1], so the whole translation sounds like a request for sexual assistance.
1: https://en.wiktionary.org/wiki/pulla#Swedish
Eh, "pulla" is not the correct Swedish translation for "pull". It would be "dra" or "rycka". There is a GitHub repository where bunch of Swedish developers have tried to translate the entire git vocabulary into Swedish, you can see it here: https://github.com/bjorne/git-pa-svenska
Table shows that "pull" is usually referred to as "pulla" but the suggestion is to change it to "rycka". If you do know Swedish, there is a discussion about the naming of "pull" here: https://github.com/bjorne/git-pa-svenska/issues/30
I think it very much depends on the the country.
In Sweden, you can assume that pretty much everyone understands English, so if your website has an incomplete Swedish translation, might just be better to go with English one anyways.
But in Spain (outside the big cities), not that many people do understand English. In that case, it'll be better to serve a incomplete Spanish version instead of in English, as otherwise they'll be completely lost.
So as always, I'd say it really depends, and it's hard to generalize over all "international users".
I think the important question is about the target audience of this site: how many of each language's programmers know no English?
I'm a native English speaker, so I don't know.
3 replies →
> So many people seem to think that providing low quality translations is improving accessibility. It isn't. It's doing the opposite, pure english websites provide much better UX to international users.
Good to know
Personally, I kind of like the balance of gogs/gitea on that subject.
You can switch language quite easily using the menu in the bottom center/right.
Also, in a self hosted context you can disable/enable languages in the configuration file easily.
Also, if you find the translation really bad (I think in most cases, the default translation is from MS automatic translation), you cam easily contribute to it:
-> https://crowdin.com/project/gitea
I personally contributed to the French translation a few years ago, which was really bad in Gogs at the time, specially with some over translation of technical terms such as "git commit" which was translated to "git commission" (a bit weird and laughable since "faire une commission" can be a weird formal way to say "pooping" in some contexts).
I took me a few hours to go through a few of the message strings and propose an hopefully better translation. It's quite easy to contribute to the project in this manner, far easier than contributing code.
Lastly keep in mind that gogs was created by a Chinese developer, and I'm half expecting that Chinese developers are not as fluent in English as developers from India or Europe. In this context, pushing for an internationalized service is a good call vs an English only UI.
Localization is a difficult problem no one has solved yet. If you find a solution please write about it.
Not translating isn't really a solution.
Wanting everything to be 100% translated is also unrealistic.
When the audience is programmers or generally tech people, not translating from English might indeed be the best option. The lingua franca of technology is English.
E.g. looking at the quality of Microsoft's German translations (which seem to be done by a poorly trained bot), the translation is actually counterproductive, because it's full of special terms translated into German that either would not be translated from English in a "native" German text, or where a different translation is commonly used.
My favourite is the Visual Studio translation for Link-Time Code-Generation. Which is translated as "Link-Zeitcode Generierung" which in English means "Link Timecode Generation".
2 replies →
How can you say that localization is a difficult problem that no one has solved yet. i18n is the case for as long as I’ve been writing software, and probably longer. So minimum 20 years.
I do agree that it’s not a walk in the park because it takes loads of resources to provide actual translations and one has to make i18n a feature in the code. But... come on. phpMyAdmin was doing this in 2004.
2 replies →
So far I haven't had any issues, and I am an English-speaker.
We are missing the trees for the forest here. I think that Codeberg is not communicating their core values the best way and my understanding is: to be an open source, ethical, safe home for open source projects under Non-Profit Collaboration Community. If your repo were ever (even temporarily) disabled by a false or intentionally bullying DMCA take down request, you would know right away why every single word in the above sentence is important. And, hosted in Europe, under EU laws.
This is a nice summary: https://blog.codeberg.org/codebergorg-launched.html
Suggestions on how to make the messaging of Codebeberg clearer would be appreciated, Codeberg has an issue about this in their tracker: https://codeberg.org/Codeberg/Community/issues/75
Edit: added link to Codeberg issue tracker
> I think that Codeberg is not communicating their core values the best way and my understanding is: to be an open source (...)
But is it? Where can you find the code for codeberg itself? Is it possible to download it all and install it locally on an air-gapped server?
Codeberg is a customized version of gitea[0].
They have a repo[1] with the patches that are used on on codeberg.
[0]: https://gitea.io
[1]: https://codeberg.org/Codeberg/build-deploy-gitea
See https://sourcehut.org/ for a vastly different source code hosting solution. If you're interested in something other than an open source GitHub clone, then that is more likely to interest you.
SourceHut is great, it still missing organizations support though (they promised to add it in a few months). The only problem compared to Gitea is deployment. SourceHut written in a mix of Python and Go, while Gitea in a pure Go. Gitea is essentially one binary. I wish SourceHut would dump Python and rewrite everything in Go.
"Everything is one binary", while convenient, just means "monolith", and usually "unscaleable monolith". That has nothing to do with Go. Plus, compiled-in filesystems and runtime-extracting applications are a thing, so anything can be a binary.
Sourcehut is specifically designed to be a composeable set of services, so regardless of language, it's never going to be one binary.
2 replies →
> See https://sourcehut.org/ for a vastly different source code hosting solution
No imprint, no privacy statement, no deal.
Privacy policy: https://man.sr.ht/privacy.md
Imprints on websites are only required in a few countries. Frankly, I find it absurd that on the one hand, my contact details as a domain owner are being removed from WHOIS citing data protection, but on the other hand I am required by law to put the same information on the website I'm running on the domain.
3 replies →
Very interesting. Thanks for the link. I will definitely be looking at this.
Sourcehut is very, very different. I'd like to know how this is working for devs.
3 replies →
I am curious; what does this gitea clone provide over the hundreds of other clones I could be using that are also free and non-commerical?
Great question. Let me copy/paste explanation of one of the founders:
Collaboration platforms like SourceForge, GitHub, and GitLab enabled and facilitated the development and organization of free software projects. But as developers of free software we fell into a trap – we poured invaluable source code, documentation and last not least a huge and steady stream of data about our personalities, interests and social networks into proprietary platforms. These platforms are no charities, they operate to fulfill the commercial objectives of their founders and owners, outside of our control. They are valued and sold for billions of dollars. Codeberg is trying to fix that. The nonprofit Codeberg e.V. has been founded as independent non-government organization to launch and build a free home for Free and Open Source Software.
Also see this short SFSCon talk:
https://www.sfscon.it/talks/codeberg-a-free-home-for-free-pr...
Thumbs up for mentioning this, and thanks for your effort. I've always found it odd (to say the least) that F/OSS projects are happily giving away their dev's and user's eyeballs and clicks to commercial entities when many F/OSS projects advertise altruistic or other ethical motives and licenses. Using github.com (or any other project hosting service) for your project's home page also ruins the web and puts all the power in the hand of very few when regular DNS and web hosting has regulated rules where providers and registrars can be negotiated with, switched, appealed, etc. Not to mention that github.com blocks indie search crawlers, adding to the search monopoly we have.
Sorry for the late reply, but looks great. Especially with the voting system!
(side note: those slides are amazing lol)
https://docs.gitea.io/en-us/comparison/
I suppose it's the service, not software. Much like Github is first of all a service, a site.
So compared to gitlab and sourcehut (my other favorite options for free github alternatives), this is librejs complaint (sourcehut has this, don't think gitlab does), and has a github-like UI. It seems to be pushing the privacy angle and is hosted in the EU. Any other big reasons to prefer this over gitlab/sourcehut/self-hosted?
There is also OneDev: https://news.ycombinator.com/item?id=22081419
> this is librejs complaint
What does this mean/imply exactly?
It's a typo of "LibreJS compliant": https://en.wikipedia.org/wiki/GNU_LibreJS
I couldn't find any "about" page. Who owns it? Who are the people behind it?
Here's some info from their blog https://blog.codeberg.org/codebergorg-launched.html
https://codeberg.org/codeberg/org/src/branch/master/Imprint....
You didn't find it because you didn't look. Scroll to the bottom of the page and click on "Imprint". Quote:
"Codeberg is a non-profit organisation dedicated to build and maintain supporting infrastructure for the creation, collection, dissemination, and archiving of Free and Open Source Software. If you have questions, suggestions or comments, please do not hesitate to contact us at contact@codeberg.org."
It's a kind of club ("eingetragener Verein" [1]) that is funded by its members and through donations.
[1] https://en.wikipedia.org/wiki/Registered_association_(German...
Your comment is very helpful, but starting it with "You didn't find it because you didn't look" is not very fair. Most native English speakers would not expect 'Imprint' to have that information.
I think a lot of people are probably unfamiliar with any definition of "imprint" that would cause them to look there. I know I can't explain what it means in this context.
1 reply →
FWIW I saw the Imprint link at the bottom, but I didn't know that's where I could find company info. However, there was a link to their mission statement in the middle of the page which includes the same info.
Still not very informative. No names, no funding info (who, how much, can I help?).
To me, not being able to divine the people behind the I iniative is a bit incongruous to being a community effort. Makes it feel like a company, not a club.
1 reply →
repo.or.cz — one more free hosting alternative to GitHub, especially for FLOSS projects.[0]
[0] http://repo.or.cz/about.html
Finally an alternative go Github and Bitbucket hosted in Europe, great.
Does anyone else think Github now has a name recognition advantage? I am not a super ninja developer so I still have to make resumes, and in there I can just put github logo and a username there. Saves space and looks quite professional. I can't do that with newer services. Or am I just being over cautious here?
Edit: And its not just about resumes, its the case for getting traction for your project too. I feel comfortable contributing to a project hosted on github and am sort of weary of things hosted on other places.
Having a remote git repo monoculture where it has to be Github or nothing is unhealthy for the software ecosystem.
Gitlab is a good alternative, but why not have more choices? Anybody who might want to hire you can click a link to a Codeberg/Gitea site and see what looks like a very familiar repo. It should be the project itself that is attracting users and devs, not where the git repo is remotely hosted.
For free-software projects, a Gitea site like Codeberg might be an even better choice because of the conflicts involved in using a commercial entity like GitHub that uses closed-source software yet bases its entire business on a free project (Git).
Its mobile UI is broken all over on my system. But I am all in for getting inspired by exact Github UX/UI. They're the main reason I don't want to switch to alternatives even if I hate Github after MS-merger and following "improvements of the service".
What changes made after the MS acquisition do you dislike?
Personally I most dislike forced deanonymization with 2fa or annoying me with device verification which locked me out of my anonymous account with old expired email (I didn't need it secured and I don't want to prove anything to MS to restore it too). Some people also reported increasing external CI services throttling in favor of Actions, I wouldn't be surprised if they give preferential treatment to Packages too. In the end I don't want power of MS over my code and workflow to grow too much. I know they claim Github is independent but it's not really reassuring.
3 replies →
It is not clear if this is a free software project. Can it be installed locally? I see "open source" written here and there, but no link to the actual code (besides gitea).
Yes it is, see here: https://codeberg.org/Codeberg/build-deploy-gitea
Gitea can run locally.
Ok, so top comment (currently) is about localisation. A really interesting topic, but has anyone tried it out yet and have opinions on the functionality?
Yes, I'm actively using Codeberg for my OSS projects (I still have some on GitHub, too), e.g. https://codeberg.org/hjacobs/kube-web-view/
Some functionality is lacking compared to GitHub, but it does what it needs to do for me.
Väry swenglish.