Most active commenters
  • sirbread(3)
  • (3)

←back to thread

108 points sirbread | 34 comments | | HN request time: 0.859s | source | bottom

i made sink. it's a simple little tool that continuously syncs folders between 2 devices. no cloud, no email, flash drives, no bs.

it just uses your local wifi. run it on your machines, tell them to trust each other, and you're set. and if you manage to edit the same file at once, it handles the conflict and saves both copies.

for anyone who just wants to get files from point a to b without the headache. hope it makes your life a bit less annoying.

github: https://github.com/sirbread/sink binary: https://github.com/sirbread/sink/releases/tag/v0.1

1. dewey ◴[] No.44394289[source]
What is the selling point over the very mature Syncthing? I’ve been using that for this use case for many years, with the additional benefit of also being able to sync it to my server, having a UI and being in all package managers already.
replies(9): >>44394330 #>>44394365 #>>44394409 #>>44394416 #>>44394449 #>>44394452 #>>44395219 #>>44396409 #>>44397983 #
2. anerli ◴[] No.44394330[source]
^ syncthing is nice
3. _pferreir_ ◴[] No.44394365[source]
This ^

I also recommend magic wormhole.

replies(1): >>44401082 #
4. progx ◴[] No.44394409[source]
NIH?
5. fxtentacle ◴[] No.44394416[source]
I especially like that Syncthing can do encrypted revision backups to untrusted servers. My workstation and laptop get synchronised. And in case I ever accidentally overwrite a file, there’s the past five revisions on an offsite server.
replies(1): >>44397479 #
6. sirbread ◴[] No.44394449[source]
being fr, i never even knew about syncthing until now. it's (clearly) a lot better, but again, the reason I made this is because of my school's software whitelist. they only allow certain apps to run on my laptop, one of them being python due to out compsci class. since then, I've been using it to get around whitelists and make my own stuff. this allows me to sync up me and my friend's stuff (like projects, etc.) while we're in school and not have to worry about the whitelist :)
replies(3): >>44394502 #>>44394650 #>>44397389 #
7. shakna ◴[] No.44394452[source]
SyncThing's insistence that a web UI be how you do everything has caused me quite a few headaches. Especially when said UI regularly breaks accessibility tools.

(The team do tend to fix those accessibility problems pretty fast. But spending a couple days a month working around a tool is not my idea of fun.)

replies(1): >>44394753 #
8. ryanjshaw ◴[] No.44394502[source]
That’s perfectly valid. Maybe add it to the top of your readme explaining what problem it solves (need to sync files between machines and all you can use is python).
9. globular-toast ◴[] No.44394650[source]
My initial thought was, man, your school is lame. But maybe it's genius? Creativity thrives in a constrained environment.
replies(1): >>44398746 #
10. zimpenfish ◴[] No.44394753[source]
> SyncThing's insistence that a web UI be how you do everything

It does have `syncthing cli ...` which -I think- lets you do everything but to call it obtuse would be an understatement.

11. donatj ◴[] No.44395219[source]
Syncthing is the most confounding user-unfriendly software I have ever had the displeasure of using. It makes a process that should be pretty easy, pick some folders and share some keys remarkably painful and convoluted.
replies(7): >>44396593 #>>44396648 #>>44397007 #>>44397439 #>>44397499 #>>44398351 #>>44398956 #
12. ◴[] No.44396409[source]
13. feiss ◴[] No.44396593[source]
+1000 times this
14. pydry ◴[] No.44396648[source]
to be fair, syncing is something that appears simple on the surface but which is a mess of complexity under the hood.
15. agildehaus ◴[] No.44397007[source]
Has any open-source project done it better? Serious question, I've been looking.
replies(1): >>44397388 #
16. deepspace ◴[] No.44397388{3}[source]
I used Unison many years ago, and it worked perfectly for all my use cases. Not sure how it stacks up these days. CLI only IIRC.
replies(1): >>44397834 #
17. udev4096 ◴[] No.44397389[source]
This kind of whitelisting does absolutely nothing. It's a straight up lolbin. Anyway, if python is allowed, then surely other languages can be added to whitelist. Ask them to whitelist go and use syncthing
replies(3): >>44397770 #>>44398114 #>>44400494 #
18. throw7 ◴[] No.44397439[source]
Syncthing is software where i think reading the manual is recommended. it is a fine manual and clears up a lot of the confusion. There's a lot of complexity "under the hood" and trying to just intuit it from the settings is... as you know... confusing.
19. lostmsu ◴[] No.44397479[source]
How does your setup for the backup look like? Won't you lose the data if the source of backup data gets lost together with the keys?
20. pjerem ◴[] No.44397499[source]
I have more mixed feelings about Syncthing than you.

