Skip to content

Repository files navigation

Root на LG webOS 26: пошаговая инструкция

Эта инструкция рассчитана на пользователя, который раньше не работал со SlopBro. Начните с основного способа. Если webOS 26 остановит загрузку после первого файла, перейдите к совместимому повторному запуску из раздела 7.

Самый простой способ: графический мастер

В репозитории есть единый webOS 26 Root Wizard для macOS и Windows. Он:

  • автоматически ищет LG TV в локальной сети либо принимает IP вручную;
  • выбирает локальный маршрут к ТВ без необходимости отключать VPN; при нестандартной маршрутизации адрес можно указать вручную;
  • проверяет наличие Voice Assistant и отсутствие LG Developer Mode;
  • сначала выполняет основной способ root;
  • при зависании сам переключается на совместимый загрузчик webOS 26;
  • ждёт появления Homebrew Channel, открывает его и просит проверить Root OK;
  • сохраняет локальный журнал и ключ сопряжения в папке данных приложения.

Полностью исключить участие владельца невозможно: телевизор сам требует подтвердить первое сопряжение, а зелёный статус Root OK необходимо увидеть на экране. Мастер не перезагружает телевизор до этого подтверждения.

Готовое приложение

Откройте Actions → Build desktop wizard, выберите последний успешный запуск и скачайте артефакт для своей системы:

  • webOS-Root-Wizard-macOS-Apple-Silicon — для Mac с процессором Apple M1/M2/M3/M4/M5;
  • webOS-Root-Wizard-macOS-Intel — для Intel Mac;
  • webOS-Root-Wizard-Windows — запустите .exe.

Сборки пока не подписаны сертификатом разработчика. На macOS при первом запуске нажмите приложение правой кнопкой → Открыть. Windows SmartScreen может попросить отдельно подтвердить запуск.

Запуск прямо из исходников

Если установлен Python 3:

  • macOS: дважды нажмите start-macos.command;
  • Windows: дважды нажмите start-windows.bat.

Либо запустите python3 webos_root_wizard.py на macOS или py -3 webos_root_wizard.py в Windows. Сторонние Python-библиотеки мастеру не нужны.

Мастер предназначен именно для экспериментального сценария webOS 26. Он проверен на модели и прошивке, указанных ниже; на других прошивках результат не гарантируется.

Метод проверен 24 августа 2026 года на:

  • LG OLED77G6RLA;
  • прошивке 43.11.78;
  • webOS 26, SDK 11.1.0 (major version 11);
  • Homebrew Channel 0.7.3.

На других моделях и прошивках webOS 26 результат не гарантируется. Официальный SlopBro пока перечисляет подтверждённую работу только до webOS 25; поддержка major version 11 в его коде предварительная.

Перед началом

Понадобятся:

  • телевизор и компьютер в одной обычной локальной сети;
  • компьютер с macOS, Linux или Windows;
  • Python 3;
  • доступ телевизора в интернет для загрузки Homebrew Channel;
  • 10–15 минут без выключения телевизора.

Во время root:

  • не обновляйте прошивку;
  • не выключайте питание телевизора;
  • не закрывайте служебную страницу, пока команда не завершилась;
  • не устанавливайте и не оставляйте LG Developer Mode перед перезагрузкой rooted-телевизора;
  • никогда не перезаписывайте kernel, rootfs или tvservice.

1. Узнайте IP-адрес телевизора

На телевизоре откройте сведения о текущем сетевом подключении и найдите поле «IP-адрес».

Пример:

192.168.1.50

Дальше в командах вместо 192.168.1.50 используйте адрес своего телевизора.

2. Установите Python 3

Проверьте Python в терминале.

macOS или Linux:

python3 --version

Windows PowerShell:

py -3 --version

Если команда показывает Python 3, можно продолжать. Сторонние Python-библиотеки не требуются.

3. Скачайте этот репозиторий

Вариант через Git:

git clone https://github.com/ihovsky/webos-root.git
cd webos-root

Либо откройте страницу репозитория, нажмите Code → Download ZIP, распакуйте архив и откройте терминал в распакованной папке.

Проверьте, что вы находитесь в правильной папке:

python3 slopbro.py --help

В Windows используйте:

py -3 slopbro.py --help

4. Удалите LG Developer Mode

