Skip to content

Correct the vault path, and take Setup URIs from a configured device - #85

Merged
mathewcsims merged 1 commit into
mainfrom
correct-vault-path-and-device-onboarding
Aug 14, 2026
Merged

Correct the vault path, and take Setup URIs from a configured device#85
mathewcsims merged 1 commit into
mainfrom
correct-vault-path-and-device-onboarding

Conversation

@mathewcsims

Copy link
Copy Markdown
Owner

Two documentation errors, both found by inspecting the running install rather than re-reading the docs. Follow-up to #82, #83, #84.

The vault is at ~/obsidian-work, not ~/Notes

~/Notes was the plan. It is not what got built, and it does not exist.

The location reasoning was always about where — straight in the home directory, away from anything iCloud or Dropbox already syncs, because two sync systems on one vault is how notes get lost — rather than what the folder is called. So the name is free to differ. But a doc that names the wrong directory sends you looking in the wrong place during a restore, which is exactly when it matters.

Corrected in SETUP.md, obsidian-livesync/compose.yaml, .gitignore and kopia-mac/backup.sh.

Bonus, and it closes an open gap: while confirming the path I checked the backup coverage. The vault sits inside the /Users/mathewcsims Kopia source, no ignore rule touches it, and the 2026-08-14 02:00 snapshot captured it at 4.1 MB / 40 files. Earlier I'd flagged this as not yet covered because the vault didn't exist. It does now, and it's backed up — stated as verified rather than assumed.

Setup URIs must come from a configured device

pass-create-obsidian-livesync-setup-uri.sh builds a URI from the values in Pass. A configured device builds one from the settings it is actually using. Those can diverge, and the failure mode is confusing rather than obvious: the new device imports the URI, connects successfully, and then cannot decrypt anything.

On this install they may already have diverged, and there is no way to check. The plugin stores its configuration encrypted at rest — data.json holds encryptedCouchDBConnection, encryptedPassphrase and a named remote profile, with the plaintext couchDB_* and passphrase fields empty. So the passphrase in use cannot be compared against E2EE_PASSPHRASE in Pass.

The script is now documented as bootstrap-only; once any device is configured, use its own "Copy settings as a new Setup URI".

New "Adding a device" section

Step-by-step for the Android tablet, including the ordering constraint (device name before applying anything, since Customisation Sync is on) and one destructive mistake named explicitly:

Never choose "Overwrite Server Data with This Device's Files" on a new device. Its vault is empty and the remote holds everything.

That button is correct during a passphrase rotation on the authoritative Mac and wrong everywhere else — which is what makes it easy to hit by accident.

Docs and comments only. compose.yaml re-checked with podman compose config, backup.sh with sh -n. No behaviour change.

🤖 Generated with Claude Code

Two things the docs got wrong, both found by inspecting the running install
rather than by reading them back.

The vault is at ~/obsidian-work, not ~/Notes. ~/Notes was the plan; it is not
what got built, and it does not exist. The location reasoning was always about
WHERE (straight in the home directory, away from anything iCloud or Dropbox
already syncs) rather than what it is called, so the name is free to differ —
but a doc naming the wrong directory sends you looking in the wrong place
during a restore, which is precisely when it matters. Corrected in SETUP.md,
compose.yaml, .gitignore and kopia-mac/backup.sh.

While confirming that path: the vault IS backed up. It sits inside the
/Users/mathewcsims source, no ignore rule touches it, and the 2026-08-14
02:00 snapshot captured it at 4.1 MB / 40 files. That closes a gap flagged
earlier as open, and the claim is now stated as verified rather than assumed.

Setup URIs must come from an already-configured device, not from
pass-create-obsidian-livesync-setup-uri.sh. That script builds a URI from the
values in Pass; a configured device builds one from the settings it is
actually using, and the two can diverge. When they do, the failure is
confusing rather than obvious: the new device imports the URI, connects, and
then cannot decrypt anything.

On this install they may already have diverged and there is no way to check.
The plugin stores its configuration encrypted at rest — data.json holds
encryptedCouchDBConnection, encryptedPassphrase and a named remote profile,
with the plaintext couchDB_* and passphrase fields empty — so the passphrase
in use cannot be compared against E2EE_PASSPHRASE in Pass. The script is now
documented as bootstrap-only.

Adds an "Adding a device" section for the tablet, including the destructive
mistake worth naming explicitly: never choose "Overwrite Server Data with
This Device's Files" on a new device. Its vault is empty and the remote holds
everything. That button is correct during a passphrase rotation on the
authoritative Mac and wrong everywhere else, which is what makes it easy to
hit by accident.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@mathewcsims
mathewcsims merged commit 009d5b9 into main Aug 14, 2026
7 checks passed
@mathewcsims
mathewcsims deleted the correct-vault-path-and-device-onboarding branch August 14, 2026 10:34
mathewcsims added a commit that referenced this pull request Aug 14, 2026
…ared storage (#86)

The section merged in #85 claimed "On the Android tablet you do not choose the
location: Obsidian creates the vault in its own storage". Wrong, and now
checkable against a real device: the tablet registers
/storage/emulated/0/obsidian-work in LiveSync's own device registry
(_local/obsydian_livesync_milestone), which is Android SHARED storage, not
app-internal.

Same class of error as the ~/Notes correction in that same PR — a plan
written down as though it were fact — which is why the note about it stays in
rather than being quietly dropped.

Records the distinction as deliberate, because the two options differ in ways
that matter for a notes vault: shared storage survives uninstalling Obsidian
and is reachable over USB and by other apps, where app-internal storage is
neither. Shared is the better fit for the same reason the whole arrangement
exists — the notes should not be trapped inside one application — at the cost
of being visible to anything else on the device with storage permission,
which is acceptable on a personal tablet and moot given the plaintext lives
on the Macs anyway.

Also states the one thing that does not follow: the tablet's vault must still
not sit in a folder another sync app manages. Two sync systems on one vault
loses notes on Android exactly as on macOS.

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant