Obsidian Syncing
Posted on: 2025-02-25
For some time since switching my note taking to Obsidian, I have wanted to keep it synced accross my devices. This has been a long and difficult road. I'll try to order this in the order I did tried it.
S3 Buckets
Originally I tried to sync things with S3 buckets. This was relatively good solution for storage and accessibility, however I ran into 2 problems. Regularly running a script and request costs.
Regularly running a script on MacOS was an extremely infuriating process, loading and unloading a massive XML file to get a script to run in the background was way more complicated than it needed to be. After a few weeks of work I got it functioning, then it suddenly stopped after several months. That's when I gave up on Launchd.
However, running a Crontab script on my Linux computer was extremely easy, and amazing that MacOS would move that far away from Linux to make something so bad as launchd.
The request costs also started to pile up, because S3 charges by requests as well as storage, it becomes important to keep requests down and economical. This can be a surprising issue when there's a sudden spike in requests driving up costs. It's even more concerning when you can't pinpoint why it's happening. I discovered that RClone if not configured properly can use a lot of get requests very quickly. This lead me to make own script which was difficult on it's own due to trying to cover all of the edge cases and conflicts. It was a fun project though.