Если на телевизоре установлено официальное приложение Developer Mode, удалите его обычным способом из списка приложений.

Если Developer Mode не установлен, ничего делать не нужно.

Это важно: после успешного root приложение Developer Mode нельзя оставлять установленным перед перезагрузкой. Повторно устанавливать его на rooted-телевизор также не следует.

5. Безопасно проверьте связь

На macOS или Linux запустите:

python3 slopbro.py --test-server simple 192.168.1.50

На Windows:

py -3 slopbro.py --test-server simple 192.168.1.50

Команда напечатает адрес примерно такого вида:

http://192.168.1.20:8080/

Откройте этот адрес во встроенном браузере телевизора. Должна появиться строка:

Here's your slop, bro!

После проверки вернитесь в терминал и нажмите Ctrl+C.

Если страница не открылась:

  1. Разрешите Python входящие подключения в брандмауэре. В Windows разрешайте только частные сети.
  2. Убедитесь, что телевизор и компьютер не подключены к гостевой Wi‑Fi-сети.
  3. Узнайте локальный IPv4 компьютера.
  4. Повторите команду с явным адресом компьютера:
python3 slopbro.py --test-server simple \
  --local-ip 192.168.1.20 \
  192.168.1.50

Не переходите к root, пока тестовая страница не открывается на ТВ.

6. Запустите основной способ root

На macOS или Linux:

python3 slopbro.py \
  --debug \
  --webos-version 11 \
  192.168.1.50

На Windows:

py -3 slopbro.py --debug --webos-version 11 192.168.1.50

Если при проверке сети требовался --local-ip, используйте его и здесь:

python3 slopbro.py \
  --debug \
  --webos-version 11 \
  --local-ip 192.168.1.20 \
  192.168.1.50

Дальше:

  1. На телевизоре появится запрос подключения устройства. Нажмите Разрешить/Да.
  2. Если macOS или Windows спросит разрешение для Python, разрешите доступ в локальной сети.
  3. Не выключайте телевизор и не закрывайте терминал.
  4. На экране ТВ может появиться служебная страница или чёрный экран — это допустимо.
  5. Дождитесь завершения загрузки файлов и установки Homebrew Channel.

Нормальный журнал выглядит примерно так:

registered
confirmed app is installed: com.webos.app.voiceweb
served required file: ...
done; all tracked files were requested

После первого сопряжения рядом со скриптом появится файл вида 192.168.1.50.key. Это локальный ключ управления телевизором. Не публикуйте его.

Признаки успеха

Root считается полученным только когда выполнены все условия:

  1. В меню приложений появился Homebrew Channel.
  2. Homebrew Channel открывается.
  3. В настройках Homebrew Channel статус Root показывает OK.

Если отображается Root OK:

  1. Убедитесь, что LG Developer Mode удалён.
  2. В Homebrew Channel откройте настройки.
  3. Нажмите System reboot.
  4. После загрузки снова откройте Homebrew Channel и проверьте Root OK.

Если Homebrew появился, но Root OK отсутствует, не перезагружайте телевизор и переходите к диагностике.

7. Если основной способ завис на webOS 26

На прошивке 43.11.78 Download Manager иногда скачивает первый файл, но не продолжает последовательность. Признаки:

  • терминал долго ждёт оставшиеся файлы;
  • на экране ничего не меняется;
  • Homebrew Channel не появился;
  • Rooting complete не отображалось.

Подождите две минуты. Если Homebrew отсутствует и установка явно не началась, остановите команду сочетанием Ctrl+C.

Теперь используйте совместимый помощник. Он отменяет зависшее задание Download Manager, отправляет файлы по одному и запускает тот же autoroot.sh через Voice Assistant.

7.1. Откройте Voice Assistant

На телевизоре:

  1. Зажмите кнопку микрофона/AI на пульте.
  2. Скажите, например, «Открой настройки».
  3. Дождитесь появления панели ассистента.
  4. Не закрывайте панель кнопкой «Назад».

7.2. Запустите совместимый помощник

macOS или Linux:

python3 tools/webos26_compatible_launch.py 192.168.1.50

Windows:

py -3 tools/webos26_compatible_launch.py 192.168.1.50

Если раньше требовался явный адрес компьютера:

python3 tools/webos26_compatible_launch.py \
  --local-ip 192.168.1.20 \
  192.168.1.50

Дальше:

  1. Если ТВ снова попросит разрешить подключение — разрешите.
  2. Не закрывайте терминал и не выключайте телевизор.
  3. Помощник должен получить запросы всех пяти файлов.
  4. После строки The TV requested every compatibility file подождите ещё 25 секунд.
  5. Откройте Homebrew Channel и проверьте Root OK.

Если помощник пишет, что часть файлов не была запрошена, снова откройте Voice Assistant и повторите команду один раз. Для новой попытки автоматически создаётся уникальный URL.

Если на экране или в журнале появился Message not processed, также заново откройте Voice Assistant и повторите совместимый запуск один раз.

После Root OK выполните действия из раздела «Признаки успеха»: удалите Developer Mode, если он присутствует, и перезагрузите телевизор через Homebrew Channel.

8. Ошибка WSS и сертификат телевизора

Сообщение:

The WSS connection failed almost immediately. In practice this usually means
the browser blocked the TV self-signed certificate.

обычно относится к запуску через браузерную страницу. Откройте на компьютере:

https://192.168.1.50:3001/

и подтвердите переход к сайту с самоподписанным сертификатом. Страница после этого может быть пустой или показать HTTP-ошибку — важно, что браузер сохранил разрешение для сертификата.

При запуске slopbro.py и webos26_compatible_launch.py проверка сертификата отключена внутри Python-клиента, поэтому открывать страницу сертификата обычно не требуется.

9. Частые проблемы

Телевизор не показывает запрос сопряжения

  • Проверьте IP-адрес ТВ.
  • Телевизор должен быть полностью включён, а не находиться в режиме ожидания.
  • Убедитесь, что TCP-порт 3001 доступен.
  • Удалите старый файл IP_ТЕЛЕВИЗОРА.key только если хотите принудительно создать новое сопряжение.

ТВ не забирает файлы с компьютера

  • Повторите безопасный тест из раздела 5.
  • Разрешите Python в брандмауэре.
  • Используйте --local-ip с LAN-адресом компьютера.
  • Проверьте, что на роутере отключена изоляция Wi‑Fi-клиентов.

На телевизоре чёрный экран

Во время запуска Voice Assistant и служебной страницы это допустимо. Не нажимайте кнопки, пока помощник передаёт файлы. После подтверждённого Root OK можно нажать Home.

Появилась плашка «подключение к серверу нестабильно»

Служебное окно не смогло открыть локальную страницу. Нажмите «Назад» один раз, снова откройте Voice Assistant и повторите совместимый запуск с правильным --local-ip.

Homebrew установился, но root не подтверждён

Не перезагружайте ТВ, не удаляйте Homebrew Channel и не устанавливайте Developer Mode. Сохраните полный вывод терминала для диагностики.

10. SSH после успешного root — необязательно

Для самого root SSH не нужен. Если требуется удалённый доступ:

  1. Откройте настройки Homebrew Channel.
  2. Включите SSH.
  3. Оставьте Telnet выключенным.
  4. Настройте отдельный SSH-ключ и проверьте вход как root на порту 22.

Homebrew Channel использует временный стандартный пароль alpine, пока не установлен authorized_keys. Не оставляйте этот пароль единственной защитой SSH.

Пример создания ключа на macOS/Linux:

ssh-keygen -t ed25519 -f ~/.ssh/lg-tv-root_ed25519 -C lg-tv-root

Что находится в репозитории

  • webos_root_wizard.py — графический автоматический мастер macOS/Windows;
  • start-macos.command и start-windows.bat — запуск мастера из исходников двойным нажатием;
  • .github/workflows/build-desktop.yml — автоматическая сборка .app и .exe;
  • slopbro.py — основной запуск;
  • tools/webos26_compatible_launch.py — совместимый повторный запуск webOS 26;
  • wwwroot/index-webos26.html — основной загрузчик;
  • wwwroot/run-webos26-compatible.html — последовательный совместимый загрузчик;
  • wwwroot/autoroot-webos26.sh — установщик Homebrew Channel;
  • UPSTREAM_README.md — оригинальная документация SlopBro;
  • COPYING — лицензия AGPLv3.

Основа проекта: throwaway96/slopbro, commit da374e5f10eff26b7df323ef0c2bc8470b142501.

About

No description, website, or topics provided.

Resources

Stars

9 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages