I’ve just stumbled across Obsidian looking for a better all round notes experience and the software looks great with only one thing missing. I would have added this as a comment to the existing WebDAV request in here but topic is closed. It seems the developers are keen to avoid this feature request but I really hope they will reconsider as it’s something that’s clearly important to a lot of people considering the thread that has been moved to the plugins forum.
Use case or problem
Sync Obsidian notes between PC and mobile devices (iOS/Android) using a self hosted service.
Due to data sovereignty and security requirements from clients, we are not able to use any cloud services for most of the work we do, despite any statements of E2E encryption. Everything must be hosted at known and audited locations. As a result of this, all our mail servers, data storage and services are self hosted on premise using encrypted storage.
While the Obsidian Sync service looks and sounds great, we’re just not able to use it. Same applies for any public sync services (iCloud drive/OneDrive/Dropbox etc).
Proposed solution
I’m conscious that the feedback from Obsidian so far is that they can’t support lots of different sync services, which is understandable. So it would make sense to offer one public (Obsidian Sync) and one private (To be determined). Most of the other sync options (OneDrive, Dropbox etc) are offering an equivalent service and are just options of convenience in most apps. Having a self hosted/private sync option is something entirely different and is mostly a requirement of company/client compliance.
WebDAV makes sense as it’s an RFC protocol and widely supported. SSH also makes sense as it’s a secure protocol but potentially less widely usable for those without a login shell. Personally, either would work here. Both would need server verification (certificate validation for WebDAV, fingerprint for SSH).
I don’t know how Obsidian Sync works, how passive or active the server is regarding version control etc. I’d imagine with E2E encryption that more is done at the client end.
It would be important for the self hosted sync option to maintain diff and versioning as per the public sync option.
In the previous feature request, it was asked that the server side element be encrypted. This makes complete sense. For our purposes it’s not essential as the storage would be encrypted but I would suggest for the wider user scenarios it would be important (for those without encrypted storage/VMs etc).
I use Enpass for my password management and this is stored on a WebDAV location using an encrypted wallet. It works great and it would be nice to have something similar for Obsidian.
Due to the nature of Obsidian’s storage (folder/file based) I’m sure there are challenges in this respect, but I’m sure you’ve got a solution for this!
Please reconsider this request for your core roadmap.
Current workaround (optional)
Current workarounds are a plugin:
https://github.com/remotely-save/remotely-save
The plugin looks interesting but it is made clear that it doesn’t offer any sort of diff facility, using a last modification time to resolve conflicts, potentially losing data when edited on multiple devices.
Or using git and Working Copy for iOS:
The git route is a nice idea too, as I’m really used to git for software development, but it requires third party software and actions on both PC/Mac and on iOS. My setup here is Mac and iOS, so I’d have to manually commit and push on my Mac and then pull using the Working Copy app before using the iOS Obsidian app. After mobile amendments I’d have to commit/push using Working Copy and then pull using git on my Mac. The user journey for this isn’t ideal.
Related feature requests (optional)
https://forum.obsidian.md/t/feature-webdav-sync/16795
https://forum.obsidian.md/t/support-webdav/2324