jak0b

joined 5 months ago
[–] jak0b@lemmy.ml 1 points 2 weeks ago (1 children)

Thanks for the kind words! To be fair, Syncthing itself is still actively maintained (they just released 2.0), it was the official Android app that got discontinued due to Google Play issues. Community forks still exist on F-Droid though.

But yeah, Syncthing and Synchi have different workflow. Syncthing needs daemons on all devices and can't sync to a mounted drive, NAS path, or local folders on the same machine. Synchi is on-demand and doesn't care where the two roots are. This is also why I started working on it. I used syncthing for a few years before that.

[–] jak0b@lemmy.ml 2 points 3 weeks ago

Totally fair, Unison is solid and I was inspired by it a lot, but its also the reason why I started working on my own version. I was frustrated with it because on Synology/SMB filesystems it kept seeing changed timestamps as modified files, so I'd constantly get fake changes and transfers. Synchi only treats a file as changed if the content hash actually differs.

Also, I once managed to delete my entire home folder because I tried syncing it with Unison to a server and it synced the empty remote folder back to my home, wiping everything. That's exactly the kind of human error Synchi tries to prevent by being very explicit and verbose about what it's about to do.

Thank you for keeping an eye on it!

[–] jak0b@lemmy.ml 1 points 3 weeks ago (3 children)

Thanks! I've done some testing, nothing scientific, but I can tell you it transfers at about the same speed as other tools I tested, usually limited by network speed. I spent quite some time optimizing how small files are packaged together for transfer, so there's no slowdown even with many small files compared to a single file of the same total size. Android APK idea is not bad though! I've published 2 Android apps before so will definitely look into it. Current Termux terminal approach is definitely not very user friendly.

[–] jak0b@lemmy.ml 1 points 3 weeks ago

Nothing wrong with that at all! You can set up a cron job to run Synchi every 5 minutes and it would work just fine. The only minor downside is some wasted compute since it rescans and hashes everything each run, even if nothing changed. For most files like text it's negligible though.

In the future I might look into a lightweight daemon that uses Linux filesystem notifications (inotify) to trigger a sync when something changes.

[–] jak0b@lemmy.ml 2 points 3 weeks ago

Thanks! If you just need backup, with Synchi you set the 'force=root_a' in config, otherwise its bidirectional sync. If you need pure backups, rsync or similar might still be the better fit as they have some backup specific features.

[–] jak0b@lemmy.ml 11 points 3 weeks ago

I used Syncthing for years, it's great (if you use it and you are happy, then you dont need to switch), but they are quite different. Syncthing requires daemons on all devices and can't sync two local folders on the same machine. Synchi is on-demand, runs only on one side, and doesn't care where the two root folders are.

I wrote a more detailed comparison here: https://jakobkreft.github.io/synchi/why.html

[–] jak0b@lemmy.ml 3 points 3 weeks ago

Thanks for correcting me! Honestly, I haven't used rclone bisync myself so thanks for sharing it. I have to give it a try now. rclone definitely looks a lot more compex feature-rich tool. Synchi I think would be alot simpler to setup and works great for my specific use case of syncing notes and files between my devices. Perhaps, targeted users is the distinction? Anyways I need to try it and see what good things I can learn from it.

[–] jak0b@lemmy.ml 4 points 3 weeks ago

You are correct! no sub-file sync / binary diffing at the moment. It was my deliberate choice to keep complexity down. In practice, text files where diffing helps are tiny and transfer instantly anyway, and large files like images and videos almost never change partially. The main case where it would matter is something like large database files or VM images. That said, it's not off the table for the future!

[–] jak0b@lemmy.ml 2 points 3 weeks ago (2 children)

rclone bisync can do two-way sync, yes, great tool, especially for cloud backends and more automated syncs. Synchi is a lot simpler and more focused: works over SSH, nothing needed on the remote side. The key difference is that Synchi shows you exactly what it's about to do (copy A→B, copy B→A, delete in A, delete in B) and asks before changing anything. Conflicts get an interactive UI. No surprises.

[–] jak0b@lemmy.ml 2 points 3 weeks ago

iOS is tricky since there's no easy way to set up SSH access to the filesystem like you can on Android with Termux. So unfortunately not really supported at the moment. If you have a jailbroken device it might be possible, but that's not something I've tested.

[–] jak0b@lemmy.ml 4 points 3 weeks ago

