For the last couple of months I have been looking for a note-taking application that would suit my needs:
- Synchronised on all devices (Windows, Linux, Android and web-client).
- Notes must be available even if device is off-line.
- Markdown-compliant (i.e. saving in text-format) to ensure compatibility with other applications in case of future changes.
- Self-hosting.
- Free
- Client application on Windows, Linux and Android (with “Send To“-integration).
I daily use 3 personal computers to take and refer to notes. I have been saving notes (.txt files), links, screen-copies, photos, etc. to a Samba-share in order to synchronise, but lack formatting options in the notes, and access from mobile devices (phone and tablet).
I tested both Joplin and Trillium. They are both very nice, but both of them store the notes in a database. In addition, Trillium is in maintenance mode (i.e. no development) at the moment.
I finally decided on Obsidian for the notes, and Syncthing for the synchronisation. To set it up on my Proxmox server (Docker in LXC), I followed the steps explained by MRP in this video:
MRP does not show synchronisation with Android-devices. Here is how I do it:
Install Syncthing Fork on your device.
Give all necessary permissions.
Click Show ID on the syncthing server-GUI:
On the Android device, go to “Devices” and “Add a device”. Add by QR-code:
Add Device on the server:
Click on the folder you want to synchronise. Click “Edit” -> “Sharing”, and add the new Android-device:
Accept the Sync-request on the Android-device:
Important: Navigate to:
(/storage/emulated/0/) Android/media/com.github.catfriend1.syncthingandroid/
Create a folder (e.g. Notes). Accept the creation of the Share:
Install Obsidian on the Android device. Grant access to storage. Select “Open folder as vault”. Navigate to the folder defined in Syncthing:
“Use this folder”. Authorise to use storage, and trust community plugins (if prompted).
All files will now be synchronised in real time, and accessible on the Android device(es).
Update: I also installed Linux versions of Syncthing and Obsidian on a Fujitsu Ultrabook U772 running ChromeOS Flex.
Installation is done in the Linux-terminal. First I installed Flatpak, followed by Syncthing:
sudo apt install flatpak
flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub me.kozec.syncthingtk
In “Linux development environment”, select “Port forwarding”, and add port 8384 – TCP. Start Syncthing, and configure as described above.
See detailed explanation on www.addictivetips.com
Install Obsidian:
wget https://github.com/obsidianmd/obsidian-releases/releases/download/v1.6.7/obsidian_1.6.7_amd64.deb
sudo dpkg -i obsidian_1.6.7_amd64.deb
See detailed explanation on https://www.linuxmadesimple.info
In order to save system resources on the Chromebook Flex, I choose to manually start Syncthing before starting Obsidian.