2026-04-28

Syncing Obsidian with Syncthing

I recently wiped my crusty ThinkPad and installed CachyOS after the learning about it from my manager. Furthermore, I’d been dual-booting Ubuntu & Windows for years and neither felt quite right anymore.

The first real problem I ran into wasn’t kernel parameters or display drivers. It was syncing my Obsidian notes to my new CachyOS instance and my Android phone. I have an Obsidian vault on my Mac that I’ve been building up for a few years: research notes, project docs, random threads I haven’t finished pulling on yet. Therefore it was important that I had a mirror of my notes on each device.

The Options

My first instinct was Git. But committing notes after every edit is the kind of friction that sounds fine in theory and quietly ruins the habit in practice. I want to write notes, not manage a repository.

Obsidian Sync exists and is genuinely good, but it’s $5/month for something I’d rather handle myself. iCloud is a non-starter on Linux. Dropbox works but involves handing your files to a third party.

Syncthing kept coming up whenever I looked into this. It’s open-source, peer-to-peer, and has been quietly doing its job since 2013. No subscription, no cloud middleman, no drama.

How Syncthing Actually Works

This is the part I find genuinely interesting. Syncthing doesn’t route your files through a central server. It syncs directly between your devices. On the same network that’s fast, essentially instant. Over the internet it uses global discovery servers to find your devices and figure out how to reach them, then connects them directly. The discovery servers only ever see your device ID and IP address. Your files are encrypted end-to-end and never touch anyone else’s infrastructure.

If a direct connection isn’t possible (say both machines are behind strict firewalls), it falls back to community-run relay servers. Even then the data is encrypted in transit. The relay can’t read your files.

Setup

macOS

brew install syncthing
brew services start syncthing

The brew services command makes it start automatically on login, which is what you want.

Linux

paru -S syncthing
sudo systemctl enable syncthing@yourusername --now

Both machines expose a web UI at https://127.0.0.1:8384. Before doing anything else, lock it down: set a username and password under Actions → Settings → GUI, and enable HTTPS while you’re there. You’ll get a self-signed certificate warning; that’s expected and fine.

Pairing the Devices

My Mac automatically detected the CachyOS machine and made pairing seemless. However, you can do it yourself if it doesn’t automatically do so.

On CachyOS, grab your device ID from Actions -> Show ID. On the Mac, click Add Remote Device and paste it in. Give it a name, save, and accept the connection request on CachyOS. That’s the hard part done.

Sharing the Vault

On Mac, click Add Folder, point it at your Obsidian vault, and under the Sharing tab check your CachyOS device. Save. On CachyOS, accept the incoming folder share and pick a local path. I went with ~/Documents/obsidian_vault. Syncthing creates the folder and starts syncing immediately.

Opening It in Obsidian

paru -S obsidian

Open Obsidian, choose Open folder as vault, navigate to your synced folder. Because Syncthing syncs the .obsidian/ directory too, your plugins, themes, and settings all come across automatically. It just looks like your vault.

Things Worth Knowing

Conflict files are a thing. If you edit the same note on both machines at the same time, Syncthing will create a conflict copy rather than silently overwriting one version with another. This is the right call you’d rather have two copies than lose work, but it’s worth being aware of. Closing Obsidian on one machine before editing on another sidesteps the issue entirely.

Both devices need to be online simultaneously to sync. If your laptop is off, it catches up automatically the next time both machines are running.

You can check sync status anytime at https://127.0.0.1:8384.

Android

The Android side uses Syncthing-Fork, a maintained fork of the original app. Install it, then grant file access and battery optimization when prompted. The battery permission matters: without it, Android will kill the app in the background and syncing won’t happen until you open it again.

Get your Mac’s device ID from Actions → Show ID in the web UI and scan the QR code from the Devices tab in Syncthing-Fork. Then get your Android device ID from hamburger menu -> Show Device ID and add it as a remote device on the PC. Both ends know about each other now.

Before sharing the folder, create an empty directory on Android to receive the vault. Then on the PC, open the obsidian-notes folder, go to Edit -> Sharing, check your Android device, and save. Android will send a notification asking you to confirm the share — tap it, point the sync at your empty folder, and you’re done. If the notification doesn’t appear, the share prompt is also available in Syncthing-Fork’s web GUI.

The initial sync finishes in a minute or two. After that, open Obsidian on Android, choose Open folder as vault, and select the synced folder. Edits made on Android sync back to the desktop automatically. Syncthing also has a file versioning option if you want an extra layer of backup on top of Obsidian’s built-in File Recovery plugin.

Final Thoughts

The whole setup took maybe fifteen minutes. Since then it’s been completely invisible. My notes are on both machines, automatically in sync, stored entirely under my own control.

If you’re running a mixed Mac/Linux setup and looking for a sync solution that doesn’t require trusting a third party with your files, Syncthing is the answer I wish I’d found sooner.