So…yeah. As I’m moving away from google, I’d like to store my contacts elsewhere. I have proton (I know, I know), but this is also not great, since their system isn’t too android-friendly. Which system (maybe self-hosted) would you suggest to easily sync/backup your contacts?
Thanks!
I wish Flock was still around.
If you are feeling ambitious and want to go “serverless”, try out DecSync and a compatible android app for contact sync. This represents all your contacts as files on disk in a way that avoids conflicts, and you can use SyncThing to keep your devices in sync 100% peer to peer. Unfortunately on your desktop you’ll probably have to use something like radicale on localhost and the plugin to convert it into CardDAV for your regular email client to understand.
I have a little python script that (among other things) will maintain an address list in a *.csv file on a Windows or Linux PC. It’s a Qt app. The documentation does some handwaving about importing/exporting to Android. See: https://lacusveris.com/Tonto2/Docs/en/index.shtml
Check out Yunohost. It’s a self hosting project built on Debian. It lets you install a bunch of server “apps”, including some that will sync contacts for you (Nextcloud, Baikal, My WebDAV).
You can install this on an old computer you have laying around, or on a VPS. Syncing to an Android device you’ll need to use DAVx5. Syncing to iOS is actually easier since it has built-in DAV support.
I use Radicale.
How did you set it up? The pip install method no longer works. I guess it still was a valid way until some point last year.
I’ve been using EteSync to sync my contacts and calendars for many years now. It’s end-to-end encrypted and works well.
It’s not too hard to self-host too.
How…do you self-host both the server AND the web client? Do you need two different addresses? Can it be done on the same server/container?
I understand I can just run the the server, which has this tiny little add-user and permissions page, but I’d like to also be able to handle the contacts and calendar from the Web UI from a computer whenever needed. Of course I know I can plug any app to the server directly, but I’d like the web UI, too…Do you know how to do this? I’ve spent a couple of hours searching without much luck.
If you’d like a web UI too, Radicale may be a better fit and easier to set up. I tried it out briefly using docker compose.
I use the same etesync clients but link them to your own server, called etebase. There are a couple setup examples in the code, but if you’d like, I can share my docker/podman compose stack.
I haven’t set up the web UI to directly access items since I’m fine just using clients to sync and access items, so I haven’t looked into the web UI.
I briefly looked into the web client, and I don’t think it’s worth trying to self-host. There isn’t a docker image and the latest release on github is from 2020. If you need a web UI, I’d recommend using something else.
You might still have to use a gmail account for this though, depending on if your email works with it.
There’s also Nextcloud which would be self hosted.
And the extremely low tech solution of just having them offline in a foss contacts app and exporting backups to your storage.
And the extremely low tech solution of just having them offline in a foss contacts app and exporting backups from that app to your storage in case you lose them.
that’s not a good solution because a lot of apps will be able to read them. It’s not always possible to decide for yourself what apps you have, sometimes more powerful people are going to make you use one that you don’t trust.
in a foss contacts app
I said in a foss one, I don’t think the foss developers are conspiring to get rid of your contacts, maybe for apple you might have to hope the developer doesn’t get burnt out, but the android foss community is pretty robust, but if you’re that paranoid just put them in a txt file or a spreadsheet.
fossify contacts lets you import and export your contacts at anytime to and from a simple file
Sync to a CalDAV/CardDAV server instead of to Google. If you’re up for self-hosting, Radicale is a good and simple one.
I use DAVx⁵ on Android and Thunderbird on the desktop. Other sync clients are listed here: https://radicale.org/v3.html#supported-clients
what would you do without selfhosting?
I do that for myself, but I can’t recommend that to 99% of people around me, and I can’t let them into my system either.
I have seen etesync, but that requires a subscription.
was thinking of something with syncthing, but that has difficulties too (missing tools mostly), especially that you would have to keep the contacts file at a place where nearly any app can read it.In matters where a server is needed, you generally have three options:
- self-host
- get a friend/colleague/employer to host
- pay for a host
Thanks! I was trying a first run attempt, but I got stuck setting up python. Seems these setup instructions don’t quite work anymore due to python’s virtual environment, pipx is suggested now. Alternatively I saw the option to just install a dated version, but it was quite a bunch of releases behind. I gave up and had a bit more success with Etesync server. Although I’m trying now to figure how the hell am I to setup both the server and the web client on the same running environment…I’d like to host the web client too, so I can edit calendar entries from the web UI.
forget NixOS. I understand that for seasoned users it might be a cool thing, but as I see you may be a beginner, and you totally don’t need that.
docker is solid advice though. use that and a reverse proxy, like nginx or apache (they are complete web servers with revproxy capabilities), and put different services on different subdomains of the machine’s hostname (like api.etesync.mypc.lan, and web.etesync.mypc.lan). that way you basically run multiple services with the same IP and port, and the reverse proxy separates the different traffic of services by looking at the subdomain.
if I’m right that you’re a beginner, take your time, you’re not in a rush. it will work out, but you’re learning, it might take some patience here and there
Try Docker, or if you want to invest a bit more learning time for a huge convenience pay off: NixOS
I use posteo for email and use davx5 to sync contacts and calendars to their carddav and caldav servers.
I got Nextcloud on Hetzner. Technically, Hetzner can see the contacts stored on their servers, but I trust them enough, and everything is open source.
You can also self-host Nextcloud.
Same. Hetzner has a solid business in hosting, they don’t make their money from mining my data. They’d hand it over for a lawful request, but the data is not -that- secret and thus possible false accusations aren’t really an issue.
I’ve barely hosted anything and those must have leaked like a sieve. Trusting Hetzner way more.
I export my contacts as a file and copy it to my pc, an external HDD and several cloud providers. Anything I store in the cloud is encrypted with Rclone first. There is a nice client available for Android. I don’t pay for cloud storage so I only use the free tiers.
I guess this is only practical if you rarely make changes to your contacts.
Export them as a VCF file and put them on a flash drive.
Proton will deliver it any day now that Andy sucked Trump off