It’s autumn 2025, the USA is on a live-streamed any% speedrun into techno-fascist dystopia, and giant tech companies are cooking the biosphere to cram a few more crumbs of unwanted LLM shite down our throats. It’s a good time to part ways with another US tech megacorp service that I’m increasingly uncomfortable about using: GitHub.
Anyone who’s followed this blog for 10 years or more (he says, to an audience of only himself) will know that I regularly flip-flop between the extremes of self-hosting as much as possible, and moving everything back to commercial services. After a period of largely using Microsoft tools from 2020-2024, the global shit-show is pushing me to flip back the other way again. Whether it’ll also be a flop, time will tell.
But recently I was asked, when discussing email, groupware and documents, whether I was “a Microsoft person or a Google person”. That question has stuck with me more than it had any right to. Is that now part of what defines us, a choice of two corporate overlords whose tech stack we pledge allegiance to?
That’s not a happy thought, for me, and it feels good to push back against it.
One of the benefits of being fairly experienced in software and network admin is that I can change these things relatively easily; moving my email from Microsoft to Mythic Beasts was at most a day; files and groupware from Microsoft to a Hetzner-hosted Nextcloud instance was a weekend. But GitHub was a bit more effort. I had 15 years of history there (once upon a time it was new and cool), I was a heavy user/abuser of GitHub Pages for hosting, and my blog comment system, Staticman, was both dependent on GitHub and abandoned by its creator, making a migration tricky.
So of course, I made a giant to-do list, and I’ve been slowly working my way through it for the last couple of weeks. The good news is, the bulk of the effort is now complete, and hopefully you shouldn’t see too many changes (i.e. broken stuff).
In rough order, I have:
- Changed my blog’s comment system from Staticman to Hashover v2 (also essentially abandoned at this point, but what open-source static site comment system isn’t?) and migrated the comments
- Set up a new Forgejo server on my VPS at https://git.ianrenton.com/
- Migrated all my repos from GitHub using Forgejo’s migration tool
- Left behind all my forks of other people’s repos, which will continue to live on GitHub
- Set up new locations on the VPS to host sites that were previously published using GitHub Pages
- Moved DNS entries, set up nginx sites and Let’s Encrypt certificates for all the hosted sites
- Taken offline a couple of ancient things that have no need to be public anymore
- Tried to find and fix all the GitHub links from my blog and the rest of the codebase!
I’m sure I’ll find a few more issues over the coming weeks, but I’m 99% there, and as I said hopefully I haven’t broken anything in the process.
At the end of it all, my personal tech stack is now almost entirely free of US tech giants:
- Desktop & server OS: Debian
- Mail & DNS: Mythic Beasts
- File storage & groupware: Nextcloud on Hetzner
- Web hosting: Hetzner VPS
- Source control: Forgejo on Hetzner VPS
- Social media: Mastodon
Unfortunate exceptions are the Microsoft 365 account that I manage for family, the Google & WhatsApp accounts I need for Scouts business, Discord, and of course my phone, where the megacorp duopoly remains inescapable.
However, after the weeks of effort in moving my source control and hosting away from GitHub and back under my control, I do feel it was worthwhile. Being “locked in” to the GitHub ecosystem, whether through Pages or Actions or my choice of comment system, is exactly what the company that runs it wants—like Facebook and all the rest, the aim is to keep you as a customer forever because the cost of switching is too high.
The cost of switching is not too high, and we should not be afraid to break our dependency on companies that don’t have our best interests at heart.
Comments