Request: Automatically Share Common Folders

This feature request started as a support post, but it seems the feature I want doesn’t exist, so I’m curious what you all think of it.

Here is the thread:

I have 3 devices. Let’s call them A, B, and C. All three are connected as remote devices to each-other. That is to say A, has B, and C; B, has C, and A; and C has B, and A;

On device A, I run mkdir foo; cd foo; touch bar baz; and using the config GUI, I add foo into syncthing.

I then share folder foo with devices B, and C; and accept the folder on those devices.

Here is a visual representation of the current state:

A:foo <-> B:foo
A:foo <-> C:foo
B:foo XXX C:foo

I notice that the folder is not shared between B and C, unless I go and make that happen manually. I would like for this to occur automatically.

Here’s a proposal of how it could work (though I’m sure there is a more elegant way):

  • Look for any folders that you are sharing with some (but not all) of your connected devices.
  • If you find one, call it target folder
  • Ask the machine that target folder is not shared with if it has a folder with the same id as target folder
  • If they do, call that device target device
  • Investigate:
    • Get a list of devices with which you are sharing target folder.
    • Ask each of those devices if they share target folder with target device.
    • If they do:
      • share target folder with target device
      • automatically accept folders shared with you this way.
      • end the investigation
    • (if they do not) Ask those machines to repeat the investigation processes
    • An investigation should have some unique identifier, and a device should only investigate once per ID.

Maybe this check could happen anytime a new folder/device is added or shared. It could be an optional setting.

The introducer feature solves your stated use case in a less complicated way, though?

I’m not sure I would want this as an automatic feature, but it might be nice if there was an inquiry about if you WANT to do the share…

My ST situation is similar in that I have three machines linked the way HL’s are. Two have big drives and I sync pretty much everything in my /home directory between them. The 3rd one has a much smaller drive so I want to be more selective in my sharing, and just turn on the subdirs w/ files I think I might need on the 3rd machine.

I’ve figured out how to do this fairly easily, but it would be mildly nice to have the process be somewhat automated…