I personally think it’s a power user tool rather than an easy to use tool. The UI can feel intimidating but is actually pretty coherent once you understand how Syncthing works.

I would compare it with Git in terms of ergonomics : a powerful tool with its own jargon that you must understand to be able to use it.

Like git, Syncthing chose to expose its internals to the user rather than hiding it behind something magic. But like git, I don’t feel like there are unnecessary complexity. Once you understand it, it’s easy to make it work because it makes sense.

21. sirbread ◴[] No.44397770{3}[source]
trust me, I've tried asking for other programs to be on the whitelist. if they didn't allow firefox, they definitely won't allow synching. and I don't wanna get in trouble either lol
replies(3): >>44398221 #>>44398369 #>>44398730 #
22. 127dot1 ◴[] No.44397834{4}[source]
I still use Unison as it is simpler than Syncthing.

It does have GUI, which I use. I wouldn't call it pretty or polished, but it works and I understand how it works and the way it works is exactly how I think syncing should work.

I've also configured it to run a GUI diff tool diffuse to easily combine changes in case of conflicts (when a file was changed on both sides since the last sync).

I wish it was a bit more modern and re-written in a modern language, but that's secondary qualities for a program.

23. lxgr ◴[] No.44397983[source]
99% less configuration and UI surfaces come to mind.

Syncthing is great, but it does include everything and the kitchen sink. That's often great, but not always.

replies(1): >>44400935 #
24. woodrowbarlow ◴[] No.44398114{3}[source]
> This kind of whitelisting does absolutely nothing.

well, aside from getting students more interested in programming, apparently.

replies(1): >>44398677 #
25. ◴[] No.44398221{4}[source]
26. xnx ◴[] No.44398351[source]
Oh no. What makes it so hard? I was happy with the syncthing and syncthingtray setup process.
27. ◴[] No.44398369{4}[source]
28. xeonmc ◴[] No.44398677{4}[source]
Necessity is the mother of invention, constraints the cradle of imagination, and contrarian teenagers the womb of ingenuity.
29. xeonmc ◴[] No.44398730{4}[source]
Can you ask them to permit docker?
30. snackbroken ◴[] No.44398746{3}[source]
In high school they had a few information kiosk computers spread around the various buildings; two in the library, one in the main reception, one in the cafeteria, and one in the mostly unused hallway right outside the computer club room. They were locked down so you could only navigate some intranet pages using a rudimentary on-screen keyboard, with the rest of the hardware in a locked cabinet.

Guess which one got digitally defaced a couple of times each semester. Guess which ones got left alone. Genius move by the IT guy. Every time it happened he would come talk to the club members about the difference between whitehat and blackhat hacking but other than that nobody ever got in trouble.

31. 4k93n2 ◴[] No.44398956[source]
resilio sync (formerly bittorrent sync) has a nicer UI and its probably easier to use. ive been using syncthing for 5+ years now though and can't think of the last time i had any issues with it. its probably just a bit more confusing if youre coming from something more polished and centralised like dropbox or those types
32. Thrymr ◴[] No.44400494{3}[source]
Or just write a python script wrapper for the syncthing client :)
33. sunshine-o ◴[] No.44400935[source]
Absolutely.

Syncthing is great but I really wish for a syncthing-lite you could deploy and configure easily.

The version we have today is really suffering from a lot of legacy.

I remember they are working on a big v2 with a revamp of the API which is a mess but they had to give up on getting rid on that horrible XML config file because it was too much work.

Be aware they also recently silently disabled the sync of symlinks on the android build, what can cause a lot of bad surprises.

They did define some specs of their protocols [0] but i haven't seen a alternative implementation yet.

- [0] https://docs.syncthing.net/specs/index.html

34. johnisgood ◴[] No.44401082[source]
And LocalSend.