Lampac NextGen - https://github.com/lampac-nextgen/lampac
|
Это последний доступный код проекта. 🙋 Ищем maintainera 🔒 Безопасность Установка и использование кода — на свой страх и риск. Ни авторы, ни правообладатели ответственности не несут. |
Рекомендуемый способ — универсальный скрипт setup.sh. Он ставит Docker (если нет), генерирует конфиги, стартует контейнер на ghcr.io/toomad23/lampac:main и проверяет готовность.
bash <(curl -fsSL https://raw.githubusercontent.com/Toomad23/lampac/main/setup.sh)curl -fsSL https://raw.githubusercontent.com/Toomad23/lampac/main/setup.sh | \
bash -s -- --yes \
--port 9118 \
--admin-email you@example.com \
--ts-passwd 'MyStrongPass1'Или с автогенерацией пароля TorrServer:
curl -fsSL https://raw.githubusercontent.com/Toomad23/lampac/main/setup.sh | \
bash -s -- --yes --admin-email you@example.comПароль будет напечатан в конце — сохраните его.
| Флаг | По умолчанию | Назначение |
|---|---|---|
--install-dir PATH |
/opt/lampac |
Каталог конфигов и томов |
--port N |
9118 |
Порт HTTP |
--ts-passwd STRING |
авто | Пароль TorrServer (≥8 символов) |
--admin-email EMAIL |
— | Включает accsdb и добавляет email |
--admin-expires DATE |
2030-01-01T00:00:00 |
Срок действия доступа |
--no-accsdb |
— | Открытый доступ (без авторизации) |
--disable-ts |
— | Выключить встроенный TorrServer |
--disable-dlna |
— | Выключить модуль DLNA |
--enable-sisi |
— | Включить 18+ модуль |
--image REF |
ghcr.io/toomad23/lampac:main |
Docker-образ |
--container-name NAME |
lampac |
Имя контейнера |
--yes, -y |
— | Non-interactive |
--help, -h |
— | Справка |
Повторный запуск setup.sh --yes обновит образ и пересоздаст контейнер. Конфиги сохраняются (создаётся .bak.<timestamp>).
curl -fsSL https://raw.githubusercontent.com/Toomad23/lampac/main/setup.sh | bash -s -- --yes/opt/lampac/
├─ init.conf # основной конфиг + accsdb
├─ module/
│ ├─ manifest.json # какие модули включены
│ └─ TorrServer.conf # defaultPasswd для /ts
├─ dlna/ # папка DLNA
└─ docker-compose.yml # для управления через docker compose
- Логин: email из
accsdb.accounts(если accsdb выключен — любая непустая строка) - Пароль: значение
defaultPasswdизmodule/TorrServer.conf
Если пароль короче 8 символов или пуст — /ts вернёт 401 (fail-closed, PR #42). Поменять:
sudo sed -i 's/"defaultPasswd": ".*"/"defaultPasswd": "NewStrongPass1"/' /opt/lampac/module/TorrServer.conf
sudo docker restart lampac- Linux (Debian/Ubuntu/RPi/Synology) + Docker
- 1 CPU, 1 GB RAM, 2 GB диска
- Входящий TCP-порт (по умолчанию 9118)
curl -L -k -s https://lampac.sh | bash- Минимальные требования: 1 CPU, 1GB RAM, 2GB HDD
- Рекомендуемые требования: 1 CPU, 2GB RAM, 5GB SSD
- Порт генерируется рандомно и выводится в конце установки скрипта
- Изменить или посмотреть порт можно в init.conf -
grep "port" /home/lampac/init.conf
curl -L -k -s https://lampac.sh/home | bash- Минимальные требования: 1 CPU, 500Mb RAM, 1GB HDD
- Рекомендуемые требования: 1 CPU, 1GB RAM, 1GB SSD
- DLNA/Chromium/Firefox по умолчанию отключен, включается в init.conf
- TorrServer по умолчанию отключен, включается в module/manifest.json
- Установить ".NET 10 (SDK Installer)" https://dotnet.microsoft.com/en-us/download/dotnet/10.0
- Распаковать https://github.com/lampac-talks/lampac/releases/latest/download/publish.zip
- Запустить lampac.exe
docker run -d -p 9118:9118 --restart always --name lampac ghcr.io/toomad23/lampac:maintags: main (linux/amd64, авто-сборка из этого форка)
- Debian 11/12 x64
- Windows 10 x64
- Raspberry arm64 (Debian 11)
ip:9118/admin
- Все плагины сразу - http://IP:9118/on.js
- онлайн - http://IP:9118/online.js
- xxx - http://IP:9118/sisi.js
- DLNA - http://IP:9118/dlna.js
- Tracks - http://IP:9118/tracks.js
- Backup - http://IP:9118/backup.js
- Синхронизация - http://IP:9118/sync.js
- TorrServer - http://IP:9118/ts.js
- Транскодирование - http://IP:9118/transcoding.js
- Парсер Jackett - IP:9118
- онлайн/jackett - http://IP:9118/lite.js
- xxx - http://IP:9118/sisi.js
- Отключить TorrServer/DNLA/Jackett/etc можно в module/manifest.json
- Настройки Jackett в module/JacRed.conf (пример JacRed.example.conf)
- Основные настройки в init.conf (пример example.conf)
Filmix, KinoPub, Alloha, Rezka, GetsTV, iptv.online, Kinobase, Zetflix, Collaps, Lumex, VDBmovies, VideoDB, Vibix, Videoseed, VeoVeo, HDVB, Kodik, Ashdi (Украинский), Eneyida (Украинский), KinoUKR (Украинский), FanCDN, Kinotochka, CDNmovies, Redheadsound, VoKino, Rutube, VK Видео, Plvideo, Anilibria, AniLiberty, AniMedia, AnimeLib, MoonAnime (Украинский), Animevost, Animebesst, AnimeGo, HydraFlix (ENG), VidSrc (ENG), MovPI (ENG), Videasy (ENG), 2Embed (ENG), VidLink (ENG), AutoEmbed (ENG), SmashyStream (ENG), PlayEmbed (ENG), RgShows (ENG)
PornHub, PornHubPremium, Bongacams, Chaturbate, Cam4, Ebalovo, Eporner, HQporner, Porntrex, Spankbang, Xhamster, Xnxx, Xvideos, Lenporno, Porno365, Vtrahe, RUSporno, ProstoPorno, PornOne, Brazzrus, FilmAdult, Sosushka, Youjizz, NoodleMagazine, Veporn, XXXperevod, Huyamba, Pornk, PornoAkt, Porn4days, Beeg, Porndig, 24video, yaeby, trahkino, sex-studentki, hochu.tv, oxax.tv, Rusvideos, Porno666, Pornobolt, JopaOnline, Ebun, Pornobriz, 24rolika, SemBatsa, Lenkino, Ebasos, Vporno, BigBoss, GayPornTube
Kinozal, NNM-Club, Rutor, Rutracker, Megapeer, Torrentby, Bitru, Toloka (Украинский), BigFanGroup, Selezen, LostFilm, Anilibria, Animelayer, Anifilm
Встроенный HTML5-плеер Lampa не умеет AC3 / E-AC3 / DTS / FLAC — видео идёт, звука нет. Это частая картина при просмотре торрентов через TorrServer и BDRemux-релизов с CDN. Решение — на лету заворачивать поток в HLS с AAC через ffmpeg прямо в lampac. Видео копируется (-c:v copy), перекодируется только аудио — CPU-нагрузка минимальная.
"transcoding": {
"enable": true,
"tempRoot": "cache/transcoding",
"idleTimeoutSec": 30,
"idleTimeoutSec_live": 30,
"maxConcurrentJobs": 2,
"allowHosts": ["mylampac.example.com", "192.168.1.10", "127.0.0.1", "localhost"]
}allowHosts — whitelist источников (src), откуда разрешено тянуть медиа. Должен содержать все хосты, через которые Lampa видит твой lampac (домен reverse-proxy + LAN-IP), иначе SSRF-guard вернёт Source host is not allowed. Пустой массив → fail-closed: пропускает только публичные хосты (TorrServer через LAN работать не будет).
Ничего доустанавливать не нужно — при первом старте lampac сам скачает статически собранные ffmpeg и ffprobe в ./data/ (~200 МБ каждый). В логах контейнера увидишь FFmpeg: Initialization и load module: Tracks.dll.
В клиенте: Настройки → Расширения → Добавить плагин → http://IP:9118/transcoding.js. После этого в плеере (при воспроизведении, меню шестерёнки) появится пункт «Транскодирование» — включаешь на проблемной дорожке, lampac оборачивает стрим в HLS с AAC.
curl -sI http://IP:9118/transcoding.js # 200 OK, Content-Type: application/javascript
curl -sI http://IP:9118/transcoding # 200 OK (DOC с описанием эндпоинтов)
docker logs lampac --tail 50 | grep -i ffmpeg # "FFmpeg: Initialization"Если плеер крутит, но не стартует — в логах будет команда ffmpeg и stderr процесса.
- Filmix, Alloha, Lumex (VideoCDN), Kodik
- Filmix - http://IP:9118/lite/filmixpro
- KinoPub - http://IP:9118/lite/kinopubpro
- VoKino - http://IP:9118/lite/vokinotk
- HDRezka - http://IP:9118/lite/rhs/bind
- GetsTV - http://IP:9118/lite/getstv/bind
- iptv.online - http://IP:9118/lite/iptvonline/bind
Для балансеров которые недоступны на VPS но доступны в вашей сети, можно включить rhub и парсить данные на самом устройстве android/smart
"Ashdi": {
"rhub": true
},
"BongaCams": {
"rhub": true
}- Просмотр медиа файлов с папки dlna
- Возможность удалять просмотренные папки/файлы
- Загрузка торрентов в папку dlna
Зажмите кнопку "OK" на выбранном торренте/папке/файле для вызова списка действий
Синхронизация между разными устройствами
- Для синхронизации все устройства должны быть авторизованы в cub.red под одним аккаунтом, либо на устройствах вместо плагина IP:9118/sync.js, должен использоваться IP:9118/sync/js/{uid}, где {uid} это любые символы, либо идентификатор в accsdb, например IP:9118/sync/js/myhome
- email или {uid} должен совпадать на устройствах которые вы хотите синхронизовать между собой
- Синхронизация куба должна быть отключена
Заменяет название аудиодорожек и субтитров в плеере
Автор: @aabytt
- Добавить плагин "http://IP:9118/tracks.js"
- В init.conf заменить значение "ffprobe.os" на один из вариантов "win", "linux"
Проксирование постеров для сайта TMDB
- Добавить плагин "http://IP:9118/tmdbproxy.js"
- В настройках TMDB включить проксирование
Альтернативные источники каталога cub и tmdb
- Добавить плагин "http://IP:9118/catalog.js"
- Выбрать каталог в настройках лампы "Настройки - Остальное - Основной источник"
- Запустить tor на порту 9050
- В init.conf указать .onion домен в host
- Settings -> Start Parameter -> Setup
- Enter current ip address and port "IP:9118"
Убрать/Добавить адреса можно в msx.json
- Для Samsung "IP:9118/samsung.wgt"
- Microsoft.EntityFrameworkCore 9.0.8 - MS SQL Server, SQLite
- Npgsql 9.0.3 - PostgreSQL
- Pomelo.EntityFrameworkCore.MySql 9.0.0 - MariaDB, MySQL
- MongoDB.Driver 3.4.3 - MongoDB
- StackExchange.Redis 2.9.11 - Redis
- checkOnlineSearch - Делать предварительный поиск скрывая балансеры без ответа
- multiaccess - Настройка кеша в онлайн с учетом многопользовательского доступа
- accsdb - Доступ к API через авторизацию (для jackett используется apikey)
- useproxy - Парсит источник через прокси указанные в "proxy"
- streamproxy - Перенаправляет видео через "http://IP:9118/proxy/{uri}"
- localip - Заменить на "false" если скрипт установлен за пределами внутренней сети
- findkp - Каталог для поиск kinopoisk_id (alloha|tabus|vsdn)
- corseu - Использовать прокси cloudflare
- Список всех параметров, а так же значения по умолчанию смотреть в current.conf и example.conf
- В init.conf нужно указывать только те параметры, которые хотите изменить
- Редактировать init.conf можно так же через ip:9118/admin
{
"listenport": 9120, // изменили порт
"dlna": {
"downloadSpeed": 25000000 // ограничили скорость загрузки до 200 Mbit/s
},
"Rezka": {
"streamproxy": true // отправили видеопоток через "http://IP:9118/proxy/{uri}"
},
"Zetflix": {
"displayname": "Zetflix - 1080p", // изменили название
"geostreamproxy": ["UA"], // поток для UA будет идти через "http://IP:9118/proxy/{uri}"
"apn": "http://apn.cfhttp.top" // заменяем прокси "http://IP:9118/proxy/{uri}" на "http://apn.cfhttp.top/{uri}"
},
"Kodik": {
"useproxy": true, // использовать прокси
"proxy": { // использовать 91.1.1.1 и 92.2.2.2
"list": [
"socks5://91.1.1.1:5481", // socks5
"91.2.2.2:5481" // http
]
}
},
"Ashdi": {
"useproxy": true // использовать прокси 93.3.3.3
},
"Filmix": {
"token": "protoken" // добавили токен от PRO аккаунта
},
"PornHub": {
"enable": false // отключили PornHub
},
"proxy": {
"list": [
"93.3.3.3:5481"
]
},
"globalproxy": [
{
"pattern": "\\.onion", // запросы на домены .onion отправить через прокси
"list": [
"socks5://127.0.0.1:9050" // прокси сервер tor
]
}
],
"overrideResponse": [ // Заменили ответ на данные из файла myfile.json
{
"pattern": "/msx/start.json",
"action": "file",
"type": "application/json; charset=utf-8",
"val": "myfile.json"
}
]
}Процессор не поддерживает инструкции AVX
- Установите ImageMagick
apt install -y imagemagick libpng-dev libjpeg-dev libwebp-dev- В init.conf добавьте
"imagelibrary": "ImageMagick"- Если проблема сохраняется, замените на
"imagelibrary": "none"