So, where do the cool kids host their code these days? I went to GitLab and saw “Finally, AI for the entire software lifecycle” – ok, I guess this means no GitLab for me. Codeberg then? Or something else?

Note: no, I’m not self-hosting. Yes, I know how to do it, I’ve been doing it for a decade. But I still won’t.

#Github #GithubCopilot #GitLab

Ok, the people have spoken. I’ll be looking into migrating my repos to Codeberg. I plan to remove all repositories on Github and to create archived placeholders in their place linking to the new location (I don’t want to leave any repository history there).

All is done I think. This has been a ton of work but I’m now a proud owner of a Github account filled only with placeholder repositories. My 25 repositories (the ones that were worth migrating) live on Codeberg now.

On the bright side: the code adding blog comments to repository got quite a bit simpler, Github API is quite a mess when adding multiple files in a commit. The downside: Codeberg CI will only do Linux. So if I ever have to make a release for one of my Rust projects I’ll have to figure out how to cross-compile for Windows and MacOS.

Other than that migrating actions was fairly straightforward. You substitute ubuntu-latest for codeberg-tiny (or whichever size fits), update action locations and it works pretty much the same as on Github. Web hooks and static websites also work pretty much the same. Unexpectedly, the hard part here was migrating the releases – copying information manually for 35 releases in a repository is no fun. Well, that and updating links, turns out I have tons of them.

Deleting Github repositories and creating placeholder repositories instead destroyed some state unfortunately, issue reports in particular. Too bad but I really didn’t want to leave any data on Github.

@WPalant I took a different approach — I kept each repo in place, but replaced the actual git contents with a single branch, single commit, single file (a README saying "moved to <link>").

For anyone else reading this, I'm happy to share the script I used for updating repos this way. (Hmm, Codeberg doesn't have the equivalent of gists.)

@WPalant I tried compiling a Rust project for Mac last year and was annoyed to discover that Apple wants you to go through some kind of developer signup program and sign a document or something in order to... compile. Throws a wrench in all the automated cross-compilation tooling.

So I'm just not compiling for Mac for now.

@varx macOS is really taking pride in being the most developer-unfriendly platform there is… Yes, just not compiling for macOS is an option worth considering.

@WPalant @varx At the same time, most of the companies renting developers to companies choose to offer macOS laptops for employees. Probably because it looks trendy and makes it easier for them to recruit people.

Back in time asked for a Linux laptop in a consulting job and company refused, because it did not fit to their company's brand image. They tried to be macOS only company, while most customers were running Windows or Linux.

Even while it was much more difficult to do web development on a Mac, as things like Docker containers had a massive delay (as file system synchronization between host system and virtual machine was badly implemented on Docker itself).