Many other guides dive deep into 10 plus pages of how to set up such a service with Dovecot, Postfix and a web server all from the command line, but this one is a lot simpler because most of what you need is inside Citadel. Citadel also has calendar, Contacts, Notes, Tasks and chat rooms so can be a good alternative to Google or other providers. Your only cost really is the Raspberry Pi and a domain name if you don’t already have one.
You could tweak this a bit further by using your own DNS provider (or alternative to Cloudflare) and considering an external hard drive connected to the Pi for reliability.
See https://pimylifeup.com/raspberry-pi-email-server/
#technology #email #privacy #raspberrypi #alternativeto #opensource
Believe me; I do not give a shit what others use. After all, I (like others) know other RCS systems outside Git, and I don’t find it a problem that e.g. hg uses HEAD (and has been using HEAD since its early days, before the “master is racist” nonsense), svn uses trunk (I think, admittedly I’m not a fan of centralized RCS systems).
I have a problem when others want to bully me into changing it when I don’t want to.
Edit: my only problem with this state is that there is no standard. I have no problem with hg’s choice, because EVERY hg repo’s master branch is called HEAD. But now with git, there two gazillion possibilites, and no standard. Some have moved to trunk, main, I’ve seem some people use “actual”, and some people use “master”, of course. So I do find it annoying that people had to ruin a standard that worked for over a decade.
Did we, though? You are the one who brought up the whole “master”/“main” debate, it was not part of my argument. And in any case, nothing in the code prevents you from naming your branch “master”, only the default setting was changed.
Yes there is. Your git client will automatically checkout the default branch from the remote. You can even programmatically detect the current branch after cloning so what’s your problem?
Yes, now you have to get out of your way to detect the name of the master branch. You used to be able to assume that it was “master”, obviously much less code required
That’s not true. Even when “master” was the default, i had to “get out of my way” to support many projects who did not use “master” as default branch name. Whatever setting i personally use on my repos, i can hardcode in my scripts. When dealing with other people’s repositories, it’s an entirely different story.