[2026-09-22] eagle: family/how-to/tv-lampac-plugin.md personal/plans/lampac-kraken.md personal/plans/lampac-watchlist-plugin.md personal/tech/lampac-deployment.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-22 11:32:59 +06:00
1 parent 3e4ebf70aa
commit 0edc4fe42f
4 files changed
+443 -86

No files matched your search

+84
View File
@@ -0,0 +1,84 @@
---
created: '2026-09-22'
namespace: family
related:
- '[[family/how-to/tv-luna-send]]'
- '[[family/how-to/htpc-webos-luna]]'
- '[[personal/tech/lampac-deployment]]'
tags:
- tv
- webos
- lampa
- lampac
- plugin
- how-to
title: tv-lampac-plugin — подключение плагина Lampa на LG TV по SSH
type: how-to
updated: '2026-09-22'
---
# tv-lampac-plugin.sh — подключение плагина Lampa к Lampac на LG TV
> Создан 2026-09-22. Проблема, которую решает: добавить плагин/источник в Lampa на ТВ
> **без пульта**, автоматически по SSH.
> Связано: [[family/how-to/tv-luna-send]], [[family/how-to/htpc-webos-luna]], [[personal/tech/lampac-deployment]].
## Зачем
Настройки Lampa хранятся в localStorage webOS-приложения. Пульта под рукой может не быть,
а добавлять вручную (`Настройки → Плагины → ввести URL`) долго и неудобно.
Данный скрипт прописывает плагин/источник прямо в localStorage приложения Lampa.
## Ключевые пути на ТВ
| Что | Путь |
|---|---|
| Приложение Lampa | `/media/developer/apps/usr/palm/applications/com.lampac.tv/` |
| localStorage (LevelDB) | `/media/developer/apps/usr/palm/applications/com.lampac.tv/.localstorage/` |
| Настройки Lampa | ключ `lampac_settings` (JSON) в LevelDB |
## Как Lampa хранит настройки
Lampa в webOS использует `localStorage`, который Chromium хранит в **LevelDB**
(`.localstorage/leveldb/`). Прямая запись в LevelDB при работающем приложении **опасна**:
приложение перезапишет значение из памяти при выходе.
**Правильный порядок:**
1. Закрыть приложение Lampa (иначе перезапишет)
2. Записать значение в localStorage
3. Запустить приложение
## ⚠️ Питфоллы (проверено 2026-09-22)
1. **localStorage у webOS-приложений изолирован.** Файл в `.localstorage/` у сторонних
(Homebrew) приложений **может отсутствовать** — Chromium держит стор в памяти и
сбрасывает на диск не сразу. Если каталога нет, сначала запустить приложение один раз.
2. **`luna-send` через SSH молчит** — вывод в tty. Оборачивать в `script -q -c "..." /tmp/o.txt`
и читать файл. См. [[family/how-to/tv-luna-send]].
3. **LevelDB нельзя править на живом приложении.** Сначала `closeByAppId`, потом запись.
4. **Проще всего — через UI самого пульта**, если он доступен:
Lampa → Настройки → Плагины → добавить URL. Скрипт нужен, когда пульта нет.
## Что должно быть прописано для Lampac
| Настройка | Значение |
|---|---|
| Плагин (онлайн-источники) | `http://192.168.1.14:9118/online.js` |
| Каталог (свой список) | `http://192.168.1.14:9118/catalog.js` |
| TorrServer | `http://192.168.1.14:9118` (Настройки → TorrServer → «Использовать основную ссылку») |
| Буфер плеера | 50–100 МБ |
## Скрипт
Лежит на Mac: `~/Automation/tv-lampac-plugin.sh`
(дописывается при первом реальном применении; пока не создан — см. «Статус»).
## Статус
⚠️ **На 2026-09-22 не проверялось на живом ТВ.** Подключение каталога сделано через UI
(или требуется сделать). Скрипт-автоматизация — заготовка на будущее.
Если понадобится — подход: `closeByAppId com.lampac.tv` → запись ключа в localStorage →
`launch com.lampac.tv`. Учесть питфоллы 1–3.