# OpenWRT-sing-box-extended Скрипт для установки sing-box-extended вместо стандартного sing-box (для OpenWRT и ему подобных) Этот `sh`-скрипт предназначен для автоматического обновления бинарного файла `sing-box` на роутерах OpenWrt. Он использует форк [shtorm-7/sing-box-extended](https://github.com/shtorm-7/sing-box-extended). Скрипт **автоматически находит последний релиз** на GitHub, выбирает архив для нужной архитектуры, скачивает его и заменяет существующий бинарный файл `/usr/bin/sing-box`. # Установка Для установки и обновления используем команду ``` sh <(wget -O - https://raw.githubusercontent.com/EikeiDev/OpenWRT-sing-box-extended/refs/heads/main/install.sh) ``` ### Что делает скрипт 1. **Поиск последнего релиза:** Обращается к API GitHub, чтобы найти URL "latest release". 2. **Фильтрация по архитектуре:** В ответе API ищет URL для скачивания файла, соответствующего паттерну (по умолчанию `linux-arm64.tar.gz`). 3. **Скачивание:** Загружает .tar.gz архив во временную папку `/tmp`. 4. **Остановка сервиса:** Корректно останавливает сервис `sing-box` и принудительно завершает процесс `killall`, чтобы освободить бинарный файл. 5. **Распаковка:** Аккуратно распаковывает архив, извлекая **только** бинарный файл `sing-box`. Скрипт игнорирует `README` и справляется с тем, что файл лежит во вложенной папке (используя `strip-components=1`). 6. **Замена:** Перемещает новый бинарный файл в `/usr/bin/sing-box`, заменяя старый. 7. **Установка прав:** Выдает файлу права на выполнение (`chmod +x`). 8. **Очистка:** Удаляет временные файлы и архив из `/tmp`. 9. **Перезагрузка:** Отправляет роутер в перезагрузку. ----- # Благодарности / Thanks https://github.com/shtorm-7/sing-box-extended