rpi: books-sync — заметки читалки в Obsidian «Книги/» (pull по export-токену)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
8a06244ef4
commit
71486960c5
@@ -0,0 +1,23 @@
|
||||
# Читалка books → Obsidian (rpi)
|
||||
|
||||
С 2026-10-18: заметки, рекапы и диалоги с ИИ из читалки books.ruzzy.dev (fr1) раз в 10 минут попадают в vault
|
||||
владельца, папка **`Книги/`** — файл на книгу, главы разделами. Дальше их разносит Obsidian Sync (Mac, iPhone, Boox).
|
||||
|
||||
- **Доставка — pull с малины по HTTPS** (fr1 до малины за NAT не достучится): `GET https://books.ruzzy.dev/api/export?v=<версия>`
|
||||
с Bearer-токеном **`export:obsidian-rpi`**. Токены с префиксом `export:` читалка пускает **только** на `/api/export`
|
||||
(MCP и остальной API — 401). Ответ без изменений — `{"changed": false}`, данные не передаются.
|
||||
- Токен — `/etc/books-sync/token` (root:astra 640), в читалке — только хэш (`api_token`). Отозвать:
|
||||
`docker compose exec books python3 books_mcp.py revoke export:obsidian-rpi` на fr1; выдать новый — `add-token` (stdin).
|
||||
- `/usr/local/bin/books-sync` (stdlib), `books-sync.timer` (каждые 10 мин после окончания прогона, юзер astra),
|
||||
состояние `/var/lib/books-sync/state.json` (версия, book_id → файл).
|
||||
- **Односторонняя:** всё выше `## Мои мысли` перезаписывается из читалки; сам раздел и всё ниже — не трогается
|
||||
(свои мысли писать туда). Правки заметок — в читалке. Книгу переименовали — файл переименовывается вместе с «Моими мыслями».
|
||||
- Файлы — только для книг, где есть заметки/рекапы/диалоги. Длинные цитаты обрезаются до 1500 знаков.
|
||||
Удалённая из читалки книга — файл остаётся.
|
||||
|
||||
```sh
|
||||
sudo install -m 755 books-sync /usr/local/bin/ && sudo install -d -o astra -g astra -m 750 /var/lib/books-sync
|
||||
sudo install -m 644 systemd/books-sync.* /etc/systemd/system/ && sudo systemctl daemon-reload
|
||||
sudo systemctl enable --now books-sync.timer
|
||||
sudo -u astra books-sync --force # переписать файлы принудительно
|
||||
```
|
||||
Reference in New Issue
Block a user