←back to thread

816 points tosh | 9 comments | | HN request time: 0.426s | source | bottom
1. ddtaylor ◴[] No.41276687[source]
I find `syncthing` pretty useful for this kind of stuff. It's been around a long time and has a lot of different options for configuration and clients for every platform you could imagine, both UI based and command line.

On every *nix platform I would just install the `syncthing` package and use it quite easily. I've experimented with some wormhole stuff before and looked at this package some, but there would be a lot of extra steps involved right because of the packaging choices.

The package was removed from Fedora in 37 with the "replacement" being use a Snap instead [1]. That doesn't make any sense because that platform is heavily invested in Flatpak and it's very "against the grain." There are some other "Wormhole" apps on Flathub that are verified, but none of them are the same as this. Are they compatible protocol wise or just named similar things? That's assuming you want to enter the game of "is this app safe or made by the same entity?"

I want to enjoy this project and others like it, but it's very confusing. The goal of these tools is to simplify transfer of files and to take most of the "pain" in doing that away. Yet, to actually use most of these tools in any meaningful way between two computers you would need to invest more time into getting this to run on those systems. My brain tells me to make this work you need a big button on the homepage for each well supported platform that just says "Download for Windows" along with a one-click solutions for various Linux platforms (one line command, Flatpak, AppImage, etc.)

[1]: https://magic-wormhole.readthedocs.io/en/latest/welcome.html...

replies(3): >>41276729 #>>41277054 #>>41277545 #
2. tptacek ◴[] No.41276729[source]
syncthing and Magic Wormhole have different goals. Wormhole is very simple: it is a way (often the best way) to get a file from point A to point B, regardless of the connectivity (or lack thereof) between A and B, without accounts or configuration.
replies(1): >>41276768 #
3. ddtaylor ◴[] No.41276768[source]
Syncthing also does relaying like that, NAT traversal, bridges, etc. all automatically. If it can, it will use local IP connections and go blazing fast. If for some reason your network configuration(s) don't allow for any valid connections, it will use a relay or bridge - either a default or one you setup - and work relatively fast as well.
replies(1): >>41277563 #
4. lotharrr ◴[] No.41277054[source]
Yeah, syncthing is awesome for repeated interaction.. once you've configured the two sides to know about each other, it's really flexible for doing an initial transfer, pushing just the new changes, pushing to multiple destinations, etc.

magic-wormhole doesn't need the initial configuration, but only lets you transfer one file (or one directory). So it's better for ad-hoc transfers, or for safely establishing the configuration data you need for a more long-term tool. The analogy might be that magic-wormhole is to synthing as scp is to rsync.

The snap/flatpak thing is weird, and I share your discomfort with uncertain provenance of software delivered that way.

I wrote the original version in Python, and took advantage of a number of useful dependencies (Twisted, to begin with), but a consequence is that installing it requires a dozen other packages, plus everything that Python itself wants. I've watched multiple people express dismay when they do a `brew install magic-wormhole` and the screen fills with dependencies being downloaded. If I knew Go, or if Rust had existed when I first wrote it, I might have managed to produce a single-file executable, which would be a lot better for deployment/distribution purposes, like wormhole-william provides today.

5. Vinnl ◴[] No.41277545[source]
I use Warp from Flathub, which I believe uses Magic Wormhole.
replies(1): >>41279158 #
6. rakoo ◴[] No.41277563{3}[source]
"Connectivity" here needs to be taken at large: syncthing needs to have a folder already shared between two machines. There's some setup involved that is not automatic.

The entire setup phase of magic wormhole is "copy those 3 words" and boom you're done.

replies(1): >>41284556 #
7. meejah ◴[] No.41279158[source]
Yes, it does -- via the Rust implementation.
8. ddtaylor ◴[] No.41284556{4}[source]
I think a lot of people talking about Synchthing must have used it in a different way in the past. It has a QR code now that encodes that 16-digit number or whatever that is used for the same purposes of key exchange and initial handshaking.

I use it with my wifes phone to transfer files between her drawing tablet and her Linux system she uses for Blender every day.

replies(1): >>41285274 #
9. rakoo ◴[] No.41285274{5}[source]
Yes, but even that is more involvement: you need to create a new specific folder, add a device, share that folder, accept on the receiver, copy the file in the folder, and wait for full sync in the web ui. It's a much longer setup that makes sense if you will synchronize files/folders with the same machine in the same folder, but that's not always the case. magic-wormhole removes all that back-and-forth dance for one-off sends.