Syncthing - open+decentralized BitTorrent Sync alternative

Submit portable freeware that you find here. It helps if you include information like description, extraction instruction, Unicode support, whether it writes to the registry, and so on.
Message
Author
User avatar
Midas
Posts: 6705
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: Syncthing - open+decentralized BitTorrent Sync alternati

#16 Post by Midas »


User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: Syncthing - open+decentralized BitTorrent Sync alternati

#17 Post by webfork »

So I did some testing on this based on this post: https://github.com/syncthing/syncthing/issues/416 I put together a possible sequence:
  1. From the home page, download either 32 or 64-bit "core"
  2. Extract the zip file to a folder of your choice
  3. In this same folder, create a text file with the following data:

    Code: Select all

    @echo off
    %~d0
    cd "%~d0%~p0"
    IF %ERRORLEVEL%==0 GOTO PATH_IS_OK
    exit
    :PATH_IS_OK
    
    rem set AppData=D:\Data\syncthing\
    set AppData=%~d0%~p0
    set LocalAppData=%AppData%
    start "syncthing" /B /LOW syncthing.exe
  4. Re-name it syncthing.bat and launch
A command-line window will appear, a key will be generated, and then a web browser window will open.

---

Unfortunately I'm getting some error messages around the HTTPS cert and the web browser screen won't shut down when you do the command, it just restarts. Portable not quite ready here.

User avatar
SYSTEM
Posts: 2041
Joined: Sat Jul 31, 2010 1:19 am
Location: Helsinki, Finland

Re: Syncthing - open+decentralized BitTorrent Sync alternati

#18 Post by SYSTEM »

webfork wrote:So I did some testing on this based on this post: https://github.com/syncthing/syncthing/issues/416 I put together a possible sequence:
  1. From the home page, download either 32 or 64-bit "core"
  2. Extract the zip file to a folder of your choice
  3. In this same folder, create a text file with the following data:

    Code: Select all

    @echo off
    %~d0
    cd "%~d0%~p0"
    IF %ERRORLEVEL%==0 GOTO PATH_IS_OK
    exit
    :PATH_IS_OK
    
    rem set AppData=D:\Data\syncthing\
    set AppData=%~d0%~p0
    set LocalAppData=%AppData%
    start "syncthing" /B /LOW syncthing.exe
  4. Re-name it syncthing.bat and launch
A command-line window will appear, a key will be generated, and then a web browser window will open.
Based on a comment from the developer, this should also work (untested):

Code: Select all

cd /d "%~d0%~p0"
start syncthing.exe -home syncthing-config
My YouTube channel | Release date of my 13th playlist: August 24, 2020

User avatar
Midas
Posts: 6705
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: Syncthing - open+decentralized BitTorrent Sync alternati

#19 Post by Midas »

