← Back to context

Comment by noirscape

8 hours ago

I don't dislike Codeberg inherently, but it's not a "true" GitHub replacement. It can handle a good chunk of GitHub repositories (namely those for well established FOSS projects looking to have everything a proper capital P project has), but if you're just looking for a generic place to put your code projects that aren't necessarily intended for public release and support (ie. random automation scripts, scraps of concepts that never really got off the ground, things not super cleaned up), they're not really for that - private repositories are discouraged according to their FAQ and are very limited (up to 100mb).

They also don't want to host your homepage, so if GitHub Pages is why you used GitHub, they are not a replacement.

Unfortunately I don't think there's really an answer to that conundrum that doesn't involve just spinning up your own git server and accepting all the operational overhead that comes with it. At least Forgejo (software behind Codeberg) is FOSS, so you can do that and it should cover most of what you need (and while you're in the realm of having a server, a Pages-esque replacement is trivial since you're configuring a webserver anyway.) Maybe Gitlab.com, although I am admittedly unfamiliar with how Gitlab's "main" instance has changed over the years wrt features.

Here's their FAQ on the matter, it's worth a read: https://docs.codeberg.org/getting-started/faq/

> They also don't want to host your homepage, so if GitHub Pages is why you used GitHub, they are not a replacement.

https://docs.codeberg.org/codeberg-pages/

  • From their FAQ:

    > If you do not contribute to free/libre software (or if it is limited to your personal homepage), and we feel like you only abuse Codeberg for storing your commercial projects or media backups, we might get unhappy about that.

    Emphasis mine. This isn't about if it's technically possible (it certainly is), it's whether or not it's allowed by their platform policies.

    Their page publishing feature seems more like it's meant for projects and organizations rather than individual people. The way it's described here indicates that using them to host your own blog/portfolio/what have you is considered to be abusing their services.

    • Seems fair to me, they're a nonprofit that exists in our lived reality and not an abusive monopolist that can literally throw a billion dollars to subsidize loss leaders.

      All it shows the world is why there needs to be a VAT like tax against US digital services to help drive a public option for developers.

      There's no reason why the people can't make our own solutions rather than be confined to abusive private US tech platforms.

      2 replies →

    • Reading what you quoted, no it is not, as long as you contribute to free software or you have projects that are open source. Not just your personal homepage. If you only have a personal homepage and nothing else that is open source, then they have a problem.

      My 2 cents.

      10 replies →

    • That FAQ snippet is insane to me. Maybe it's a cultural thing but I'd never do business with a company that has implicit threats in their ToS based on something so completely arbitrary.

      3 replies →

> Moving from GitHub to Codeberg, for lazy people

Step 1.) Stay on GitHub

I think the internet has "GitHub Derangement Syndrome" right now. It's an outlet for people's frustration.

The current trend reminds me a lot of the couple years we had where Game Developers were that outlet. They needed to "Wake up" and not "Go woke, go broke". An incredible amount of online discourse around gaming was hijacked by toxic negativity.

I'm sure every individual has their really good logical reasons, but zooming out I think there is definitely a similar social pathology at play.

(Shameless plug)

Hey, I’m building Monohub - as a GitHub alternative, and having private repositories is perhaps a key feature - it started as a place for me to host my own random stuff. Monohub [dot] dev is the URL. It’s quite early in development, so it’s quite rough around the edges. It has PR support though.

Hosted in EU, incorporated in EU.

Would be happy if you tried it out — maybe it’s something for you.

Edit: you can have a look at a public repository I have to see what it looks like now: https://monohub.dev/@tbayramov/efcore-audit-timestamps

FWIW, Pierre's "Code Storage" project [1] seems like it simplifies a lot of the operational overhead of running git servers, if what you want is "an API for git push". Not affiliated with the company (and I haven't tried it myself, so I can't vouch for how well it works), I just think it's a neat idea.

1: https://code.storage/

  • I think "Code Storage" (definitely needs a unique name), is less an API for git push (surely git push is that API?), and more an API for "git init"? It seems to be Git as infrastructure, rather than Git as a product. i.e. if you're using it for a single repo it's probably not a good fit, it's for products that themselves provide git repos.

Unfortunately I don't think there's really an answer to that conundrum that doesn't involve just spinning up your own git server and accepting all the operational overhead that comes with it.

Hmm all that operational overhead... Of an ssh server? If you literally just want a place to push some code, then that really isn't that hard.

  • Lots and lots of programmers have very little understanding and especially operation knowledge of how to host a public service. You can be an extreme graphics programmer and not know the web stack at all.

    And no, its not that hard once you learn. Except, now its a never ending chore when it was an appliance. Instead of a car you have a project car.

    • > Lots and lots of programmers have very little understanding and especially operation knowledge of how to host a public service. You can be an extreme graphics programmer and not know the web stack at all.

      Can confirm.

      Also, not everyone who wants to share content publicly has a domain name with which to do so, or the kind of Internet connection that allows running a server. If you include "hosting" by using a hosting provider... it's perfectly possible (raises hand) to not even have any experience with that after decades of writing code and being on the Internet. (Unless you count things like, well, GitHub and its services, anyway.)

  • In case anybody is interested, having a bare git repo on a server is as easy as:

        # locally
        ssh git@example.com
        
        # server
        mkdir repo.git  
        cd repo.git  
        git --bare init
        
        # locally
        git remote add origin ssh://git@example.com/home/git/repo.git  
        git push origin master
    
    

    P.S. I know it does not have the same features as github

    • If it's your ssh server and it's single user you don't need to use the "git@" part at all.

      Just store the repo and access it with your account.

      The whole git@ thing is because most "forge" software is built around a single dedicated user doing everything, rather than taking advantage of the OS users, permissions and acl system.

      For a single user it's pointless. For anyone who knows how to setup filesystem permissions it's not necessary.

      2 replies →

  • But they don't literally just want a place to push some code. The problem statement included "if GitHub Pages is why you used GitHub".

    • And before that it said...

      but if you're just looking for a generic place to put your code projects that aren't necessarily intended for public release and support (ie. random automation scripts, scraps of concepts that never really got off the ground, things not super cleaned up), they're not really for that - private repositories are discouraged according to their FAQ and are very limited (up to 100mb).

      You don't need a one size fits all solution...

  • > ...that really isn't that hard.

    Until the AI scrapers[1] come for you at 5k requests per second and you're doing operations in hard-mode.

    1. Most forges have http pages for discoverability. I suppose one could hypothetically setup an ssh-only forge and statically generate a html site periodically, but this is already advanced ops for the average Github user

    • I wasn't proposing a full on forge, just a VM with a (key auth only) ssh server to push code to/from.

To me that sounds like Github does too many things, not that Codeberg does too few.

  • Indeed. A code repository alternative should definitely not require an equivalent to Github Pages.

  • To me, and devs at large (given their market share), that sounds like convenience.

I love Gitea and self-hosting it has been effortless, even through upgrades.

GitLab is probably a better option for that.

  • Yeah, but ooh boy is a private gitlab server complicated. Omnibus installation helps manage that, but if you outgrow it you're in for a complicated time.

    Also gitlab has cves like every other week... You're going to be on that upgrade train, unless you keep access locked down (no internet access!!) and accept the admittedly lower risk of a vulnerable gitlab server on your LAN/VPN network.

    Even if gitlab is updated fully, you're fighting bot crawlers 24/7.