Entware - новый репозиторий для роутеров Asus (MIPS)
Entware - новый репозиторий для роутеров (MIPS)
Коллеги, начиная с r3727 основным источником ПО для роутера является наш собственный репозиторий пакетов Entware.
Он призван заменить собой Optware и сделать доступным для большого круга пользователей репозиторий OpenWRT
- наиболее популярного и объёмного набора ПО на сегодняшний день.
Его можно использовать на тех прошивках, где раньше было предусмотрено использование Optware, включая TomatoUSB, DD-WRT, asuswrt и клоны, Padavan'овскую и другие.
Для использования репозитория Entware необходимо:
1. Смонтировать директорию /opt на какой-либо (пустой!) носитель/папку и выполнить:
Code:
$ cd /opt
$ wget -qO - http://old.entware.net/binaries/mipselsf/installer/entware_install.sh | sh
после чего будут установлены менеджер пакетов opkg, базовые библиотеки uClibc и обновлён список доступных пакетов.
2. Посмотреть список доступных пакетов и установить те пакеты, которые вам интересны, например, mc:
Code:
$ opkg list
$ opkg install mc
Всё!
По мере развития репозиторий будет пополняться новыми пакетами, ритмичность обновления - приблизительно раз в месяц.
---
Update. Репозиторий давно вышел за пределы прошивки и используется на куче MIPS/ARM/Intel устройств. Обсуждение репозитория теперь здесь.
Get involved! Short HowTo
Кого не пугает язык потенциального противника - welcome.
Для пересборки репозитория Openwrt необходима стандратная среда компиляции linux, 12Гб свободного места на диске и ~5 часов свободного времени:
Code:
$ mkdir ~/openwrt
$ cd ~/openwrt
$ svn co http://wl500g-repo.googlecode.com/svn/trunk/ ./rtn
$ cd ./rtn
$ make
Более подробно шаги сборки можно посмотреть в Makefile'е. В общих чертах:
- выкачивается энтузиасткая прошивка - она используется для сборки тулчейна и пакетов, завязанных на ядро,
- конфигурируется прошивка - ровно по инструкции на wiki,
- закачивается энтузиасткий тулчейн, патчится, компилируется,
- разворачивается среда сборки OpenWRT Buildroot вместе с правилами сборки уже конкретных пакетов,
- на Buildroot и Makefile'ы пакетов накладываются патчи для совместимости с нашими роутерами и выбранными путями расположения софта,
- с помощью подготовленного ранее тулчейна собираются пакеты.
Обновление репозитория Optware
Коллеги, правильно ли я понимаю, что нам не светит собрать актуальные libtorrent 0.12.9/rtorrent 0.8.9 из-за плотной завязке на отсутствующие posix_memalign\posix_fallocate\epoll и пр?
libtorrent 0.12.9 успешно собирается, но сборка rtorrent 0.8.9 не идёт из-за жалоб на отсутствие epoll и пр.
Линкова устаревшего rtorrent 0.8.6 с обновлённой libtorrent 0.12.9 справедливо ругается на отсутствие необходимых символов в последней.
Обновить нельзя оставить!
Коллеги, в продолжение разговора про обновление репозитория Optware.
Я сделал для Optware свой тестовый target (platforms/packages-xxx.mk и platforms/toolchain-xxx.mk). Это в теории позволило бы автоматизированно синхронизироваться с http://svn.nslu2-linux.org/svnroot/optware/trunk и компилировать новшества автоматически. Но в этом чёртовом Optware ничего автоматизированно не собирается! Причём в оригинальных target'ах тоже. Ссылки на исходники в каждом втором пакете потеряли актуальность и пересобрать автоматизированно хотя бы половину репозитория не представляется возможным. А выполнять эту работу вручную бесперспективно.
В процессе анализа /usr/bin/ipkg.sh был удивлён дальновидностью авторов прошивки. По умолчанию в /usr/etc/ipkg.conf "зашит" репозиторий optware, но для ipkg.sh можно указать переменную среды IPKG_CONF_DIR, содержащую конфиг со своими репозиториями.
Хочу заметить, что древний target wl500g, созданный Олегом (?) опирался на ту же идею: сборку пакетов родным для прошивки тулчейном. Он по прежнему ссылается на /opt/brcm/hndtools-mipsel-uclibc/bin/* и по идее должен оставаться работоспособным по сей день при правильном расположении энтузиасткого тулчейна.