Failed to authenticate. API Error: 401 Invalid authentication credentials
[2026-05-20] vault sync
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
---
|
||||
date: 2026-05-20
|
||||
status: complete
|
||||
---
|
||||
# Wiki Curation — 2026-05-20
|
||||
|
||||
## Done
|
||||
|
||||
- **Conflict scan:** No git conflict markers found across ~/obsidian/ ✅
|
||||
- **Previous run (2026-05-19):** Status = complete, no Unfinished — nothing to resume
|
||||
- **Orientation:** Read SCHEMA.md (21 pages in table), index.md (27 pages), log.md (last 50 lines)
|
||||
- **Change detection since 2026-05-19 02:00:**
|
||||
- `wiki/tech/arr-stack-kraken.md` — NEW page with **frontmatter corruption** (duplicate block embedded in body from likely Obsidian sync collision) → fixed ✅
|
||||
- `wiki/tech/htpc-kodi-layout.md` — NEW page missing namespace/dates → fixed ✅
|
||||
- `family/how-to/switch-emulation-rom-infra.md` — Ryujinx 1.3.3 setup, qBittorrent 5.2.0, Jackett Docker config, ROM flow research → crystallized to `tech/htpc-steam-emulators.md`
|
||||
- `family/projects/watchlist-discover.md` — NEW: discover cron details, filter thresholds, KP API endpoint → incorporated into `kraken-media-stack` + synthesis page
|
||||
- `family/projects/media-toolbox-kraken.md` — router.py details, Jellyfin library structure (2026-05-18 session 16) → updated `kraken-media-stack`
|
||||
- `personal/projects/psychologist-app/` — product/marketing work: not wiki domain, skipped
|
||||
- `personal/psychology/` — personal content: not wiki domain
|
||||
- **Inbox:** `raw/inbox/` empty ✅
|
||||
- **Sessions (2026-05-20):** 6 sessions checked. 2 wiki-relevant (watchlist-discover creation, scheduled flow discussion). Knowledge crystallized from family/ files; session content itself is operational/personal
|
||||
- **Corruption fix:** `tech/arr-stack-kraken.md` — duplicate frontmatter embedded mid-body (`.json---\ntitle:...---`). Synthesized correct Pitfall text (OMV `.json$` regex), removed corruption, added namespace/confidence fields
|
||||
- **Pages created (1):**
|
||||
- `wiki/concepts/watchlist-automation.md` — synthesis: full watchlist→Jellyfin automation flow (discover→thumbs→sync-down→*arr→router→Jellyfin); covers cron IDs, indexer config, router logic, open tasks
|
||||
- **Pages updated (11):**
|
||||
- `tech/htpc-steam-emulators.md` — major expansion: Ryujinx Switch section, prod.keys sources, DKC compatibility, qBittorrent API, Jackett Docker + ROM search flow; added See Also with 3 wikilinks
|
||||
- `tech/arr-stack-kraken.md` — corruption fixed; namespace/confidence frontmatter added
|
||||
- `tech/htpc-kodi-layout.md` — namespace/dates/confidence frontmatter added
|
||||
- `tech/media-pipeline-pitfalls.md` — namespace frontmatter added
|
||||
- `tech/kraken-network.md` — namespace frontmatter added
|
||||
- `tech/vault-namespace.md` — namespace frontmatter added
|
||||
- `concepts/kraken-media-stack.md` — Watchlist Automation section updated (discover cron, cron IDs); added Router Script section + Jellyfin library table (2026-05-20); added See Also with 4 wikilinks
|
||||
- `concepts/vault-strategy.md` — added 2 See Also wikilinks (knowledge-lifecycle, vault-namespace)
|
||||
- `entities/library-app.md` — added truenas-inpxer wikilink in See Also
|
||||
- `personal-os-architecture.md` — added See Also section (executor-orchestrator, user-profile, kraken-media-stack, agent-rules)
|
||||
- `wiki/index.md` — added 4 new entries (arr-stack-kraken, htpc-kodi-layout, watchlist-automation, updated htpc-steam-emulators summary); bumped to 31 pages, 2026-05-20
|
||||
- **Synthesis task:** `concepts/watchlist-automation.md` — synthesizes 4+ co-occurring pages (arr-stack-kraken, kraken-media-stack, hermes-docker-kraken, watchlist-discover)
|
||||
- **Orphan fixes (5 resolved):**
|
||||
- `executor-orchestrator` ← personal-os-architecture See Also
|
||||
- `watchlist-automation` ← kraken-media-stack See Also
|
||||
- `knowledge-lifecycle` ← vault-strategy See Also
|
||||
- `truenas-inpxer` ← library-app See Also
|
||||
- `vault-namespace` ← vault-strategy See Also
|
||||
- **Remaining orphan:** `user-profile` — linked from personal-os-architecture now, may still show as orphan depending on link scan direction; low priority
|
||||
- **Lint (31 pages):** 5 missing namespace fields fixed; 5 orphans resolved via new inbound links; no broken wikilinks; no pages over 200 lines; no log rotation needed
|
||||
|
||||
## Validation fixes
|
||||
|
||||
- none (all 12 modified files passed clean on final check)
|
||||
|
||||
## Unresolved conflicts
|
||||
|
||||
(none)
|
||||
|
||||
## Unfinished
|
||||
|
||||
(none)
|
||||
|
||||
## Stats
|
||||
|
||||
- Conflicts resolved: 0 (no git conflicts found)
|
||||
- Corruption fixes: 1 (arr-stack-kraken duplicate frontmatter)
|
||||
- Inbox processed: 0 (empty)
|
||||
- Sessions crystallized: 0 / 6 checked (knowledge from family/ files, not session text)
|
||||
- Synthesis pages created: 1 (concepts/watchlist-automation)
|
||||
- Pages created: 1 (watchlist-automation)
|
||||
- Pages updated: 11 (htpc-steam-emulators, arr-stack-kraken, htpc-kodi-layout, media-pipeline-pitfalls, kraken-network, vault-namespace, kraken-media-stack, vault-strategy, library-app, personal-os-architecture, index)
|
||||
- Lint issues: 5 namespace fields + 5 orphans = 10 fixed, 1 orphan remaining (user-profile — low priority)
|
||||
- Validation issues fixed: 0
|
||||
@@ -1,14 +1,16 @@
|
||||
---
|
||||
title: Kraken Media Server — Full Stack
|
||||
namespace: work
|
||||
created: '2026-05-18'
|
||||
updated: '2026-05-19'
|
||||
updated: '2026-05-20'
|
||||
last_synced: '2026-05-20'
|
||||
type: concept
|
||||
tags:
|
||||
- kraken
|
||||
- media-pipeline
|
||||
- infra
|
||||
- synthesis
|
||||
confidence: high
|
||||
confidence: 0.9
|
||||
---
|
||||
# Kraken Media Server — Full Stack
|
||||
|
||||
@@ -72,20 +74,59 @@ Prowlarr (RuTracker) → Radarr (7878) / Sonarr (8989)
|
||||
- ⏳ Трекер-парсеры (Steps D-F): audio/non-video scanner, fixture тесты для rutor/nnm-club
|
||||
- ⏳ Transmission torrent-fix: 271/293 файлов без привязки после pipeline apply
|
||||
|
||||
## Watchlist Sync (в разработке, 2026-05-19)
|
||||
## Watchlist Automation (обновлено 2026-05-20)
|
||||
|
||||
Python-сервис `~/Developer/watchlist-sync` для автоматической синхронизации `family/documents/movies-watchlist.md` с Radarr/Sonarr/Jellyfin:
|
||||
- **parse** → `[ ]`/`[x]`/`❓`/`⬇️` статусы из .md
|
||||
Два cron-job'а на Eagle — автоматическое пополнение очереди просмотра:
|
||||
|
||||
| Job | Расписание | Действие |
|
||||
|-----|----------|---------|
|
||||
| `watchlist-resolve` (`16438138c8c5`) | ежедн. 09:00 | SSH на Кракен → `watchlist-sync resolve` → commit |
|
||||
| `watchlist-sync-down` (`7d12b6d48786`) | ежедн. 10:00 | `process-thumbs --apply` → `sync-down --apply` → добавить в Radarr/Sonarr |
|
||||
| `watchlist-discover` (`6aba6979b8c4`) | вс 09:00 | KP API топ новинок → добавить в секцию "Новинки 👍/👎" |
|
||||
|
||||
Python-сервис `~/Developer/watchlist-sync`:
|
||||
- **parse** → `[ ]`/`[x]`/`👍`/`👎` статусы из .md
|
||||
- **resolve** → TMDB + KP API → ID + тип (movie/tv)
|
||||
- **sync-down** → добавить в Radarr/Sonarr батчами по 5
|
||||
- **discover** → KP API топ фильмов 2024-2025 (IMDb≥7.0 или KP≥7.0) → секция "Новинки"
|
||||
- **sync-down** → добавить `👍` в Radarr/Sonarr батчами по 5
|
||||
- **sync-up** → Jellyfin watched history → `[x]` в .md
|
||||
- **AI curation** → Hermes Kraken cron, disambiguation ❓ → Zulip `#personal::Kraken torrents`
|
||||
|
||||
Stage 2 (после 50+ просмотров): персонализированные рекомендации по профилю (3 списка: вдвоём / один / семейное).
|
||||
## Router Script — Жанровая маршрутизация
|
||||
|
||||
`router.py` — запускается из Sonarr/Radarr Custom Script при импорте. Читает жанры из NFO (или TMDb API) и создаёт symlink в нужную тематическую библиотеку Jellyfin:
|
||||
|
||||
```
|
||||
movies-radarr/ → Animation + !R/18+ → /media/cartoons/
|
||||
movies-radarr/ → Documentary → /media/documentaries/
|
||||
movies-radarr/ → прочее → /media/movies/
|
||||
series-sonarr/ → аналогично для series/cartoons-series/documentaries-series/
|
||||
```
|
||||
|
||||
Запуск: `python3 /srv/.../docker/media-pipeline/router.py [--apply]`
|
||||
|
||||
## Jellyfin библиотеки (актуально 2026-05-20)
|
||||
|
||||
| Библиотека | Тип | Пути |
|
||||
|---|---|---|
|
||||
| Movies | movies | `/media/movies` |
|
||||
| Series | tvshows | `/media/series` |
|
||||
| Cartoons | movies | `/media/cartoons` |
|
||||
| Cartoon Series | tvshows | `/media/cartoons-series` |
|
||||
| Documentaries | movies | `/media/documentaries` |
|
||||
| Documentary Series | tvshows | `/media/documentaries-series` |
|
||||
|
||||
`movies-radarr` и `series-sonarr` НЕ в библиотеках Jellyfin — router script создаёт symlinks.
|
||||
|
||||
|
||||
## Агент-доступ
|
||||
|
||||
Kraken-Hermes в контейнере (`hermes-kraken`) доступен через Zulip. Скачать медиа:
|
||||
- Сериал → Sonarr API → Transmission
|
||||
- Фильм → Radarr API → Transmission
|
||||
- Только через curl (python3 запрещён в скилле)
|
||||
|
||||
## See Also
|
||||
|
||||
- [[concepts/watchlist-automation]] — полный flow watchlist → Radarr/Sonarr → Jellyfin
|
||||
- [[tech/arr-stack-kraken]] — *arr stack pitfalls: nginx, DNS, grab limits
|
||||
- [[tech/jellyfin-transcode-rpi5]] — Jellyfin PGS/ASS subtitle pitfalls on RPi5
|
||||
- [[tech/hermes-docker-kraken]] — Hermes Docker на Кракене
|
||||
|
||||
@@ -57,3 +57,5 @@ sources:
|
||||
- [[wiki-ingest-process]] — как wiki-curation работает
|
||||
- [[personal-os-architecture]] — полная картина системы
|
||||
- [[concepts/agent-memory-architecture]] — память агента (семантический уровень)
|
||||
- [[concepts/knowledge-lifecycle]] — как знания кристаллизируются из сессий в wiki
|
||||
- [[tech/vault-namespace]] — правила namespace: work/personal/family
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
---
|
||||
title: Watchlist Automation — Полный Flow
|
||||
namespace: personal
|
||||
created: '2026-05-20'
|
||||
updated: '2026-05-20'
|
||||
last_synced: '2026-05-20'
|
||||
type: concept
|
||||
tags:
|
||||
- kraken
|
||||
- watchlist
|
||||
- automation
|
||||
- synthesis
|
||||
confidence: 0.9
|
||||
---
|
||||
# Watchlist Automation — Полный Flow
|
||||
|
||||
Синтез: как `family/documents/movies-watchlist.md` превращается в скачанный контент. Объединяет [[tech/arr-stack-kraken]], [[concepts/kraken-media-stack]], [[tech/hermes-docker-kraken]].
|
||||
|
||||
## Полная цепочка
|
||||
|
||||
```
|
||||
[вс 09:00] watchlist-discover ← KP API топ фильмов 2024-2025
|
||||
↓ добавляет в секцию "Новинки 👍/👎"
|
||||
movies-watchlist.md
|
||||
Alex ставит 👍 / 👎
|
||||
↓
|
||||
[ежедн 09:00] watchlist-resolve ← SSH Кракен → resolve → commit
|
||||
[ежедн 10:00] watchlist-sync-down
|
||||
→ process-thumbs (перемещает 👍 → начало списка)
|
||||
→ sync-down (добавляет батч в Radarr/Sonarr)
|
||||
↓
|
||||
Radarr (7878) / Sonarr (8989)
|
||||
→ Prowlarr (9696) → RuTracker / Kinozal(M) / NoNaMe / etc.
|
||||
→ Transmission (9091)
|
||||
→ /media/movies-radarr или /media/series-sonarr
|
||||
↓
|
||||
router.py (Custom Script) → читает жанры из NFO/TMDb
|
||||
→ symlink в /media/{movies,cartoons,documentaries,...}/
|
||||
↓
|
||||
Jellyfin (8096) → rescan → виден контент
|
||||
```
|
||||
|
||||
## Статусы в movies-watchlist.md
|
||||
|
||||
| Символ | Значение | Действие |
|
||||
|--------|---------|---------|
|
||||
| `[ ]` | не смотрел, в очереди | sync-down добавляет в Radarr/Sonarr |
|
||||
| `[x]` | просмотрено | sync-up из Jellyfin watched history |
|
||||
| `👍` | нравится (новинка) | process-thumbs переносит в начало → попадёт в sync-down |
|
||||
| `👎` | не хочу (новинка) | process-thumbs перемещает в "Новинки 👎" |
|
||||
| `🗓️` | upcoming (ещё не вышел) | discover помечает, не скачивается |
|
||||
|
||||
## Cron Jobs на Eagle
|
||||
|
||||
| Job | ID | Расписание |
|
||||
|-----|-----|-----------|
|
||||
| `watchlist-discover` | `6aba6979b8c4` | вс 09:00 |
|
||||
| `watchlist-resolve` | `16438138c8c5` | ежедн. 09:00 |
|
||||
| `watchlist-sync-down` | `7d12b6d48786` | ежедн. 10:00 |
|
||||
|
||||
## Discover — Фильтрация
|
||||
|
||||
| Тип | Порог |
|
||||
|-----|-------|
|
||||
| Мировые | IMDb ≥ 7.0 или KP ≥ 7.0 |
|
||||
| Российские | KP ≥ 8.5 (защита от накрутки) |
|
||||
| Upcoming | год ≥ текущий−1 |
|
||||
| Минимум голосов | IMDb ≥ 1000 или KP ≥ 500 |
|
||||
|
||||
KP API endpoint: `https://api.poiskkino.dev/v1.4/movie` (redirect с api.kinopoisk.dev).
|
||||
|
||||
## *arr Stack — Индексеры (Prowlarr)
|
||||
|
||||
| ID | Имя | Тип | Примечание |
|
||||
|----|-----|-----|-----------|
|
||||
| 1 | RuTracker | semi-private | блокирует при rate limit на сутки |
|
||||
| 2 | RuTor | public | поиск по imdbid |
|
||||
| 3 | Byrutor | public | |
|
||||
| 4 | NoNaMe Club | semi-private | анонимный |
|
||||
| 5 | Kinozal | semi-private | резерв |
|
||||
| 6 | Kinozal (M) | semi-private | магнет ✅ — без grab limit, **предпочтительный** |
|
||||
|
||||
**Pi-hole pitfall:** блокирует `skyhook.sonarr.tv` → Sonarr/Radarr поиск молча не запускается. Фикс: `dns: [8.8.8.8]` в docker-compose.yml.
|
||||
|
||||
## Router Script — Маршрутизация по жанру
|
||||
|
||||
После импорта Sonarr/Radarr: `router.py --apply` создаёт symlinks:
|
||||
- Animation (не R/18+) → `/media/cartoons/` или `/media/cartoons-series/`
|
||||
- Documentary → `/media/documentaries/` или `/media/documentaries-series/`
|
||||
- Прочее → `/media/movies/` или `/media/series/`
|
||||
|
||||
Kopirует NFO + постер рядом с symlink (Jellyfin не видит метадату через symlink напрямую).
|
||||
|
||||
## Open Tasks (2026-05-20)
|
||||
|
||||
- 🟡 Передавать Transmission locations через router script при каждом импорте (сейчас вручную)
|
||||
- 🔴 rsync невыполненных фильмов с HTPC на Кракен (`Фильмы не перенесенные с htpc на кракен.md`)
|
||||
- 🟡 Watchlist sync-up: добавить перенесённые фильмы в нужные разделы
|
||||
|
||||
## See Also
|
||||
|
||||
- [[tech/arr-stack-kraken]] — детальные питфоллы *arr стека
|
||||
- [[concepts/kraken-media-stack]] — полная архитектура медиасервера
|
||||
- [[tech/hermes-docker-kraken]] — Hermes на Кракене
|
||||
- [[tech/jellyfin-transcode-rpi5]] — Jellyfin PGS/ASS питфоллы
|
||||
@@ -67,3 +67,4 @@ sources:
|
||||
|
||||
- [[personal-os-architecture]] — Taiga как хост, TrueNAS infrastructure
|
||||
- [[personal-os-schema]] — паттерны хранения данных в personal-os
|
||||
- [[tech/truenas-inpxer]] — TrueNAS inpxer: пути, Badger DB lock питфол
|
||||
|
||||
+5
-2
@@ -9,7 +9,7 @@ updated: '2026-05-16'
|
||||
# Wiki Index
|
||||
|
||||
Auto-maintained catalog of all pages in `wiki/`. Updated by the daily curation cron.
|
||||
> Last updated: 2026-05-19 | Total pages: 27
|
||||
> Last updated: 2026-05-20 | Total pages: 31
|
||||
|
||||
## Core Architecture
|
||||
|
||||
@@ -37,6 +37,7 @@ Auto-maintained catalog of all pages in `wiki/`. Updated by the daily curation c
|
||||
- [[concepts/kraken-media-stack]] — Full Kraken media server: media-pipeline (Swift) + *arr stack + Jellyfin + watchlist-sync; pitfalls synthesis
|
||||
- [[concepts/executor-orchestrator]] — Executor-as-worker pattern: Eagle spawns Executor as separate Hermes profile; auto-approval rules; GTD orchestration idea
|
||||
- [[concepts/knowledge-lifecycle]] — How knowledge moves from session to permanent memory: barriers, tools, degradation risks
|
||||
- [[concepts/watchlist-automation]] — Full watchlist automation flow: discover → watchlist.md → Radarr/Sonarr → router.py → Jellyfin
|
||||
|
||||
## Entities
|
||||
|
||||
@@ -47,10 +48,12 @@ Auto-maintained catalog of all pages in `wiki/`. Updated by the daily curation c
|
||||
- [[tech/media-pipeline-pitfalls]] — Swift media-pipeline: §9.x score engine, transliteration, KP rate limit, Docker run pattern
|
||||
- [[tech/vault-namespace]] — Vault namespace rules: work/personal/family separation, write permissions, agent access
|
||||
- [[tech/kraken-network]] — Kraken network topology, WireGuard, media volume mount paths, *arr stack, HDD error recovery
|
||||
- [[tech/htpc-steam-emulators]] — HTPC Steam/emulator rules, gamepad config, save paths
|
||||
- [[tech/htpc-steam-emulators]] — HTPC Steam/emulator rules, Ryujinx Switch setup, qBittorrent API, Jackett ROM search, gamepad config
|
||||
- [[tech/htpc-kodi-layout]] — HTPC Kodi NFO structure, symlinks, media layout, Wake-on-LAN
|
||||
- [[tech/hermes-docker-kraken]] — Hermes Docker on Kraken: docker run rules, HERMES_SKIP_CHOWN, pitfalls
|
||||
- [[tech/jellyfin-transcode-rpi5]] — Jellyfin PGS/ASS subtitle transcoding pitfalls on RPi5; pgsrip conversion; Transmission hook
|
||||
- [[tech/truenas-inpxer]] — TrueNAS inpxer book library: paths, Badger DB lock pitfall
|
||||
- [[tech/arr-stack-kraken]] — *arr stack on Kraken: Prowlarr/Radarr/Sonarr nginx pitfalls, DNS, grab limits, indexer config
|
||||
|
||||
## Workflows
|
||||
|
||||
|
||||
+40
@@ -171,3 +171,43 @@ Activity log for the daily Eagle wiki-curation cron job.
|
||||
- **Wikilinks added:** all 3 new tech pages now have 2+ outbound wikilinks ✅
|
||||
- **Lint:** 27 pages scanned; frontmatter ✅; wikilinks ✅; orphans: none ✅; sizes: all <200 lines ✅
|
||||
- **Validation:** 7 files checked — all OK ✅
|
||||
|
||||
|
||||
## [2026-05-20] wiki-curation | 1 corruption fixed, 1 page created, 8 pages updated, 5 orphans fixed
|
||||
|
||||
- **Conflict scan:** No git conflict markers found across ~/obsidian/ ✅
|
||||
- **Previous run (2026-05-19 02:00):** Status = complete, no Unfinished — nothing to resume
|
||||
- **Change detection:**
|
||||
- `wiki/tech/arr-stack-kraken.md` — NEW (2026-05-19): *arr stack pitfalls; had frontmatter corruption (embedded frontmatter in body) → fixed ✅
|
||||
- `wiki/tech/htpc-kodi-layout.md` — NEW (2026-05-19): Kodi NFO layout; missing namespace/dates → fixed ✅
|
||||
- `family/how-to/switch-emulation-rom-infra.md` — Ryujinx, qBittorrent, Jackett research → crystallized to htpc-steam-emulators.md ✅
|
||||
- `family/projects/watchlist-discover.md` — NEW: discover cron details → incorporated into kraken-media-stack + watchlist-automation synthesis
|
||||
- `family/projects/media-toolbox-kraken.md` — router script, Jellyfin library structure (2026-05-18 update) → updated kraken-media-stack ✅
|
||||
- `personal/projects/psychologist-app/` — psychologist app (not wiki domain, skipped)
|
||||
- `personal/psychology/` — personal, not wiki domain
|
||||
- **Inbox:** raw/inbox/ empty ✅
|
||||
- **Sessions crystallized (2026-05-20):** 6 sessions checked; 2 relevant (watchlist-discover creation, watchlist flow). Knowledge crystallized via family/ file changes instead. Psychologist/personal sessions: not wiki domain.
|
||||
- **Corruption fix:** `tech/arr-stack-kraken.md` — duplicate frontmatter block embedded in body (Obsidian save collision). Synthesized correct content, removed corruption.
|
||||
- **Pages created (1):** `concepts/watchlist-automation.md` — synthesis of watchlist flow across 4+ pages (discover → watchlist.md → *arr → router → Jellyfin)
|
||||
- **Pages updated (8):**
|
||||
- `tech/htpc-steam-emulators.md` — added Ryujinx Switch section, qBittorrent API, Jackett setup, ROM flow (from family/how-to/switch-emulation-rom-infra.md)
|
||||
- `tech/arr-stack-kraken.md` — corruption fixed; added namespace/confidence frontmatter
|
||||
- `tech/htpc-kodi-layout.md` — added namespace/dates frontmatter
|
||||
- `tech/media-pipeline-pitfalls.md` — added namespace frontmatter
|
||||
- `tech/kraken-network.md` — added namespace frontmatter
|
||||
- `tech/vault-namespace.md` — added namespace frontmatter
|
||||
- `concepts/kraken-media-stack.md` — updated Watchlist Automation section (discover cron, process-thumbs); added Router Script + Jellyfin library table (2026-05-20 state); added See Also wikilinks
|
||||
- `concepts/vault-strategy.md` — added 2 wikilinks (knowledge-lifecycle, vault-namespace)
|
||||
- `entities/library-app.md` — added truenas-inpxer wikilink
|
||||
- `personal-os-architecture.md` — added See Also section with executor-orchestrator, user-profile links
|
||||
- `wiki/index.md` — added 4 new pages (arr-stack-kraken, htpc-kodi-layout, watchlist-automation; updated htpc-steam-emulators summary); bumped to 31 pages, 2026-05-20
|
||||
- **Orphan fixes (5 resolved via new inbound links):**
|
||||
- executor-orchestrator ← personal-os-architecture (See Also)
|
||||
- watchlist-automation ← kraken-media-stack (See Also)
|
||||
- knowledge-lifecycle ← vault-strategy (See Also)
|
||||
- truenas-inpxer ← library-app (See Also)
|
||||
- vault-namespace ← vault-strategy (See Also)
|
||||
- user-profile ← personal-os-architecture (See Also) [remaining: still orphan — needs inbound from user-profile-specific pages]
|
||||
- **Synthesis:** `concepts/watchlist-automation.md` — synthesizes arr-stack-kraken + kraken-media-stack + hermes-docker-kraken + watchlist-discover
|
||||
- **Lint:** 31 pages; namespace fixes (5 pages); orphan links added; no broken wikilinks; no pages over 200 lines
|
||||
- **Validation:** 12 files checked — all OK ✅
|
||||
|
||||
@@ -183,3 +183,10 @@ Media stack on Kraken: full *arr stack (Prowlarr/Radarr/Sonarr) + Transmission +
|
||||
│ └── apple-browsers/ ← .cursor/rules copies (.md) + vm-ui-testing.md
|
||||
└── personal/ family/
|
||||
```
|
||||
|
||||
## See Also
|
||||
|
||||
- [[concepts/executor-orchestrator]] — Executor as separate Hermes profile: auto-approval rules, GTD orchestration
|
||||
- [[user-profile]] — Alex's profile and goals
|
||||
- [[concepts/kraken-media-stack]] — Kraken full media stack
|
||||
- [[personal-os-agent-rules]] — Agent behavior rules
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
title: "*arr Stack на Кракене — Pitfalls & Config"
|
||||
namespace: work
|
||||
type: reference
|
||||
tags:
|
||||
- kraken
|
||||
@@ -9,7 +10,9 @@ tags:
|
||||
- arr
|
||||
- pitfalls
|
||||
created: '2026-05-19'
|
||||
updated: '2026-05-19'
|
||||
updated: '2026-05-20'
|
||||
last_synced: '2026-05-20'
|
||||
confidence: 0.9
|
||||
---
|
||||
# *arr Stack на Кракене — Pitfalls & Config
|
||||
|
||||
@@ -31,22 +34,7 @@ Prowlarr (9696) → Radarr (7878) + Sonarr (8989) → Transmission (9091) → Je
|
||||
|
||||
Конфиг: `/etc/nginx/openmediavault-webgui.d/media-services.conf` (используем `^~` prefix чтобы перебить OMV regex `.json` location).
|
||||
|
||||
**⚠️ Pitfall:** OMV имеет regex `location ~* \.json---
|
||||
title: "*arr Stack на Кракене — Pitfalls & Config"
|
||||
type: reference
|
||||
tags:
|
||||
- kraken
|
||||
- radarr
|
||||
- sonarr
|
||||
- prowlarr
|
||||
- arr
|
||||
- pitfalls
|
||||
created: '2026-05-19'
|
||||
updated: '2026-05-19'
|
||||
---
|
||||
# *arr Stack на Кракене — Pitfalls & Config
|
||||
|
||||
который перехватывает все JSON запросы (в т.ч. `/sonarr/initialize.json`). Без `^~` сервисы открываются белым экраном.
|
||||
**⚠️ Pitfall:** OMV имеет regex `location ~* \.json$` который перехватывает все JSON запросы (в т.ч. `/sonarr/initialize.json`). Без `^~` сервисы открываются белым экраном.
|
||||
|
||||
## Docker Networks
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
---
|
||||
title: "HTPC — Kodi NFO, Симлинки, Media Layout"
|
||||
namespace: personal
|
||||
type: reference
|
||||
tags:
|
||||
- htpc
|
||||
@@ -9,7 +10,9 @@ tags:
|
||||
- media
|
||||
- wol
|
||||
created: '2026-05-19'
|
||||
updated: '2026-05-19'
|
||||
updated: '2026-05-20'
|
||||
last_synced: '2026-05-20'
|
||||
confidence: 0.9
|
||||
---
|
||||
# HTPC — Kodi NFO, Симлинки, Media Layout
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
---
|
||||
title: HTPC — Steam, Эмуляторы, Геймпады
|
||||
namespace: personal
|
||||
created: '2026-05-17'
|
||||
updated: '2026-05-17'
|
||||
updated: '2026-05-20'
|
||||
last_synced: '2026-05-20'
|
||||
type: reference
|
||||
tags:
|
||||
- htpc
|
||||
@@ -9,7 +11,7 @@ tags:
|
||||
- emulators
|
||||
- gamepads
|
||||
- bazzite
|
||||
confidence: high
|
||||
confidence: 0.9
|
||||
---
|
||||
# HTPC — Steam, Эмуляторы, Геймпады
|
||||
|
||||
@@ -38,3 +40,126 @@ confidence: high
|
||||
- 2× 8BitDo (Xbox-схема, X-режим)
|
||||
- Dolphin: SDL-маппинг, Classic Controller
|
||||
- DKC Returns: X = Roll+Shake
|
||||
|
||||
## Switch Эмуляция — Ryujinx (Ryubing)
|
||||
|
||||
Оригинальный Ryujinx и Yuzu закрыты (Nintendo судится). Живые форки:
|
||||
|
||||
| Эмулятор | Основа | Статус | Платформа |
|
||||
|----------|--------|--------|-----------|
|
||||
| **Ryujinx (Ryubing/GreemDev)** | Ryujinx | ✅ Активно | Flatpak `io.github.ryubing.Ryujinx` |
|
||||
| Eden | Yuzu | ✅ Активно | Android |
|
||||
| Citron | Yuzu | Активно | Альтернатива |
|
||||
|
||||
**Для HTPC: Ryujinx (Ryubing) v1.3.3 через Flatpak.**
|
||||
|
||||
### Установка (✅ 2026-05-16)
|
||||
|
||||
```bash
|
||||
flatpak install -y --user flathub io.github.ryubing.Ryujinx
|
||||
```
|
||||
|
||||
**Пути (Flatpak):**
|
||||
```
|
||||
# Keys:
|
||||
~/.var/app/io.github.ryubing.Ryujinx/data/Ryujinx/system/prod.keys
|
||||
~/.var/app/io.github.ryubing.Ryujinx/data/Ryujinx/system/title.keys
|
||||
|
||||
# ROMs:
|
||||
~/Emulation/roms/switch/ (Steam ROM Manager подхватит)
|
||||
|
||||
# Saves:
|
||||
~/.var/app/io.github.ryubing.Ryujinx/data/Ryujinx/bis/user/save/
|
||||
```
|
||||
|
||||
### prod.keys — Источники
|
||||
|
||||
- **GitHub THZoria/NX_Firmware** ⭐ — актуальная версия firmware + keys (22.1.0, апр. 2026)
|
||||
- **4PDA** — тема Switch ROM'ов, в шапке ссылки на firmware/keys
|
||||
- **Rutracker** — раздел `/f=1605`, в шапках тем часто есть keys
|
||||
|
||||
**Firmware** устанавливается через GUI: Ryujinx → Tools → Install Firmware → Install from ZIP
|
||||
Keys и firmware должны быть одной версии.
|
||||
|
||||
### ROMs форматы
|
||||
- `.nsp` — предпочтительный (Nintendo Submission Package)
|
||||
- `.xci` — картридж-дамп, тоже работает
|
||||
|
||||
### DKC Tropical Freeze — совместимость
|
||||
Подтверждено: работает на схожем железе (i5-6500 + GTX 1050 Ti). HTPC (i7-6800K + RX 570, Vulkan) — ожидается Playable–Perfect.
|
||||
|
||||
## qBittorrent на HTPC (✅ 2026-05-16)
|
||||
|
||||
```bash
|
||||
flatpak install -y --user flathub org.qbittorrent.qBittorrent
|
||||
# Версия 5.2.0
|
||||
```
|
||||
|
||||
| Настройка | Значение |
|
||||
|-----------|----------|
|
||||
| Web UI | http://192.168.1.86:8080 |
|
||||
| BitTorrent port | 6881 |
|
||||
| Download dir | `/run/media/bazzite/Data/downloads/complete` |
|
||||
| Incomplete dir | `/run/media/bazzite/Data/downloads/incomplete` |
|
||||
|
||||
**Sonarr/Radarr интеграция:** Settings → Download Clients → Add → qBittorrent (host: `192.168.1.86`, port: `8080`).
|
||||
|
||||
### API — добавить торрент
|
||||
|
||||
```bash
|
||||
# Логин
|
||||
SID=$(curl -s -i --header 'Referer: http://192.168.1.86:8080' \
|
||||
--data 'username=admin&password=PASSWORD' \
|
||||
http://192.168.1.86:8080/api/v2/auth/login \
|
||||
| grep -i 'set-cookie' | grep -o 'SID=[^;]*')
|
||||
|
||||
# Добавить магнет
|
||||
curl -s --cookie "$SID" \
|
||||
--data-urlencode "urls=magnet:?xt=urn:btih:HASH..." \
|
||||
--data "savepath=/home/bazzite/Emulation/roms/switch/" \
|
||||
http://192.168.1.86:8080/api/v2/torrents/add
|
||||
```
|
||||
|
||||
## Jackett на Кракене — Поиск ROM/торрентов
|
||||
|
||||
```yaml
|
||||
# /srv/.../docker/jackett/docker-compose.yml
|
||||
services:
|
||||
jackett:
|
||||
image: lscr.io/linuxserver/jackett:latest
|
||||
container_name: jackett
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Asia/Bishkek
|
||||
volumes:
|
||||
- ./config:/config
|
||||
- ./downloads:/downloads
|
||||
ports:
|
||||
- 9117:9117
|
||||
restart: unless-stopped
|
||||
```
|
||||
|
||||
Web UI: `http://kraken:9117`
|
||||
Поддерживает RuTracker (нужна учётка). API: Torznab endpoint.
|
||||
|
||||
```bash
|
||||
# Поиск игры
|
||||
curl "http://192.168.1.14:9117/api/v2.0/indexers/rutracker/results/torznab/?apikey=***&t=search&q=Donkey+Kong+Tropical+Freeze+Switch&cat=8000"
|
||||
```
|
||||
|
||||
## Целевой Flow: Агент ищет и качает ROM
|
||||
|
||||
```
|
||||
Eagle/Кракен → Jackett API (Кракен :9117) → RuTracker
|
||||
→ Выбор лучшего torrent (seeders, формат NSP/XCI)
|
||||
→ qBittorrent API (HTPC :8080) — magnet + savepath=/Emulation/roms/switch/
|
||||
→ Steam ROM Manager → игра в Gaming Mode
|
||||
```
|
||||
|
||||
## See Also
|
||||
|
||||
- [[tech/htpc-kodi-layout]] — Kodi, NFO, симлинки, медиа-структура
|
||||
- [[tech/kraken-network]] — сеть, WireGuard, топология
|
||||
- [[tech/arr-stack-kraken]] — Prowlarr/Radarr/Sonarr на Кракене
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
---
|
||||
title: Kraken Network & Infra
|
||||
namespace: work
|
||||
created: '2026-05-17'
|
||||
updated: '2026-05-18'
|
||||
updated: '2026-05-20'
|
||||
last_synced: '2026-05-20'
|
||||
type: reference
|
||||
tags:
|
||||
- kraken
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
---
|
||||
title: Media Pipeline — Pitfalls & Debug Notes
|
||||
namespace: work
|
||||
created: '2026-05-16'
|
||||
updated: '2026-05-18'
|
||||
updated: '2026-05-20'
|
||||
last_synced: '2026-05-20'
|
||||
type: entity
|
||||
tags:
|
||||
- media-pipeline
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
---
|
||||
title: Vault Namespace Rules
|
||||
namespace: work
|
||||
created: '2026-05-17'
|
||||
updated: '2026-05-17'
|
||||
updated: '2026-05-20'
|
||||
last_synced: '2026-05-20'
|
||||
type: reference
|
||||
tags:
|
||||
- vault
|
||||
|
||||
Reference in New Issue
Block a user