aboutsummaryrefslogtreecommitdiffstats
path: root/bin/udt-appthemes
AgeCommit message (Collapse)AuthorFilesLines
30 hoursfix(appthemes): take Obsidian vaults from its registry, not a directory scanDanilo M.1-6/+20
The installer found vaults by scanning ~/Documents/Obsidian for .obsidian directories, which cannot tell a vault from a leftover. That parent folder holds an abandoned .obsidian from a vault that no longer exists, so the scan found six vaults where Obsidian knows five, and the extra one got a snippet and an edited appearance.json for something Obsidian never opens. It now reads ~/.config/obsidian/obsidian.json, which is the list Obsidian itself maintains, and only writes to a path that is both registered and still has a .obsidian directory. The stray directory has been restored to its previous contents. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015gbjA2bmswN8jyPDKzrvqe
30 hoursfeat(palette): add Obsidian and Typora as consumersDanilo M.1-0/+88
Both expose a first-class, update-safe theming hook, which is what separates them from the Electron apps that cannot be consumers: Signal, Discord and Spotify ship closed bundles whose only theming route is patching a signed asar that every update reverts. Obsidian gets a CSS snippet rather than a theme, so it layers over whatever theme a vault already uses instead of replacing the user's choice. Enabling it means appending to enabledCssSnippets in each vault's appearance.json, which bin/udt-appthemes does by reading the list and adding to it: rewriting the file would have switched off the layout snippet one vault was already using. Typora's theme is derived from the Dracula theme installed here, whose 350 rules all resolve through :root variables, so only that block is templated and none of the layout is touched. Verified across six vaults, nested ones included: the vault with an existing snippet kept it, a vault with no appearance.json got a valid one, and three consecutive installs leave exactly one udt entry. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015gbjA2bmswN8jyPDKzrvqe