Self-hosted Forgejo
My git lives on a Raspberry Pi in my house now. This is how it got there.
This one started with email, not with git.
I deleted my Gmail. Not stopped using it, deleted it, along with the Google account attached to it, which took a while because that account had quietly become the key to everything I owned. I moved to Proton, where at least the company's business model is me paying them rather than me being the product, and I turned on 2FA absolutely everywhere on the way through.
Part of that setup is aliases. Instead of handing the same address to every service, each one gets its own, so nothing can be correlated and anything that starts leaking can be cut off on its own. That worked fine until I tried to use one on GitHub, which would not accept it.
Which is a small thing, except it made me notice something bigger: all of my code was sitting on a platform that got to decide what my email address was allowed to be. So I went looking, and found Forgejo, a self-hosted Git forge run by its community. I had a Raspberry Pi doing nothing in particular and some free time. That was enough.
How it actually works
The bit I like most is that middle step. I never opened a port on my router. The Pi makes an outbound connection to Cloudflare and traffic comes back down through it, so from the outside my home network has nothing to knock on. Then nginx does TLS and reverse proxies to Forgejo, and Forgejo keeps everything in Postgres.
So git.eloybermejo.com is a computer in my house. Repositories, issues, CI runners, all of it on hardware I can unplug. The pipeline that builds and deploys this website runs there, which means the page you are reading was put on the internet by a Raspberry Pi about two metres from me :)
None of this made me safer in a way I could measure. It is more that I stopped being a tenant. There is a real difference between using something and owning it, and I did not appreciate how much of my stuff was the first kind until I moved some of it to the second.