Syncthing v0.12.20 released (changelog at http://github.com/syncthing/syncthing/releases)


User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#21 Post by webfork »

Based on SYSTEM's earlier post and some of my own research, I put together a breakdown on running SyncThing portably. There are a few ways to do this:

SyncTrayzor method (requires dotNET 4.5, much more RAM and more disk space):

1. Download either the latest release copy of either SyncTrayzorPortable-x64.zip or SyncTrayzorPortable-x86.zip (https://github.com/canton7/SyncTrayzor/releases/)
2. Launch SyncTrayzor

NOTE: This program already had a separate thread started by smaragdus. I'm thinking the only one suitable for adding to the database is SyncTrayzor just because it's a little closer to a native windows application and most users will balk at all the additional windows / batch file edits.


SyncThing official method (missing some of the polish but uses less disk space, much less RAM, and doesn't require dotNET):
  1. Download the latest release: https://github.com/syncthing/syncthing/releases (scroll down to "latest release" in a green box)
  2. Download the "windows" zip file corresponding to your operating system (if you're not sure, go with the 386 version).
  3. Extract to a folder of your choice
  4. Create a text file with the text: syncthing.exe -home=.
  5. Rename the text file to syncthing-portable.bat and launch
The program maintains a console window with a listing of commands. When closed, the program shuts down.


SyncThing Official, without a console window (same as above, but requires manual shutdown from the "Actions" menu).

Steps:
  1. (See steps 1-3 above)
  2. Create two text files (A and B) with the following:

    A:

    syncthing.exe -home=. -no-console

    B:

    syncthing.exe -home=. -browser-only

    -
  3. Name the "A" file "syncthing-portable-start.bat" and the "B" file to "syncthing-portable-resume.bat".
Launch the "syncthing-portable-start.bat" to start the program and "syncthing-portable-resume.bat" to resume later if you close the browser Window. You can shutdown the program from within the Action menu.


Details

Status: All of the above are portable, writing to the application folder.

Adding folders: To add folders from the local directory (which is much more portable), click Add folder and enter .\<foldername> for the same folder as the application or ..\foldername for the folder above that.

If SyncThing is installed to X:\Syncthing\

.\test123 -> X:\Syncthing\test123

..\test123 -> X:\test123


Connecting to other devices: Read the "getting started" guide: https://docs.syncthing.net/intro/getting-started.html

---

NOTE: iPhone users: there is no iOS client.

Screenshot

Image

User avatar
Midas
Posts: 6705
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#22 Post by Midas »

webfork wrote: SyncThing official method (missing some of the polish but uses less disk space, much less RAM, and doesn't require dotNET):
  1. Download the latest release: https://github.com/syncthing/syncthing/releases (scroll down to "latest release" in a green box)
  2. Download the "windows" zip file corresponding to your operating system (if you're not sure, go with the 386 version).
  3. Extract to a folder of your choice
  4. Create a text file with the text: syncthing.exe -home=.
  5. Rename the text file to syncthing-portable.bat and launch
The program maintains a console window with a listing of commands. When closed, the program shuts down.
To get rid of the console window, you could try replacing the text in the batch file with the following:

Code: Select all

@start "" "syncthing.exe -home=."
If that doesn't work as intended I have a more convoluted version that should do it. Tell me how it goes...

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#23 Post by webfork »

Finally got a chance to test out SyncThing. I needed to connect two machines with some sensitive data and just didn't feel comfortable using a cloud service.

Why not SyncTrayzor?

This program is my preference just because it's easier to add to the TPFC database and uses a more familiar interface. Unfortunately, the program had to self-update to the latest version of SyncThing right after downloading. It did this twice in the course of testing, after which it lost my folder settings, which makes me wonder if there's not some outstanding bug. I had limited time to test this so I didn't cycle through the github site for insight or a temporary fix.

---

Testing notes

Connecting

Once you've setup the program and launched, you have to share codes available from the Actions - Show ID view. There's a QR code and a long string of letters and numbers. Fortunately, the first device seemed to find the second on a local wireless network, but the second couldn't see the first. I think this was due my firewall settings, but I'm not sure. In any case, I just typed out the lengthy code.

Usage

I fought a bit with the folder settings just because I didn't understand how the folder naming, default folder, and target computer behavior. I wanted to tie one specific to another specific folder on a separate machine, but the program wants to use a default folder structure, which borrows it's structure from the folder name. Just call the folder whatever you want and list the specific folder location and destination.

Pros
  • Very fast, updates are detected and sent almost instantaneously
  • Simple interface once you get through the setup
  • Bandwidth limits help avoid flooding your connection
Cons
  • Folder sync was a little less than intuitive just because it seems to ONLY function from a root folder (not so).
  • Some changes seemed to require a program shut down and re-launch (not restart) before the program would connect to the second device, some of the folder changes would go through, and one file rename from the recipient computer back to the host. Maybe I was just impatient, I don't know.
Wishlist
  • Standard folder navigation - right now you need to paste in a folder path (e.g."c:\folder\sync") and I can see novice users getting confused by that.
  • Delta copying / detect file rename - unlike BitTorrent Sync and Bvckup, doesn't support delta copying (only send the data that's changed) and also does not appear to detect simple file renames and instead uploads/downloads the whole file.
  • Trusted mode - some kind of available "admin" interface that lets you set the folders and all the options for machines where it's enabled. I know this is a security concern and there would need to be a pretty intense disclaimer about it's use.
  • Untrusted mode - a send-only option that only transfers compressed+encrypted files (e.g. 7zip with a password) to avoid security issues when you're not 100% about the machine you're sending files to (e.g. friend's backup server).
Evaluation

I'm definitely going to keep using this program. The low program overhead, speed, and peer-to-peer exchange are hard to argue with.
Last edited by webfork on Sat Jan 19, 2019 2:36 pm, edited 1 time in total.

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#24 Post by webfork »

I tested out the program a bit more over the last week and found some more nice things ...
  • Delta copying - Important for a long list of reasons, this has evidently been around for years now: https://github.com/syncthing/syncthing/issues/107 ... if so, we have an open alternative to the excellent Bvckup, though I suspect Bvckup is more bandwidth efficient due to keeping a hash store (meaning change analysis is faster).
  • Server backup - It's possible to setup a 3rd computer that would always be online and maintain all changes between all devices. While this is far from the reliablity and persistence of a "cloud" service, but could handle persistent transfers between machines that are intermittently available.
  • Point X to Y - Strangely, a lot of cloud-based Sync programs insist on using a root folder e.g. C:\Users\USERNAME\Service ... you can put the folder anywhere you want but what you sync has to be inside that root. Dropbox, Sync.com, Box, etc. all have this issue. Syncthing will point any folder to any other (remote) folder.

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#25 Post by webfork »

Version 1.1.0 is out now: https://github.com/syncthing/syncthing/releases

I've been using Syncthing regularly now for for a few months and I'm really, really impressed. It would be very hard to switch to any other solution. I would like to add this to the database but I'm not sure about the extra CMD window that it opens and the use of a Web browser interface -- we simply don't have another program on the site like that.

Thoughts?

User avatar
Midas
Posts: 6705
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#26 Post by Midas »

I think you answered your own question there... :mrgreen:
webfork wrote: we simply don't have another program on the site like that.

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#27 Post by webfork »

Midas wrote: Tue Mar 12, 2019 4:47 am I think you answered your own question there... :mrgreen:
webfork wrote: we simply don't have another program on the site like that.
True but for some time we didn't accept dotNET or Java programs. If there were only a hack to hide the CMD window...

---

EDIT: answered my own question - you can launch the program with a launch argument:

Code: Select all

syncthing.exe -no-console -home=.

https://docs.syncthing.net/users/syncthing.html

---

EDIT2: Yeah that's not going to work either -- if you accidentally close the browser window, it won't come back until you run the browser-only launch:

Code: Select all

syncthing.exe -browser-only -home=.
Note that I've also updated the previous launch code to include the local settings save (-home=.)

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#28 Post by webfork »

Midas wrote: Tue Mar 12, 2019 4:47 am I think you answered your own question there... :mrgreen:
webfork wrote: I would like to add this to the database but I'm not sure about the extra CMD window that it opens and the use of a Web browser interface -- we simply don't have another program on the site like that.
Well I wasn't aware of it until today, but FuguHub is actually one such program: while you're using it, there's an always-visible CMD window. I guess there is a precedent for adding Syncthing.

User avatar
Midas
Posts: 6705
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#29 Post by Midas »

Topic update: Syncthing v1.7.1 stable released (changelog and downloads at https://github.com/syncthing/syncthing/releases).

User avatar
Midas
Posts: 6705
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: Syncthing - open+decentralized BitTorrent Sync alternative

#30 Post by Midas »

Syncthing v1.13.1 released (changelog and downloads at https://github.com/syncthing/syncthing/releases).

Post Reply