this post was submitted on 07 Nov 2026
34 points (97.2% liked)
DeGoogle Yourself
18182 readers
38 users here now
A community for those that would like to get away from Google.
Here you may post anything related to DeGoogling, why we should do it or good software alternatives!
Rules
-
Be respectful even in disagreement
-
No advertising unless it is very relevent and justified. Do not do this excessively.
-
No low value posts / memes. We or you need to learn, or discuss something.
Related communities
!privacyguides@lemmy.one !privacy@lemmy.ml !privatelife@lemmy.ml !linuxphones@lemmy.ml !fossdroid@social.fossware.space !fdroid@lemmy.ml
founded 6 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I've been making changes to get off Proton lately and this is my plan, but I have a question if you don't mind? This is the first time I've tried self-hosting, and I'm waiting on a laptop I'm getting returned from a friend to host things like Keepass, Immich, calendars, etc. I'm trying to get my ducks in a row as best I can while I wait.
I've switched to Keepass from Proton Pass already, and it was significantly easier than I was expecting. Currently I'm doing things manually, every time I add/change something I copy the file to my devices, so each one has a local file.
If I understand correctly, Syncthing will, well, sync the things lol. I slap Syncthing on each device and point them to where the keepass file is located right? But is the location the local file per device or the "master" file on the laptop server? I suppose my question is: Is there a master file on the server computer (my returned laptop) that devices sync to, or can I make a change on say my phone, and everything syncs without there being a "central" host, basically Syncthing replaces "me" in my current flow? If the latter, I suppose i don't need Keepass/Syncthing setup as a dedicated server?
Great questions, all of them! No, there need not be any "master file" - but there can be. ;) Let me lay it out for you.
There are two possible models you can build with Syncthing:
Which model you go for depends on how many devices you're planning to hook up. If you only need to keep two devices in sync (e.g. your phone and your notebook), the client-server structure would probably be overkill, and actually Syncthing is typically deployed in serverless peer-to-peer scenarios.
However, if you have a lot of devices to sync, it may be more efficient to go with the client-server setup. Example time to make this more transparent!
Let's say you go with the p2p structure because you only have a phone and a notebook hooked up to Syncthing. You configure:
But now you want to add another device, e.g. a desktop PC. Now you need to
Otherwise you end up with a partial mesh, i.e. not every device immediately writes its changes to all others.
If you now add a fourth device that also needs to receive the share, you already have to make changes on four devices. And so on and so on. The more devices you add, the more work you need to put in.
TL;DR:
Syncthing can work without a "master file". It can do peer-to-peer shares and work without a server. However, the more devices you need to share to, the more efficient a star-shaped / server-like architecture will become. This, however, does not require dedicated server hardware; you just decide that one of the devices will fulfil the role of the server by hooking all client devices up to it.
One last, minor correction: Syncthing only lets you share folders, not files. So you'd create a "KeePass" folder, toss your DB in there and share the folder to the receiving devices.
Appreciate it thank you! So basically in either setup syncthing just checks for an updated version of the file on any device and replaces the old versions on all devices? Do I have this right?:
A simple 2 device setup would be easy with a p2p structure, but can get convoluted when adding more as they all then need to connect to eachother. If I have multiple devices (which I do) a star-shaped structure means each device only has to connect to the main server device.
In the p2p example, the phone adds a new password, the notebook sees the change through syncthing monitoring the phones folder, and replaces it's file with the new one. If I change something on the phone when I'm out of network, the change is local and works fine on the phone (but obviously wouldnt on the notebook) then syncs when i get back on the network and updates the notebooks file.
In the star-shaped structure, all devices point to the server file. I change something on network on my phone, the server file then sees the change and updates, then the other devices do the same. If I change something off network, again the same as the p2p example with one extra step; once back on network the server sees the change on the phone, updates, then the other devices update to that.
Is that the jist of it?
Edit: So basically if I wait for my laptop, I set it up, then on my phone for example I set syncthing to the folder on the laptop, then change the local Keepass folder to the syncthing laptopo folder?
Accurate, all of it. You've got it.
Two more (nice) things:
Awesome, thanks so much for taking the time. Looking forward to trying to set this up