When I was migrating away from Google services, I looked at doing a cloud like storage system like NextCloud. But I stumbled upon Syncthing which actually works better for my needs, which I also combined with Zim for shared notes. Syncthing allows you to share files between computers where the files exist on all the computers and are synced, versioning available. This is done by selecting folders to share and then deciding on what machines you want to share them with. This easily allows me to use any computer or virtual machine and have access to the files I need, where they are effectively backed up in multiple locations, and even shared with my smartphone for offsite storage when away from home. And I run a Raspberry Pi 4 as kind of a main server via Docker which is kind of the hub, but you could just share between computers alone, and the Docker version was updated to version 2.0 already this morning. I highly recommend the project.
One note, the default installation uses their cloud discovery server, and you can install your own on a local machine and point your clients to it for added privacy.
https://linuxiac.com/syncthing-2-0-launches-with-major-database-overhaul/
Syncthing 2.0, an open-source peer-to-peer file synchronization tool, debuts with a switch to SQLite, revamped logging, faster syncing, and more.
By Bobby Borisov
Syncthing, a beloved by many self-hosting enthusiasts peer-to-peer file synchronization tool that lets you keep folders in sync across multiple devices without relying on a central server or cloud storage provider, has released the long-awaited version 2.0 — its first entry in the new 2.x series.
First things first – the developers caution that users should “expect some rough edges and keep a sense of adventure.” Still, the update also delivers a significant set of improvements, cleanups, and changes that lay the groundwork for the future.
One of the biggest shifts is the move from the LevelDB database backend to SQLite. This change should make the database easier to maintain and less prone to bugs, though the migration process during the first launch might take a while for users with large setups.

Alongside that, logging has been modernized with structured entries, per-package log level control, and a new WARNING level between INFO and ERROR. The command-line interface has also been streamlined, with old single-dash long options removed, some options renamed, and others reorganized into subcommands.
On the housekeeping front, Syncthing will no longer keep deleted items in the database forever—they’re now forgotten after six months by default, though this can be adjusted or disabled.
Performance also gets a boost as rolling hash detection of shifted data has been dropped, resulting in faster scans and syncing. The “default folder” is gone, and multiple connections are now standard between v2 devices, helping speed up metadata and file transfers.
However, not all news is good for every platform. Due to cross-compilation challenges with SQLite, prebuilt binaries are no longer provided for certain systems, including DragonFly BSD, Illumos, Solaris, Linux PPC64, NetBSD, and some OpenBSD and Windows ARM variants.
Under the hood, there’s a long list of bug fixes and enhancements. Highlights include better handling of deleted file conflict resolution (where deletion can now be the “winning” outcome), the use of Ed25519 keys for sync connections, an option to limit LAN bandwidth, and support for UDP port mapping with QUIC. Many improvements also target memory efficiency, code cleanup, and build process streamlining.
For a full list of all changes in Syncthing 2.0, see the changelog.
If you’re thinking about giving Syncthing a try, our guide, “How to Set Up and Use Syncthing to Sync Files on Linux,” will walk you through everything so you can get up and running quickly and hassle-free.