FOSS contacts storage/sync?
-
If you'd like a web UI too, Radicale may be a better fit and easier to set up.
-
Try Docker, or if you want to invest a bit more learning time for a huge convenience pay off: NixOS
-
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.
-
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.
-
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.
-
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.
-
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. -
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
-
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
-
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
-
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.
-
I wish Flock was still around.
-
-
-
Nextcloud.
-
Thanks! But, from the few times I've tried it...a bit on the heavy side, for my use case. I'm not going to use any of all the other features/integrations.
-
Thanks! For databases, I'd prefer not to have to rely on Syncthing. I know it's reliable, but I'd prefer something hooking directly to the android contacts/calendars providers. I'll try something CalDAV/CardDav-based. Still trying to find one that includes a web client as well, to edit the contacts/calendars on the web if I choose to (otherwise I'll be needing to create two URLs, one for the client and another for the server).
-
Thanks...I think I prefer something a bit les...manual in a way.
-
Thanks...I have it running now. I guess my nit-pickyness of this is, it's just the server. I'd like to have also something replicating a calendar and contacts managing web UI, ala google calendar/contacts.
Sure this works neatly already (no complains there!), but I'm trying to also provide functionality for the rest of the family. Sometimes a web app might be the easiest approach to check something first.