diff options
Diffstat (limited to 'utils')
-rwxr-xr-x | utils/syncthing | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/utils/syncthing b/utils/syncthing deleted file mode 100755 index fe23586..0000000 --- a/utils/syncthing +++ /dev/null @@ -1,99 +0,0 @@ -#!/bin/sh -set -e - -[ -d syncthing ] || (echo "There is no configuration directory" >&2; exit 1) -HOST="$(hostname)" -[ -f syncthing/"$HOST" ] || (echo "Host $HOST seems to be unconfigured" >&2; exit 1) - -TMPCNF="/tmp/syncthing.conf.xml" -[ -f $TMPCNF ] && rm $TMPCNF - -# Begin configuration -echo "<configuration version=\"17\">" >$TMPCNF - -for h in syncthing/*; do - # Source host - . "$h" - - # Set to configuration - echo " <device id=\"$ID\" name=\"$NAME\" compression=\"metadata\" introducer=\"false\">" >>$TMPCNF - echo " <address>$ADDRESS</address>" >>$TMPCNF - echo " </device>" >>$TMPCNF - - # Parse DIRS of this host - eval `echo "$DIRS" | sed -ne 's/^\([^:]*\):.*$/ST_DIR_HOSTS_\1="$ST_DIR_HOSTS_\1 $ID"/p'` -done - -# Now again source target host -. syncthing/"$HOST" - - -while read -r d; do - # Get name of the directory - NM="$(echo "$d" | sed 's/:.*$//')" - # Get target path - PTH="$(echo "$d" | sed 's/^[^:]*://')" - # Write folder init - echo " <folder id=\"$NM\" label=\"$NM\" path=\"$PTH\" type=\"readwrite\" rescanIntervalS=\"300\" ignorePerms=\"false\" autoNormalize=\"true\">" >>$TMPCNF - # Specify every all devices - for dev in eval `echo \$ST_DIR_HOSTS_$NM`; do - echo " <device id=\"$dev\"></device>" >>$TMPCNF - done - # Write common configs (TODO do we want to have chance to change it?) - echo " <minDiskFreePct>1</minDiskFreePct> - <versioning></versioning> - <copiers>0</copiers> - <pullers>0</pullers> - <hashers>0</hashers> - <order>random</order> - <ignoreDelete>false</ignoreDelete> - <scanProgressIntervalS>0</scanProgressIntervalS> - <pullerSleepS>0</pullerSleepS> - <pullerPauseS>0</pullerPauseS> - <maxConflicts>10</maxConflicts> - <disableSparseFiles>false</disableSparseFiles> - <disableTempIndexes>false</disableTempIndexes> - <fsync>true</fsync>" >>$TMPCNF - # Write folder end - echo " </folder>" >>$TMPCNF -done <<<"$DIRS" - -# Some defaults (TODO again do we care about those on various hosts) -echo " <gui enabled="true" tls="false" debugging="false"> - <address>127.0.0.1:8384</address> - <apikey>$APIKEY</apikey> - <theme>dark</theme> - </gui> - <options> - <listenAddress>default</listenAddress> - <globalAnnounceServer>default</globalAnnounceServer> - <globalAnnounceEnabled>true</globalAnnounceEnabled> - <localAnnounceEnabled>true</localAnnounceEnabled> - <localAnnouncePort>21027</localAnnouncePort> - <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr> - <maxSendKbps>0</maxSendKbps> - <maxRecvKbps>0</maxRecvKbps> - <reconnectionIntervalS>60</reconnectionIntervalS> - <relaysEnabled>true</relaysEnabled> - <relayReconnectIntervalM>10</relayReconnectIntervalM> - <startBrowser>true</startBrowser> - <natEnabled>true</natEnabled> - <natLeaseMinutes>60</natLeaseMinutes> - <natRenewalMinutes>30</natRenewalMinutes> - <natTimeoutSeconds>10</natTimeoutSeconds> - <urInitialDelayS>1800</urInitialDelayS> - <restartOnWakeup>true</restartOnWakeup> - <autoUpgradeIntervalH>12</autoUpgradeIntervalH> - <keepTemporariesH>24</keepTemporariesH> - <cacheIgnoredFiles>false</cacheIgnoredFiles> - <progressUpdateIntervalS>5</progressUpdateIntervalS> - <symlinksEnabled>true</symlinksEnabled> - <limitBandwidthInLan>false</limitBandwidthInLan> - <minHomeDiskFreePct>1</minHomeDiskFreePct> - <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL> - <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect> - <tempIndexMinBlocks>10</tempIndexMinBlocks> - </options>" >>$TMPCNF - -# End configuration -echo "</configuration>" >>$TMPCNF |