this post was submitted on 22 Nov 2023
41 points (93.6% liked)

Selfhosted

40233 readers
854 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

What are you non-obvious, maybe strange usecases of Syncthing?

For example syncing the media library with your friend or maybe your entire /home/user folder between your PC and laptop?

I'd love to hear your ideas!

you are viewing a single comment's thread
view the rest of the comments
[–] lemmyvore@feddit.nl 2 points 11 months ago (2 children)

The phone sync client would have to remember all the files it ever sends, which could be thousands. I've never seen a sync client that works like that, they usually compare the files that are in the source and destination folders. If syncthing can do this that's really interesting.

[–] zaphod@lemmy.ca 2 points 11 months ago* (last edited 11 months ago)

No it doesn't.

Syncthing only needs to remember the current state of the files/folders it's syncing. Not everything it's every sync'd.

It does that by either periodically scanning the filesystem to look for changes since it last scanned (based on the file creation and modification dates that are stored in the filesystem), or it registers with the operating system to receive events when files are created, modified, or deleted.

When Syncthing notices a create, update, or delete, it pushes those changes to the receiver and then updates it's record of the filesystem state accordingly.

It also pushes whole files, not deltas. So it doesn't care how the files changed, only that they did.

Even with hundreds of thousands of files to sync this is a relatively small amount of state as it's just file paths and their create/modify dates.