This is exactly how I use Synchi! Same idea but I use Logseq instead of Obsidian (very similar open-source alternative, worth checking out). Works great for syncing markdown notes between computers and my phone on demand. Of course I need to remember to sync before switching devices, but I prefer this then constant running in the background.

Haven't thought about an Obsidian/Logseq plugin but honestly that sounds like a great idea... For now it's CLI only, but I can definitely see the value.

[–] jak0b@lemmy.ml 1 points 3 weeks ago

I'm not too familiar with Steam Deck, but that sounds like it would work! As long as you can point Synchi at both save directories, it would keep them in sync and save you the manual copy-paste.

1
Synchi - Two-way file sync (jakobkreft.github.io)
 

cross-posted from: https://lemmy.ml/post/44815211

Two-way file sync, no remote agent needed

Today Synchi is finally public! It's designed for syncing files between two locations (local or over SSH). It detects conflicts, and lets you decide what to do.

Why not rsync/Unison/Syncthing?

  • rsync has no memory between runs and is one-way
  • Unison needs to be installed on both sides
  • Syncthing requires always-on daemons

Synchi runs on demand, works over SSH, and only transfers what actually changed.

I use it daily for syncing a shared folder between my machines and an android phone. Works great in combination with Tailscale/WireGuard so that you can sync files remotely.

128
Synchi - Two-way file sync (jakobkreft.github.io)
 

cross-posted from: https://lemmy.ml/post/44815211

Two-way file sync, no remote agent needed

Today Synchi is finally public! It's designed for syncing files between two locations (local or over SSH). It detects conflicts, and lets you decide what to do.

Why not rsync/Unison/Syncthing?

  • rsync has no memory between runs and is one-way
  • Unison needs to be installed on both sides
  • Syncthing requires always-on daemons

Synchi runs on demand, works over SSH, and only transfers what actually changed.

I use it daily for syncing a shared folder between my machines and an android phone. Works great in combination with Tailscale/WireGuard so that you can sync files remotely.

 

Today Synchi is finally public! It's designed for syncing files between two locations (local or over SSH). It detects conflicts, and lets you decide what to do.

Why not rsync/Unison/Syncthing?

  • rsync has no memory between runs and is one-way
  • Unison needs to be installed on both sides
  • Syncthing requires always-on daemons

Synchi runs on demand, works over SSH, and only transfers what actually changed.

I use it daily for syncing a shared folder between my machines and an android phone. Works great in combination with Tailscale/WireGuard so that you can sync files remotely.

 

Hi, I wanted to share Cake Timer here as it might be helpful.

It’s a focus timer I made for studying. In it's core its a circle that represents 24 hours (noon is at the bottom). At midnight the circle is completed and a new cicle starts growing. Logging work sessions create green arcs, so by the end of the day you get a “cake diagram” of your activity. To me its very powerful psichologically, since it visualizes time always running, and when you are not focused the time is clearly wasted.

Features: session tags, daily/weekly/monthly stats, streaks, and a simple to-do list. All data is stored locally in your browser. It's Open source I started it 6 years ago (during the COVID lockdown) and have been improving it ever since.

Website: https://jakobkreft.github.io/CakeTimer

Thanks for your feedback!

 

Hi, exam period is near so I wanted to share this.

I made a 24-hour focus timer to help myself study. Started it 6 years ago (during the covid lockdown) and I’ve been using and improving it ever since.

A full circle represents 24 hours. Each study session adds a green arc, so by the end of the day you get a “cake” of your activity.

It now has session tags, stats (daily/weekly/monthly), streaks, and a simple todo list. And all data is stored on your browser locally.

Source code: https://github.com/jakobkreft/CakeTimer

Website: https://jakobkreft.github.io/CakeTimer

45
submitted 4 months ago* (last edited 4 months ago) by jak0b@lemmy.ml to c/linux@lemmy.ml
 

Hi!

If you’re using redshift on Linux, I made a small tool that might be useful. It automatically sets the screen temperature based on the current time, you just draw a curve for how you want it to behave during the day. Then you can just add it to crontab to run every minute or hour.

 

Hi, I want to share my fist app OnTime. It's a simple "traffic light" timer used by speakers at live events and conferences. Basically the color indicates the time you have left for your speech/presentation.

As far as i know it my app has been used at 3 conferences so far.

Would love to hear your feedback. Thanks!

(Ps. This is my first post on lemmy, still learning it. I hope its ok to promote your own stuff here?)

view more: next ›