PDA

Bekijk de volledige versie : Entware - новый репозиторий для роутеров Asus (MIPS)



Pages : 1 [2] 3 4 5 6

Feonik
09-02-2012, 12:25
Готов. Только если вы использовали ранее какой-то экзотический софт, то проверьте, есть ли он в новом репозитории.
на r3727 или более новую. На сайте самой прошивки вы её не найдёте, см.:

http://wpte.kicks-ass.net/filebrowser/index.php?dir=Oleg+Firmware/Nightlys/1.9.2.7-rtn
http://asus.vectormm.net/rtn/
http://rtn.alegzz.ru/rtn/



Благодарю за ответ. Софта пока вообще никакого нет. А какая прошивка по приведенным ссылкам сейчас признана наиболее стабильной?

Планирую в роутер поставить OpenVPN и поставить в одном из наших офисов, то есть нужна стабильная работа. Более особо ничего не нужно. Доступен ли пакет openvpn уже в репозитории?

По этой ссылке:
http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/

увидел весь список пакетов, openvpn тоже.

maxbanton
09-02-2012, 12:47
немного непонятен механизм перехода с ipkg на opkg.
После действий описанных тут (http://code.google.com/p/wl500g-repo/wiki/Using) я получу пустой каталог /opt ?
Или /tmp/harddisk/opt просто "добавит" свое содержимое к примонтированному разделу /opt ?
Нормально ли обновятся уже установленные пакеты?

ryzhov_al
09-02-2012, 12:54
немного непонятен механизм перехода с ipkg на opkg.
После действий описанных тут (http://code.google.com/p/wl500g-repo/wiki/Using) я получу пустой каталог /opt ?
Или /tmp/harddisk/opt просто "добавит" свое содержимое к примонтированному разделу /opt ?Это лишь пример, показывающий то, что каталог /opt прошивки обязательно должен быть смонтирован на какой-то носитель. А уж папка ли это, раздел носителя, или весь носитель - это дело десятое.

Нормально ли обновятся уже установленные пакеты?Никакие пакеты не обновятся. Всё придётся переустанавливать с нуля:
монтируете чистый раздел/носитель в /opt,
устанавливаете необходимые пакеты,
возвращаете при необходимости на места заблаговременно сохранённые конфигурационные файлы.

MercuryV
09-02-2012, 13:45
Доброго времени суток!
Два вопроса по новому репозиторию:
1) nginx ожидается?
2) роутер в качестве PXE сервера кто-нибудь уже использовал на новом репозитории? вроде бы все нужные пакеты есть

lucky:)
09-02-2012, 14:08
2) роутер в качестве PXE сервера кто-нибудь уже использовал на новом репозитории? вроде бы все нужные пакеты есть

Вроде все есть, но для установки XP по сети может понадобиться cabextract, которого пока что нет.

ryzhov_al
09-02-2012, 15:08
1) nginx ожидается?Ожидается в течение недели.

2) роутер в качестве PXE сервера кто-нибудь уже использовал на новом репозитории? вроде бы все нужные пакеты естьЯ использую для установки Ubuntu по сети (http://mirror.yandex.ru/ubuntu-cdimage/netboot/):

$ grep pxe /etc/dnsmasq.conf
dhcp-boot=pxelinux.0
$ opkg install tftpd-hpa
/opt/sbin/tftpd-hpa -s /opt/share/pxe-boot
Вроде все есть, но для установки XP по сети может понадобиться cabextract, которого пока что нет.И не выпрашивайте. Абсолютно одноразовая утилита, действия которой гораздо логичней выполнить (http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/expand.mspx) под Windows.

MercuryV
09-02-2012, 15:16
Ожидается в течение недели.
Прекрасно, с выходом nginx опробую на своем Netgear WNR3500L
Полагаю, на модификации прошивки от Vampik все заведется штатно.

ryzhov_al
10-02-2012, 07:58
Прекрасно, с выходом nginx опробую на своем Netgear WNR3500LГотово, r365 (http://code.google.com/p/wl500g-repo/source/detail?r=365).
Пожалуйста, отпишитесь о результатах тестирования.

Vitaly_k
10-02-2012, 09:34
Вопросы по переходу на новых репозитарий.
Обязательно ли обновлять прошивку до 3727 или достаточно поменять конфиги(какие)?
Можно ли одновременно использовать ipkg и opkg?
Можно ли из нового репозитария обновить ранее установленные из старого пакеты или нужно все ставить с нуля?

MercuryV
10-02-2012, 11:55
Готово, r365 (http://code.google.com/p/wl500g-repo/source/detail?r=365).
Пожалуйста, отпишитесь о результатах тестирования.

Малой кровью nginx запустить не вышло. Обновил прошивку на r3776, со старыми конфигами nginx выдавал ошибки, не находя пути /opt/var/log/nginx/ /opt/var/lib/nginx/body и др.
Создал ему вручную желаемые каталоги, после этого nginx запустился, но забивал лог ошибками accept4() failed (22: Invalid argument), worker process грузил процессор на полную и как должно не работал (предполагалось использование в качестве reverse-proxy).
В общем, быстро найти, что именно ему не нравится, не смог, сейчас сбросил прошивку в default, на выходных попробую установить/настроить "с нуля".

lly
10-02-2012, 12:08
после этого nginx запустился, но забивал лог ошибками accept4() failed (22: Invalid argument),
Далее должен был бы идти банальнейший гугл, который бы подсказал, что вызов accept4() поддерживается начиная с ядра 2.6.28.

Варианты:

при сборке nginx нужно менять ключи сборки [быстро]
в nginx заменять accept4() [долго?]
бекпортить accept4() на наше ядро [не знаю пока насколько сложно]

ryzhov_al
10-02-2012, 13:19
Малой кровью nginx запустить не вышло.

Далее должен был бы идти банальнейший гугл, который бы подсказал, что вызов accept4() поддерживается начиная с ядра 2.6.28.

Варианты: при сборке nginx нужно менять ключи сборки [быстро]Поправил, r367 (http://code.google.com/p/wl500g-repo/source/detail?r=367).

Вот поэтому я каждый раз прошу отписываться о результатах тестирования.

lly
10-02-2012, 16:07
Поправил, r367 (http://code.google.com/p/wl500g-repo/source/detail?r=367).

Ну и замечательно.

Я глянул на патчи добавления accept4() в ядро - ничего нетривиального там не вижу. Думаю стоит добавить. Я вижу единственный серьёзный минус включения accept4 для nginx в твоём репозитории - это то, что он потом не запуститься ни на одной прошивке, кроме нашей...

lucky:)
10-02-2012, 16:11
Cabextract не выпрашивайте. Абсолютно одноразовая утилита, действия которой гораздо логичней выполнить под Windows.

Вы просто ни разу не доводили установку Windows до уровня "залил iso - через 5 минут образ готов к установке"...
Впрочем, сам соберу, спасибо =)

mbg
10-02-2012, 17:04
Поправить можно самостоятельной сборкой, т.к. я без веских причин от канонов OpenWRT отклоняться не буду.
Кроме того, я отлично помню, как генерация каждого thumbnail'а на WL-500gpv1 занимала ровно минуту.
Совсем забыл отписаться. Собрал я php5-mod-gd и gd с поддержкой freetype - все прекрасно работает и ничего не тормозит.

ryzhov_al
10-02-2012, 17:11
Я глянул на патчи добавления accept4() в ядро - ничего нетривиального там не вижу. Думаю стоит добавить. Я вижу единственный серьёзный минус включения accept4 для nginx в твоём репозитории - это то, что он потом не запуститься ни на одной прошивке, кроме нашей...Кажется, мы задели accept4() впервые, поэтому добавлять его в прошивку или нет - решать тебе, как специалисту с мировым именем в области бэкпортов.
Пока не буду возвращать accept4() в код nginx. И, кстати, мы ещё не дождались теста пересобранного nginx от MercuryV.

Я теперь немного изменю стратегию добавления новых пакетов в репозиторий: в стахановских темпах добавления всё новых пакетов больше необходимости нет, их уже достаточно для удовлетворения большинства потребностей. Теперь буду добавлять пакеты по просьбам заинтересованных для того, чтобы их было кому тестировать. И так уже мозоль на языке натёр, упрашивая отписываться по результатам использования.


Вы просто ни разу не доводили установку Windows до уровня "залил iso - через 5 минут образ готов к установке"...
Впрочем, сам соберу, спасибо =)Так поделитесь мануалом такого уровня! Я действительно много чего не знаю. Только чур не упоминайте кислых манипуляций с образами с привлечением BartPE и других адских демонов. Надеюсь, что со времён WinXP сетевая установка сколь-нибудь эволюционировала.

MercuryV
10-02-2012, 17:29
И, кстати, мы ещё не дождались теста пересобранного nginx от MercuryV

Докладываю. Nginx теперь работает, во всяком случае для реверс-проксирования.

Отмечено следующее:
1) для запуска "из коробки" потребовалось создать каталоги
/opt/var/log/nginx
/opt/var/lib/nginx/body
/opt/var/run
2) в конфиге по-умолчанию потребовалось раскомментировать строку
#user nobody;
3) каталоги scgi_temp и uwsgi_temp мигрировали (по сравнению с Nginx из старого репозитория) из /opt/share/nginx в /opt

Не знаю, как ко всему перечисленному относиться, возможно, это легко поправимо. Пока радуюсь, что nginx работает и не нужно его чем-то заменять.

Теперь немного о Nmap (я его просил ранее)
Работает хорошо, производительность, пожалуй, выше, чем я ожидал
при SYN Stealth Scan 2000 портов - за 7.53s

Спасибо всем причастным.

ryzhov_al
10-02-2012, 17:36
3) каталоги scgi_temp и uwsgi_temp мигрировали (по сравнению с Nginx из старого репозитория) из /opt/share/nginx в /optПоследнее расскажите подробнее. nginx "валит" какие-то временные файлы в корень директории /opt? Если да, то лечится ли это правкой конфига? Пути, прошитые у меня при компиляции можно посмотреть здесь (http://code.google.com/p/wl500g-repo/source/browse/trunk/fixes/nginx/fix-path.patch?spec=svn365&r=365).

lly
10-02-2012, 18:04
Кажется, мы задели accept4() впервые, поэтому добавлять его в прошивку или нет - решать тебе, как специалисту с мировым именем в области бэкпортов.

Впервые. Не, в redhat спецы покруче будут ;)


Пока не буду возвращать accept4() в код nginx.
Пока и не надо. Если сильно кому будет надо - всегда сможет пересобрать сам по твоему шаблону.

В идеале, надо глянуть как сделана замена - может всё тривиально, прозрачно и беспокоится не о чем.

ryzhov_al
10-02-2012, 18:15
В идеале, надо глянуть как сделана замена - может всё тривиально, прозрачно и беспокоится не о чем.Какая замена? accept() на accept4() в коде nginx? Игорь Сысоев сделал это переменной define NGX_HAVE_ACCEPT4 1 в конфиге. Кстати, недавно с ним было интересное интервью (http://habrahabr.ru/company/xakep/blog/136354/).

MercuryV
10-02-2012, 19:03
nginx "валит" какие-то временные файлы в корень директории /opt? Если да, то лечится ли это правкой конфига?
Насчет конфига не подскажу, к сожалению.
Но выглядит все следующим образом:
1) В "старом" пакете nginx поставлялись два файла html/50x.html и html/index.html - для сервера по умолчанию
2) физически каталог html с двумя этими файлами располагался в /opt/share/nginx
3) именно туда светил location / из дефолтного конфига.
4) там же (в /opt/share/nginx) создавались при первом запуске каталоги scgi_temp и uwsgi_temp (у меня они были пустыми).
5) в "новом" пакете 50x.html и index.html файлов нет совсем
6) location / ведет в 404
7) если создать в /opt/html - подхватится
8) и также в /opt появляются пустые каталоги scgi_temp и uwsgi_temp

Где это изменить - непонятно мне.

Vitaly_k
10-02-2012, 21:07
Проверил asterisk18 из нового репозитария - рабочий.
Более того, решились проблемы которые были с версией из optware.

Просьба к автору собрать пакет poptop (pptp-сервер)

lly
11-02-2012, 06:53
Какая замена? accept() на accept4() в коде nginx? Игорь Сысоев сделал это переменной define NGX_HAVE_ACCEPT4 1 в конфиге.
Я имел в виду какой код используется в nginx при недоступности accept4(). Глянул сам - там идёт fallback на обычный блокирующий io. В теории использование accept4() должно давать меньшую загрузку CPU, но на нашей платформе это тема отдельного теста. Если вдруг кто возьмётся провести - будет очень интересно и полезно!

А проблема у нас вылезла из-за одного маленького ньюанса который решён корректно в glibc и никак не обрабатывается в uClibc (см. комментарий в glibc sysdeps/unix/sysv/linux/accept4.c):

/* The kernel returns -EINVAL for unknown socket operations.
We need to convert that error to an ENOSYS error. */

Для меня пока загадка почему эту "фичу" до сих пор не поправили в ядре (см. net/socket.c:sys_socketcall()).
И что делать нам, особенно в связи с отсутствием Фёдора - движущей силе TomatoUSB. Т.е. если мы плюём, аналогично OpenWRT'шникам, на поддержку всех остальных прошивок, то я просто правлю ядро (решение из glibc гораздо более громоздкое, увы). А если нет, то даже и не знаю :confused:

theMIROn, ryzhov_al, rss - есть мнение по поддержке сторонних прошивок?


Проверил asterisk18 из нового репозитария - рабочий.
Более того, решились проблемы которые были с версией из optware.

Это подтверждает мою теорию о виновности протухшей uClibc в Optware.

theMIROn
11-02-2012, 13:48
есть мнение по поддержке сторонних прошивок?
Не могу не сказать "А я предупреждал".
Если бы optware-repo ставило свои *libc, можно и нужно было бы решать подобные вопросы именно в них. Даже проще - собрать с glibc, например.
В случае с optware, пакеты, которые были завязаны на наше ядро мы складывали в отдельный прошивко-зависимыый репозитарий.
Сейчас же даже этого нельзя будет сделать, т.к поправив ядро, accept4 будет работать вообще только с определенной ревизии, фактически, собственная прошивка старых релизов превращается в стороннюю.
Поэтому мнение одно - конечно поддерживать, но не откатом на что-то среднее, а полноценными зависимостями библиотек в самом репозитарии.

lly
11-02-2012, 14:25
Если бы optware-repo ставило свои *libc, можно и нужно было бы решать подобные вопросы именно в них.
В данном конкретном случае это поможет, только если libc-opt была собрана с использованием хедеров обновлённого ядра, так как при этом будет использован вариант кода accept4() без использования socketcall().

Во всех остальных случаях, если приложение само использует прямой вызов socketcall() или другие syscall'ы типа timerfd, signalfd без возможности сделать fallback (например, libusb) мы получим облом на сторонних прошивках в любом варианте :(


Поэтому мнение одно - конечно поддерживать, но не откатом на что-то среднее, а полноценными зависимостями библиотек в самом репозитарии.
Ну и как ты это видишь в случае если пакет хочет использовать хотя бы timerfd и не имеет внутреннего алгоритма fallback? Делать это на уровне uClibc? IMHO безумие - закопаемся.

ryzhov_al
11-02-2012, 15:35
theMIROn, ryzhov_al, rss - есть мнение по поддержке сторонних прошивок?
Сторонние прошивки - это какие?Только TomatoUSB? И если да, то какова их приблизительная доля среди Broadcom-based роутеров? Дело в том, что поддержка сторонней прошивки - это очередное добровольно взятое на себя обязательство, которое мне (и не только мне) необходимо будет в будущем соблюдать. В том числе в ущерб функционалу. Например, возможно нам придётся отказаться от пакетов, завязанный на kernel headers. Я понимаю, что у них тоже kernel 2.6.22.19, но что они туда напортировали я в душé не знаю! В оригинальном репозитории OpenWRT таких пакетов ~40: strace, usbip, ipset, proftpd, smartmontools и другие. Да, их можно собрать прошивочным тулчейном, но о многообразии сред сборки скажу ниже.
Стоил ли вообще отрывать от сердца^W прошивки uClibc-библиотеки и выносить их в отдельные пакеты как в Optware?Это отдельная песня. Плюсы от развязки неоспоримы:


независимость от текущего билда прошивки, развязывающая lly руки. Судя по поднятому только что вопросу мой репозиторий тоже становится для него неким "обязательством" на который от вынужден "оборачиваться". Прошивка развивается отдельно, репозиторий - отдельно. Ситуация вывода из строя репозитория при смене билда прошивки невозможна, все довольны.
решение проблем с консольной кириллицей включением UCLIBS_HAS_LOCALE. Это подарок для всех юзеров ncurses-based приложений. Я не разбирался в настройках UCLIBC, но может быть можно будет ещё что-нибудь в UCLIBC включить? Теперь нам ничего не мешает "раскормить" её для охвата всех необходимых фич.

Минусы тоже весомы:


Монолитность. У нас в системе сейчас одна копия uClibc, загруженная в память, у нас используется общий тулчейн для прошивки и репозитория. Большего единения трудно представить! Dependency hell вообще невозможен.
До появления нового репозитория у нас было три среды сборки: нативная Optware, кросс-компиляция Optware, кросс-компиляция энтузиастким тулчейном. Теперь весь зоопарк удалось свести к единой среде сборки, которую не хочется опять распараллеливать. При использовании отдельных базовых библиотек в репозитории придётся снова поддерживать два тулчейна.
Если мы не будем отделять базовые библиотеки от прошивки, то нам нужно выработать некий алгоритм синхронного обновления прошивки и репозитория. Я слышал все доводы theMIROn, но ведь OpenWRT ведь как-то же живёт? И причём неплохо. Почему бы не унаследовать их алгоритм?

TReX
11-02-2012, 17:51
Если мы не будем отделять базовые библиотеки от прошивки, то нам нужно выработать некий алгоритм синхронного обновления прошивки и репозитория. Я слышал все доводы theMIROn, но ведь OpenWRT ведь как-то же живёт? И причём неплохо. Почему бы не унаследовать их алгоритм?

Поддерживаю уважаемого ryzhov_al, конечно требование к обновлению прошивки для продолжения пользования репозитарием - неудобство, но попытка создать нечто поддерживающее все, IMHO не лучшее решение, все же как например пишет sfstudio

ВНИМАНИЕ!!!
Если у вас в модеме залита версия прошивки <2.0.3 ОБЯЗАТЕЛЬНО следует обновиться.

Т.е. установить текущую тестовую версию... Смысла в багрепортах по прошивкам например годовой давности увы никакого. Тем более по личному опыту установки практически всех промежуточных версий, в большинстве случаев достаточно не меняя конфигурации просто обновить прошивку не выполняя сброс...

theMIROn
11-02-2012, 18:04
Во всех остальных случаях, если приложение само использует прямой вызов socketcall() или другие syscall'ы типа timerfd, signalfd без возможности сделать fallback (например, libusb) мы получим облом на сторонних прошивках в любом варианте :(
а думаешь почему тот же lighttpd позволяет в конфиге выставлять используемые syscall (epoll/select)?
весь остальной случай прилетит в голову так же тому, кто просто сделает opkg update/upgrade но не обновит прошивку.


Ну и как ты это видишь в случае если пакет хочет использовать хотя бы timerfd и не имеет внутреннего алгоритма fallback? Делать это на уровне uClibc? IMHO безумие - закопаемся.
и не надо.. если этого не сделано в uclibc, но сделано в glibc - или спортировать или слинковать с glibc, это дела репозитория.
просто в данном случае *может* 99% получится, что изменения в uclibc пойдут от нас/прошивки/таргета в терминах Optware.



Сторонние прошивки - это какие?Только TomatoUSB? И если да, то какова их приблизительная доля среди Broadcom-based роутеров?
Не только. Кто-нибудь вообще в курсе насколько широко используется Oleg target только благодаря независимости от либ основной системы? Начиная от роутеров, заканчивая насами и телевизорами.


Дело в том, что поддержка сторонней прошивки - это очередное добровольно взятое на себя обязательство, которое мне (и не только мне) необходимо будет в будущем соблюдать.
Отставить панику. Все что нужно - выставить базовую версию ядра (да, поддерживаемые сисколы от этого в принципе и зависят) и иметь отдельную libc.


В том числе в ущерб функционалу. Например, возможно нам придётся отказаться от пакетов, завязанный на kernel headers. Я понимаю, что у них тоже kernel 2.6.22.19, но что они туда напортировали я в душ&#233; не знаю!
Я понимаю лень, некогда и все такое. С optware нам не мешало держать небольшой отдельный репозитарий с именно этими зависимыми от нестандартного ядра вещами.


Стоил ли вообще отрывать от сердца^W прошивки uClibc-библиотеки и выносить их в отдельные пакеты как в Optware?Это отдельная песня. Плюсы от развязки неоспоримы:Очевидно да, сложно представить что их кому-то не видно.



Минусы тоже весомы:
Монолитность. У нас в системе сейчас одна копия uClibc, загруженная в память, у нас используется общий тулчейн для прошивки и репозитория. Большего единения трудно представить! Dependency hell вообще невозможен.
Бред. dephell будет каждый раз когда разойдутся бинарные изменения в libc прошивки с пакетами. Это так удобно, что-ли, игнорировать те же отдельные репозитории Opnwrt для каждой ветки?


До появления нового репозитория у нас было три среды сборки: нативная Optware, кросс-компиляция Optware, кросс-компиляция энтузиастким тулчейном. Теперь весь зоопарк удалось свести к единой среде сборки, которую не хочется опять распараллеливать.
Не путаем теплое с мягким, первые 2 среды из одного места, а значит считаются за одно.


При использовании отдельных базовых библиотек в репозитории придётся снова поддерживать два тулчейна.
Вот тут согласен. Было два, останется два, причем второй (в репозитарий) легко и непринужденно периодически можно будет при необходимести и времени и желании синхронизировать с нашим тулчейном. Это минус? Надеюсь понятно, что это громадный плюс.
И вообще, это не плохо, это блин, НЕОБХОДИМО для мало-мальского не детского/временного/justfortest уровня репозитория. Я, к сожалению, не в курсе, какие задачи стояли, возможно действительно, только для себя без анализа окружения и возможных последствий.
В последнем случае, если мои доводы все еще не существенны, извините, спасибо, такими инструментами я пользоваться не собираюсь. И рекомендовать не буду. Разве что гикам, для которых за радость наступать на грабли, а потом их героически преодолевать.


Если мы не будем отделять базовые библиотеки от прошивки, то нам нужно выработать некий алгоритм синхронного обновления прошивки и репозитория.
В теории, можно с каждым обновлением основных либ менять в прошивке ссылку на более новый репозиторий. Но как? Она же еще не известна. А вдруг репозиторий не сможет обновиться достаточно быстро (все мы люди). См dephell выше.


Я слышал все доводы theMIROn, но ведь OpenWRT ведь как-то же живёт? И причём неплохо. Почему бы не унаследовать их алгоритм?
Есть конкретные предложения с гарантиями, что репозитарий (по их лагоритму - многие репозитарии) не буде/ут нуждаться в постоянном контроле?
Я не про добавление/обновление пакетов, естественно.

theMIROn
11-02-2012, 18:09
но попытка создать нечто поддерживающее все, IMHO не лучшее решение
не думать о последствиях действительно не лучшее решение.


все же как например пишет sfstudio
это отдельная тема, он может писать все что вздумается, к теме это не имеет никакого отношения.
или ты поддерживаешь каждый его манифест? :)


Смысла в багрепортах по прошивкам например годовой давности увы никакого.
Наивно, что даже мило.
Во первых, тысячи, пользующихся скриптами установки об этом не знают.
Во вторых именно они и будут генерировать те самые багрепорты,
В третьих, в случае зависимости прошивка-репозиторий - багрепортов будет во много раз больше. Просто потому что.

TReX
11-02-2012, 18:22
Наивно, что даже мило.
Во первых, тысячи, пользующихся скриптами установки об этом не знают.
Во вторых именно они и будут генерировать те самые багрепорты,
а во вторых, в случае зависимости прошивка-репозиторий - в тысячи раз больше.

Я имел ввиду другое - не в коем смучае не пытаюсь оспорить ваши знания по прошивке, алгоритмам взаимодействия ее с репозитарием, хотел сказать о другом -

Зачем нужен багрепорт, когда возможно эта ошибка давно исправленна в текущей версии, практически во всех системах первое что рекомендуют это обновится до текущей версии, и если ошибка осталась только тогда писать сообщение о ошибке... Так что IMHO поддерживать совместимость репозитария со всеми возможными прошивками - утопия... Можно стараться этого достичь, но например кто будет осуществлять тестирование на устаревших версиях? Или верить что мы все не ошибаемся и то что работает на текущей ночной версии так же корректно отработает и на старой? Опять же IMHO, время затраченное на поддержку неактуальных прошивок лучше потратить более продуктивно...

Еще раз, это мое глубокое IMHO... Не имея такого количества знаний по предмету как уважаемые разработчики могу и ошибаться....

theMIROn
11-02-2012, 18:46
Так что IMHO поддерживать совместимость репозитария со всеми возможными прошивками - утопия...
Верных подход даст сам по себе гарантии относительно более-меннее подходящего окружения.


Можно стараться этого достичь, но например кто будет осуществлять тестирование на устаревших версиях?
Зачем? Если будет не важно старая-новая для 99% пакетов?

ryzhov_al
12-02-2012, 07:04
Отставить панику. Все что нужно - выставить базовую версию ядра (да, поддерживаемые сисколы от этого в принципе и зависят) и иметь отдельную libc. Вот ты разошёлся. Смотрим как не парится по этому поводу OpenWRT. Репозитории:

backfire 10.03.1-rc5 (http://downloads.openwrt.org/backfire/10.03.1-rc5/brcm47xx/packages/) ни одного обновления с 15-Jul-2011,
backfire 10.03.1-rc6 (http://downloads.openwrt.org/backfire/10.03.1-rc6/brcm47xx/packages/) - ни одного обновления с 01-Nov-2011,
backfire 10.03.1 (http://downloads.openwrt.org/backfire/10.03.1/brcm47xx/packages/) - ни одного обновления с 08-Dec-2011,

И так далее. А у них ведь единственная защита от дурака - линк в ipkg.conf указывает на актуальный для прошивки репозиторий. Что мешает нам это перенять?
Я понимаю лень, некогда и все такое. С optware нам не мешало держать небольшой отдельный репозитарий с именно этими зависимыми от нестандартного ядра вещами.Так сделай в прошивке поддержку DIR-320, WNR3500L. Лень и всё такое?:)

Поддержку томатовцев можно сделать в два этапа:
1. Заявиться к ним в гости, сказать "хай, гайз, вот вам новый замечательные инструмент, позволяющий собрать репозиторий OpenWRT вашим тулчейном...".
2. Через пару месяцев, если идея будет поддержана, можно будет поговорить о слиянии.

Убъём двух зайцев: выясним насколько им это интересно, и если интересно, будем иметь энтузиаста от TomatoUSB, разбирающегося в тамошних тонкостях.

TReX
12-02-2012, 07:26
Поддержку томатовцев можно сделать в два этапа:
1. Заявиться к ним в гости, сказать "хай, гайз, вот вам новый замечательные инструмент, позволяющий собрать репозиторий OpenWRT вашим тулчейном...".
2. Через пару месяцев, если идея будет поддержана, можно будет поговорить о слиянии.

Убъём двух зайцев: выясним насколько им это интересно, и если интересно, будем иметь энтузиаста от TomatoUSB, разбирающегося в тамошних тонкостях.

Эмм, а какой из томат идет речь? судя по обновлениям сейчас развиваются только клоны основанные на данной прошивке...

Zyxmon
12-02-2012, 07:34
....А у них ведь единственная защита от дурака - линк в ipkg.conf указывает на актуальный для прошивки репозиторий. Что мешяет нам это перенять?....
Насколько знаю, "у них" прошивка и репозиторий (пакеты) собираются одномоментно, сразу.
И для транка аналогично, и там нет старых ревизий пакетов. Пользуешься транком: если транк обновился - обновляй, переставляй пакеты.

lucky:)
12-02-2012, 16:48
Так поделитесь мануалом такого уровня! Я действительно много чего не знаю. Только чур не упоминайте кислых манипуляций с образами с привлечением BartPE и других адских демонов. Надеюсь, что со времён WinXP сетевая установка сколь-нибудь эволюционировала.

Этот стёб неуместен... Bart PE, как раз там и рядом не лежал... Для XP достаточно связки (TFTP)+(Binl-эмулятор RIS-службы под Perl)+(Samba)+(PHP по вкусу)+(ровные руки)+(голова)...

Вы просили мануал - возьмите:
Download File From Oron- 9.0 Mb (http://oron.com/l2auj0012win) - залито на файлообменник потому что форум к себе файл не принял.

Сразу сделаю замечание - писалось под старый репозиторий... Хотите под новый - делайте cabextract :D

Vitaly_k
12-02-2012, 21:33
Просьба к автору скомпилировать пакеты autossh и nylon

ryzhov_al
13-02-2012, 06:55
Просьба к автору собрать пакет poptop (pptp-сервер)Готово, r369 (http://code.google.com/p/wl500g-repo/source/detail?r=369).
Просьба к автору скомпилировать пакеты autossh...Готово, r370 (http://code.google.com/p/wl500g-repo/source/detail?r=370). Пожалуйста, напишите о результатах тестирования.

...и nylonnylon (http://monkey.org/~marius/pages/?page=nylon)? Лёгкий проксик, брошенный в 2006 году? Есть у него какие-нибудь killing features, недоступные, скажем, в tinyproxy? Если обоснуете необходимость - соберу.

Этот стёб неуместен... Bart PE, как раз там и рядом не лежал... Для XP достаточно связки (TFTP)+(Binl-эмулятор RIS-службы под Perl)+(Samba)+(PHP по вкусу)+(ровные руки)+(голова)...
Стебаться не собирался, спасибо за мануал. Правда его трудно назвать хорошим или актуальным, так как в нём речь идёт про установку WinXP, да ещё с использованием большого количества костылей. Для установки Win7 будет достаточно (http://sath.pp.ua/?p=1) tftpd, всё остальное есть в прошивке.

theMIROn
13-02-2012, 07:50
Просьба к автору собрать accel-pppd :)

Vitaly_k
13-02-2012, 08:36
.Готово, Пожалуйста, напишите о результатах тестирования.


С autossh все в порядке. Единственное замечание - он встал в /opt/sbin, а не в /opt/bin как было в старом репозитарии.
openssh-client ставится в /opt/bin как в старом так и в новом репозитарии.

poptop не ставится - его нет в списках. opkg update делал.



nylon (http://monkey.org/~marius/pages/?page=nylon)? Лёгкий проксик, брошенный в 2006 году? Есть у него какие-нибудь killing features, недоступные, скажем, в tinyproxy? Если обоснуете необходимость - соберу.


tinyproxy не может работать SOCKS-proxy. Собственно ради socks nylon и нужен.

ryzhov_al
13-02-2012, 09:00
poptop не ставится - его нет в списках. opkg update делал.А ссылку на коммит для чего привожу?
$ opkg install pptpd

tinyproxy не может работать SOCKS-proxy. Собственно ради socks nylon и нужен.Может устроит что-то более свежее из OpenWRT репозитория? Относящиеся к теме: srelay, transock, dante, tsock. Если не подойдёт ни один из вышеперечисленных, то соберём старичка nylon.

Просьба к автору собрать accel-pppd :)
Готово, r373 (http://code.google.com/p/wl500g-repo/source/detail?r=373). Но, цитирую (http://sourceforge.net/apps/trac/accel-ppp/wiki/Compilation):
kernel-2.6.25 or later
Поэтому проверять и ещё раз проверять.

defaler
14-02-2012, 04:50
а что с нативной компиляцией? пакеты optware-devel и buildroot отсутствуют

ryzhov_al
14-02-2012, 05:35
а что с нативной компиляцией? пакеты optware-devel и buildroot отсутствуютК счастью, мы избавились (http://www.wl500g.info/showpost.php?p=240672&postcount=65) от этого полурабочего рудимента и пришли (http://www.wl500g.info/showpost.php?p=244977&postcount=300) к единому инструментарию для сборки как прошивки, так и репозитория.
Как и в других современных прошивках, нативной компиляции больше не будет.

theMIROn
14-02-2012, 06:08
Поэтому проверять и ещё раз проверять.
Спс, но LOG_FILE зря отключил, оно нужно. Ну и l2tp точно работать не будет.

defaler
14-02-2012, 06:11
соберите dropbear пожалуйста, с поддержкой zlib, а то я в ближайшие дни до своего компа с линухом не доберусь :)
в репозитории dropbear отсутствует :)

ryzhov_al
14-02-2012, 06:41
Спс, но LOG_FILE зря отключил, оно нужно.Отключил (http://code.google.com/p/wl500g-repo/source/browse/feeds/rtndev/accel-pppd/Makefile?spec=svn373&r=373) SHAPER и LOG_FILE лишь потому, что эти компоненты начинают цепляться за aio.h и др. kernel-space интерфейсы. Если указать путь до интерфейсов, то получаю следующее:

Scanning dependencies of target log_file
make[5]: Leaving directory `/media/BuildRepo/trunk/build_dir/target-mipsel-rtn-linux-gnu/accel-ppp-1.5.0'
make[5]: Entering directory `/media/BuildRepo/trunk/build_dir/target-mipsel-rtn-linux-gnu/accel-ppp-1.5.0'
[ 82%] Building C object accel-pppd/logs/CMakeFiles/log_file.dir/log_file.c.o
In file included from /media/BuildRepo/trunk/build_dir/target-mipsel-rtn-linux-gnu/accel-ppp-1.5.0/accel-pppd/include/aio.h:4,
from /media/BuildRepo/trunk/build_dir/target-mipsel-rtn-linux-gnu/accel-ppp-1.5.0/accel-pppd/logs/log_file.c:8:
/opt/brcm/hndtools-mipsel-uclibc-4.4.6-K26/lib/gcc/mipsel-linux-uclibc/4.4.6/../../../../mipsel-linux-uclibc/sys-include/linux/list.h:1007:2: warning: #warning "don't include kernel headers in userspace"
In file included from /opt/brcm/hndtools-mipsel-uclibc-4.4.6-K26/lib/gcc/mipsel-linux-uclibc/4.4.6/../../../../mipsel-linux-uclibc/sys-include/asm/div64.h:12,
...
/opt/brcm/hndtools-mipsel-uclibc-4.4.6-K26/lib/gcc/mipsel-linux-uclibc/4.4.6/../../../../mipsel-linux-uclibc/sys-include/asm-generic/div64.h:54:3: error: #error do_div() does not yet support the C64
In file included from /opt/brcm/hndtools-mipsel-uclibc-4.4.6-K26/lib/gcc/mipsel-linux-uclibc/4.4.6/../../../../mipsel-linux-uclibc/sys-include/linux/jiffies.h:4,
...
/opt/brcm/hndtools-mipsel-uclibc-4.4.6-K26/lib/gcc/mipsel-linux-uclibc/4.4.6/../../../../mipsel-linux-uclibc/sys-include/linux/calc64.h: In function 'do_div_llr':
/opt/brcm/hndtools-mipsel-uclibc-4.4.6-K26/lib/gcc/mipsel-linux-uclibc/4.4.6/../../../../mipsel-linux-uclibc/sys-include/linux/calc64.h:23: error: 'u64' undeclared (first use in this function)

Ну и l2tp точно работать не будет.Почему? Конфликтующий l2tp.ko намертво вклеен в наше ядро? По мере тестирования подсказывай что ещё в пакете лишнее или не рабочее. Позже пересобиру окончательный вариант.

ryzhov_al
22-02-2012, 10:12
Хочу обратить внимание на ещё одну фичу, которой нет в Optware и быть там не может: inotify.

В репозиторий добавлен пакет incron, который в отличие от своего собрата cron срабатывает не по часам, а по наступлению изменений в файловой системе. Например, можно автоматизировать перезапуск любого сервиса при изменении его конфигурационных файлов или запустить резервное копирование только в случае, когда в файлы будет окончена запись. Другие примеры использования incron можно посмотреть на хабре (http://habrahabr.ru/blogs/linux/66569/).

В случае, если начинание будет поддержано, можно будет собрать inotify-tools (http://inotify-tools.sourceforge.net/) для использования в shell-скриптах автоматизации.

_AsM
22-02-2012, 16:32
Доброе время суток,

Недавно купил Asus RT N16 что бы пограться с линуксом и поизучать его (в линухе ламер, в Windows очень хорошо разбираюсь, программер), сначала прошил r3702 и компилировал под модем поставив optware-devel и buildroot, очень хочу скомпилировать Mono (mono-project.org) что бы запускать .NET приложения, однако промучавшись не смог все до конца скомпилировать т.к. там (в mono) компилятор C# написан угадайте на чем? на C#! поэтому что бы его скомпилировать надо поставить базовую версию моно..

На обычной машине (Open SUSE) Mono у меня компилируется, поставил по инструкции туда же toolchain и скомпилировал свежую прошивку r3771, полет нормальный, сейчас пытаюсь понять как там же скомпилировать Mono под платформу модема...

Перечитываю форум но очень многое мне непонятно...

Помогите плиз с этим разобраться и скомпилировать mono..
Спасибо!

ryzhov_al
22-02-2012, 16:54
Помогите плиз с этим разобраться и скомпилировать mono..Пожалуйста, начните освоение linux с чего-нибудь более простого. Посмотрите здешние темы про кросс-компиляцию. Если интересует репозиторий OpenWRT, почитайте как использовать среду OpenWRT Buildroot (http://wiki.openwrt.org/doc/start#building).

ЗЫ Да! Учтите, что в вашем распоряжении процессор, не дотягивающий по производительности до Pentium 100.

helllamer
23-02-2012, 17:58
Спасибо за мануал по сборке и за ваш труд. Сейчас чудненько собрался весь необходимый роутеру софт (в т.ч. rtorrent 0.8.9) со всеми зависимостями:


make -j3 package/feeds/packages/{rtorrent,mc,tor,tar,perl}/compile

Запилил все пакеты из openwrt/trunk/bin/rtn/packages на пустую флешку роутера, вставил в роутер, установил, всё работает на r3707! Единственная ошибка была -- в /opt/lib нет libstdc++.so.6, но я скопипастил её руками, и затем установил всё через opkg --force-deps install *.ipk. На отсутствующий пакет libpthread ругалось, но это недолго исправить.

Со сборкой gnu make возникла проблема: в makefile неправильные пути были (/usr вместо /opt), написал патч наподобии тех, что в /rtn/fixes/*. Потом на автомате сделал svn add ./fixes/make и задумался: а как можно поучаствовать в разработке сабжа?.. И что нужно/не нужно коммиттить?

// RT-N16

ryzhov_al
04-03-2012, 12:34
а думаешь почему тот же lighttpd позволяет в конфиге выставлять используемые syscall (epoll/select)?
весь остальной случай прилетит в голову так же тому, кто просто сделает opkg update/upgrade но не обновит прошивку.Чйорд! Подарок в голову уже на полпути?

Download ( http://code.google.com/p/wl500g/downloads/detail?name=hndtools-mipsel-uclibc-4.4.6-K26-x86_64-r3826.tar.bz2&can=2&q= ): Toolchain (gcc 4.4.6 uClibc 0.9.32) K26 x86_64 build 2012.02.26 Знаете, когда какую-то задачу постоянно откладываешь, она постепенно демонизируется и кажется не выполнимой.
На следующей неделе обещаю себе разобраться с механизмами ld.so* для включения в репозиторий базовых библиотек. Если разберусь, то репозиторий будет отвязан от прошивки и мы поговорим о нашей экспансии.

voidshah
04-03-2012, 13:35
На следующей неделе обещаю себе разобраться с механизмами ld.so* для включения в репозиторий базовых библиотек. Если разберусь, то репозиторий будет отвязан от прошивки и мы поговорим о нашей экспансии.
Так вроде уже разбирались;) См. optware/sources/buildroot/
и там патчи
400-ld-native-search-path.patch
uClibc-patches/190-dl-defs.patch
uClibc-patches/200-ldso-search-path.patch
uClibc-patches/270-ldd-opt.patch

ryzhov_al
04-03-2012, 14:45
Так вроде уже разбирались;)Ха! Я уже успел забыть.
Спасибо, Олег.

voidshah
05-03-2012, 15:16
Ха! Я уже успел забыть.
Спасибо, Олег.
:) Девичья память? Склероз?:D Шутю;).Все переносится, только у меня с ld.so.cache косяки выходят. Все равно тупо его в /etc ищет. Наверное я чего-то накосячил.

Забыл еще про
uClibc-patches/250-ldconfig-opt.patch

MercuryV
06-03-2012, 15:52
Прошу по возможности собрать Ziproxy (http://ziproxy.sourceforge.net/)
Это добротный сжимающий прокси с широким функционалом. Особенно удобен для использования из браузеров мобильных устройств. Практически кастомизируемый аналог Opera Mini/Turbo.
Не уверен, что вычислительной мощности рутера хватит на полноценный транскодинг изображений, но чем черт не шутит, на очень слабых VPS работает со свистом (во всяком случае для одного-двух одновременных пользователей). Потребление памяти у ziproxy при работе крайне умеренное.
С меня подробный отчет о тестировании.

ryzhov_al
06-03-2012, 16:09
Не уверен, что вычислительной мощности рутера хватит на полноценный транскодинг изображений, но чем черт не шутит, на очень слабых VPS работает со свистом Создание для галереи одного thumbnail'а для фотографии в 3MP средствами php-gd на роутере у меня занимает полминуты.

MercuryV
06-03-2012, 17:19
Создание для галереи одного thumbnail'а для фотографии в 3MP средствами php-gd на роутере у меня занимает полминуты.
Функционал там тонко настраиваемый.
Кроме транскодинга изображений есть другие, менее требовательные к ресурсам функции:
1) gzip компрессия текстовых данных (если веб-сервер отдает не в gzip). сжатие на роутере, к примеру, этой страницы в gzip со средней степенью компрессии шустро происходит, на глаз не засечь.
2) оптимизация JS/СSS на лету.
3) упреждающее разрешение доменных имен и др.
Еще думаю попробовать перед ziproxy поставить polipo в качестве кеша.
Резюмирую: ziproxy однозначно не является "must have" пакетом для роутера, но заочно отбрасывать его жаль.

ryzhov_al
08-03-2012, 07:07
DNSCrypt now supports uclibc-based systems, iOS, and Win32. Добавишь 0.9.3 в свой репозиторий?Добавлю на следующей неделе.
Пока среда сборки в нерабочем состоянии: допиливаю (http://code.google.com/p/wl500g-repo/source/list) тулчейн с целью включения локалей и переноса в репозиторий ключевых библиотек на манер Optware. Патчи для binutils готовы, для uClibc ещё нет.

Скажи, пожалуйста, какую ревизию тулчейна взять для репозитория? Выбранная ревизия послужит нам весь ближайший год.

lly
08-03-2012, 07:17
Скажи, пожалуйста, какую ревизию тулчейна взять для репозитория? Выбранная ревизия послужит нам весь ближайший год.
По binutils/uClibc движений в ближайшем будущем не предвидится, только если не вскроется какой-нибудь серьёзный баг.

gcc очень хочется заюзать 4.5, но пока мейнтенеры тормозят с релизом 4.5.4, а после выхода 4.5.3 прошёл уже почти год и накопилась куча багфиксов. Тягать все PR из svn офигеешь :eek:
Сейчас подумаю, может выборочно самые критичные(P1,P2) возьму, и так оставим до релиза 4.5.4.

AlexeyS
08-03-2012, 07:26
Да, мне 4.5.3 понравился, код получается компактнее, роутер уже сутки без сбоев работает...

lly
08-03-2012, 07:45
AlexeyS
У меня еще вышло, что код получается на пару процентов быстрее.

P.S. Последний релиз 4.4.7 обещают на следующей неделе.

theMIROn
08-03-2012, 12:07
gcc очень хочется заюзать 4.5, но пока мейнтенеры тормозят с релизом 4.5.4, а после выхода 4.5.3 прошёл уже почти год и накопилась куча багфиксов. Тягать все PR из svn офигеешь :eek:
Сейчас подумаю, может выборочно самые критичные(P1,P2) возьму, и так оставим до релиза 4.5.4.

ок, давай перелезем на 4.5.3

synemo
10-03-2012, 15:35
планируется ли добавление в новый репозиторий следующих программ?
1. squid
2. bind
3. cyrus-imapd
4. postfix

ivanbl4
10-03-2012, 22:26
Можно ли собрать samba3 и proftpd?

ryzhov_al
11-03-2012, 06:18
synemo, ivanbl4, при наполнении репозитория приоритет за теми пакетами, функционал которых не встречается в нашей прошивке, поэтому samba\ftp-серверов пока не будет.

Повторюсь, я не держу свои наработки в секрете и любой желающий может добавить (http://code.google.com/p/wl500g-repo/wiki/Compiling) отсутствующие пакеты сам. Если при этом наработки будут обнародованы, то внесу их в репозиторий. Кроме того, я отнюдь не против, если у нового репозитория появятся соавторы и не буду ревновать своё детище, когда оно утратит моё монопольное авторство. Это было бы крайне недальновидно. Двери открыты.

lly, theMIROn, подскажите когда будет "готов" тулчейн с GCC 4.5.3. До этого момента репозиторий будет собираться по прежнему, с привязку к прошивочной uClibc.

lly
11-03-2012, 06:32
lly, theMIROn, подскажите когда будет "готов" тулчейн с GCC 4.5.3. До этого момента репозиторий будет собираться по прежнему, с привязку к прошивочной uClibc.
Он готов. Владу пока некогда выложить 32-х битные бинарники на гуглкод, но это не должно быть проблемой для тебя.

P.S. samba3 это не повторение, т.к. samba2 бесконечно протухла, но очевидно, что без посторонней помощи этот процесс затянется(так же как и у нас переход на samba 3.0)...

vectorm
11-03-2012, 07:43
У меня прошивки уже на новом тулчейне собираются, с позавчера.

lucky:)
12-03-2012, 00:51
Повторюсь, я не держу свои наработки в секрете и любой желающий может добавить (http://code.google.com/p/wl500g-repo/wiki/Compiling) отсутствующие пакеты сам.

Поправьте ссылку на "Buildroot tech.reference", там (http://code.google.com/p/wl500g-repo/wiki/Compiling):)

MercuryV
12-03-2012, 19:28
Пока среда сборки в нерабочем состоянии

Подскажите, с этим связаны ошибки при make toolchain?

cp: cannot stat `./*-uclibc-*.patch': No such file or directory
тут закомментировал в Makefile, сборка пошла дальше


configure: error: in `/home/builder/openwrt/toolchain-1.9.2.7-rtn-r3458/src/build_dir/toolchain-mipsel_gcc4.4.6/gcc-4.4.6-final/mipsel-linux-uclibc/libstdc++-v3':
configure: error: C compiler cannot create executables

что делать с libstdc++-v3 - не знаю.

Стоит что-либо предпринимать или нужно обождать?

ryzhov_al
13-03-2012, 04:37
Подскажите, с этим связаны ошибки при make toolchain?Да. Компиляция собственного тулчейна пока не допилена. Пока вместо make toolchain используйте make toolchain_download.

MercuryV
13-03-2012, 07:22
используйте make toolchain_download.
На какую версию лучше заменить RTN_TOOLCHAIN_FILENAME?
на ... 4.4.6-K26-r3826 или на ... 4.5.3-K26-x86_64-r3920 ?

ryzhov_al
13-03-2012, 07:36
На какую версию лучше заменить RTN_TOOLCHAIN_FILENAME?
на ... 4.4.6-K26-r3826 или на ... 4.5.3-K26-x86_64-r3920 ?
Вскоре там будет тулчейн одной ревизии r3920 под две разные архитектуры. Так что выбор у вас будет не велик: скачивайте вариант x86 или amd64 в зависимости от разрядности операционки.

MercuryV
13-03-2012, 09:34
Шел по инструкции (https://code.google.com/p/wl500g-repo/source/browse/trunk/INSTALL) (с учетом make toolchain_download). Все было гладко до шага make package/compile. Из лога


checking for TIFFOpen in -ltiff... no
configure: error: "Can't build without libtiff (does your system require a libtiff-devel package?)"
make[2]: *** [/home/builder/openwrt/trunk/build_dir/target-mipsel-rtn-linux-gnu/spandsp-0.0.6/.configured_] Error 1

Подскажите, как исправить ситуацию?

P.S. тулчейн r3826

ryzhov_al
13-03-2012, 10:04
Подскажите, как исправить ситуацию?По какой-то причине spandsp не находит зависимую libtiff. Видимо, придётся патчить исходники.

Кроме того, не мешает проверить правильно ли собирается libtiff и правильно ли "кладётся" в ./trunk/staging_dir. Скажу только, что с использованием libtiff у меня успешно собираются sane-backends и leptonica.

И последнее. Сама libtiff может быть и находится, но она, в свою очередь, зависит от zlib и libjpeg. Линкер - не настолько умная штука, чтобы самостоятельно решать эти задачи. Можно помочь ему, добавив в spandsp/Makefile строчку:

TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/opt/lib

MercuryV
13-03-2012, 10:18
проверить правильно ли собирается libtiff и правильно ли "кладётся" в ./trunk/staging_dir.
Так правильно?


builder@openwrt:~/openwrt/trunk/staging_dir/target-mipsel-rtn-linux-gnu/opt/lib$ ls libtiff* -l
-rw-r--r-- 1 builder builder 496216 Mar 13 12:56 libtiff.a
lrwxrwxrwx 1 builder builder 16 Mar 13 12:56 libtiff.so -> libtiff.so.3.9.2
lrwxrwxrwx 1 builder builder 16 Mar 13 12:56 libtiff.so.3 -> libtiff.so.3.9.2
-rwxr-xr-x 1 builder builder 385586 Mar 13 12:56 libtiff.so.3.9.2
-rw-r--r-- 1 builder builder 9296 Mar 13 12:56 libtiffxx.a
lrwxrwxrwx 1 builder builder 18 Mar 13 12:56 libtiffxx.so -> libtiffxx.so.3.9.2
lrwxrwxrwx 1 builder builder 18 Mar 13 12:56 libtiffxx.so.3 -> libtiffxx.so.3.9.2
-rwxr-xr-x 1 builder builder 11737 Mar 13 12:56 libtiffxx.so.3.9.2

ryzhov_al
13-03-2012, 10:25
Так правильно?Правильно.

tridog
13-03-2012, 13:08
Можно ли добавить в репозиторий утилиту monit?

MercuryV
13-03-2012, 15:03
TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/opt/lib помогло, спасибо, но в некоторых пакетах (asterisk к примеру) приходится править пути в Makefile usr/lib --> opt/lib и т.п.
Это нормально?

Не могу справиться с ipset


configure: error: The kernel source directory /home/builder/openwrt/rtn/buildroot/../../firmware-1.9.2.7-rtn-r3826/src/linux/linux-2.6 is not patched with netlink.patch to support ipset
make[2]: *** [/home/builder/openwrt/trunk/build_dir/linux-rtn/ipset-6.11/.configured_] Error 1
make[2]: Leaving directory `/home/builder/openwrt/trunk/feeds/packages/net/ipset'


Патч ~/openwrt/trunk/build_dir/linux-rtn/ipset-6.11/netlink.patch корректно не применяется.


patching file include/linux/netfilter/nfnetlink.h
Hunk #1 FAILED at 47.
1 out of 1 hunk FAILED -- saving rejects to file include/linux/netfilter/nfnetlink.h.rej
patching file include/net/netlink.h
Hunk #1 FAILED at 856.
1 out of 1 hunk FAILED -- saving rejects to file include/net/netlink.h.rej
patching file net/netfilter/nfnetlink.c
Hunk #1 succeeded at 38 with fuzz 2 (offset 3 lines).

Какие должны быть правильные действия в таком случае?

desper
13-03-2012, 17:34
Установил из репозитория perl и модули perlbase-getopt perlbase-sys perlbase-io, пытаюсь запустить ddclient:


Can't locate strict.pm in @INC (@INC contains: /opt/lib/perl5/5.10 .) at /opt/sbin/ddclient line 17.
BEGIN failed--compilation aborted at /opt/sbin/ddclient line 17.


Нагуглил (http://perldoc.perl.org/perlmodlib.html#Pragmatic-Modules) что модуль strict.pm входит в состав набора стандартных модулей Pragmatic Modules.

Скачал perl из старого репозитория optware, там strict.pm идет в составе пакета.

Подскажите, пожалуйста, в каком пакете содержится этот модуль в новом репозитории?

tridog
13-03-2012, 18:17
Can't locate strict.pm in @INC (@INC contains: /opt/lib/perl5/5.10 .) at /opt/sbin/ddclient line 17.
BEGIN failed--compilation aborted at /opt/sbin/ddclient line 17.
Подскажите, пожалуйста, в каком пакете содержится этот модуль в новом репозитории?
Чудные дела иногда происходят - только сегодня с этим столкнулся, правда для другого скрипта :D

Сделайте

opkg install perlbase-essential

desper
13-03-2012, 18:57
Спасибо! По ходу выяснилось что нужно поставить еще девять модулей и ddclient запустился )

Но, при использовании ssl вываливается:


FATAL: Error loading the Perl module IO::Socket::SSL needed for SSL connect.
FATAL: On Debian, the package libio-socket-ssl-perl must be installed.
FATAL: On Red Hat, the package perl-IO-Socket-SSL must be installed.


В старом репозитории perl-io-socket-ssl есть. Собственно ради поддержки ssl и было это все затеяно.
OpenDNS обновление ip поддерживает только через ssl, а стандартный inadyn этого не умеет (

Возможно ли добавить perl-io-socket-ssl в новый репозиторий?

dmig
14-03-2012, 16:05
небольшая просьба: патч к syslog-ng из сообщения http://lists.debian.org/debian-security/2002/12/msg00297.html, чтобы тот не гадил в лог бессмысленными STATS: dropped 0

ryzhov_al
18-03-2012, 08:04
Коллеги, ни одна просьба на последних трёх страницах треда не останется без внимания. Разумеется, в пределах моих возможностей.

помогло, спасибо, но в некоторых пакетах (asterisk к примеру) приходится править пути в Makefile usr/lib --> opt/lib и т.п.
Это нормально?
Если патчей к этому пакету в моём наборе нет, то вполне нормально. Если есть, то это значит, что я что-то не допилил или asterisk был изменён в последнем транке OpenWRT. Месяц назад всё работало (http://www.wl500g.info/showpost.php?p=244948&postcount=160).


Не могу справиться с ipsetОб этом есть упоминания в ./TODO. ipset не собирается без собранной прошивки. Это единственный пакет, который требует не просто исходники ядра, а именно собранную прошивку.


Какие должны быть правильные действия в таком случае?С уважением отмечу, что все ваши действия правильные. IMHO.


Возможно ли добавить perl-io-socket-ssl в новый репозиторий?В Optware был один единственный раскормленный пакет perl, в который были включены все мыслимые модули. В OpenWRT есть мания всё дробить на мелкие пакеты, поэтому вместо одного раскормленного у нас в новом репозитории

$ opkg list | grep -i perl | wc -l
154полторы сотни мелких пакетов, относящийхся к perl. По моим наблюдениям, охват ПО в OpenWRT больше, чем в прежнем. Ищите сильнее:)

Кроме того, я не понимаю за чем дело встало? Вы, как специалист с мировым именем в области perl, всегда можете скачать (http://cpansearch.perl.org/src/ASPA/IO-Socket-SSL-0.81/lib/IO/Socket/SSL.pm) недостающий модуль с cpan.org и подложить его в папку модулей, в данном случае - \opt\lib\perl5\5.10\IO\Socket

MercuryV
18-03-2012, 10:04
все ваши действия правильные. IMHO.
Похоже, что я не самый удачный момент выбрал, чтобы влиться в нестройные ряды. Если действия правильные, а со сборкой не срастается.
К сожалению, навыки и умения у меня по теме на уровне: минимально необходимые + "могу погуглить". Поэтому любой сбой при подготовке окружения для сборки требует либо чудовищных объемов гугления, дабы перепроверить самого себя, либо потока вопросов на этом форуме, что тоже нехорошо.
Есть несколько просьб/предложений:
1) анонсировать на форуме момент, когда "собирается всё для кросскомпиляции теперь гладко, налетай"
2) если есть нюансы, описать их в более развернутом HOWTO
3) поделиться образом VM, где "всё работает" - если п.3 допустим, то готов хостить/обновлять такие образы.

P.S. цель у меня была попробовать пособирать пакеты прикладного ПО, а не модифицировать прошивку.

MMX2
18-03-2012, 12:15
Похоже, что я не самый удачный момент выбрал, чтобы влиться в нестройные ряды. Если действия правильные, а со сборкой не срастается.
К сожалению, навыки и умения у меня по теме на уровне: минимально необходимые + "могу погуглить". Поэтому любой сбой при подготовке окружения для сборки требует либо чудовищных объемов гугления, дабы перепроверить самого себя, либо потока вопросов на этом форуме, что тоже нехорошо.
Есть несколько просьб/предложений:
1) анонсировать на форуме момент, когда "собирается всё для кросскомпиляции теперь гладко, налетай"
2) если есть нюансы, описать их в более развернутом HOWTO
3) поделиться образом VM, где "всё работает" - если п.3 допустим, то готов хостить/обновлять такие образы.

P.S. цель у меня была попробовать пособирать пакеты прикладного ПО, а не модифицировать прошивку.

Присоединяюсь к предложениям - делаю все по инструкции (од дебианом) - make вываливается с ошибками. Обгуглился.

ryzhov_al
18-03-2012, 14:03
Есть несколько просьб/предложений:
1) анонсировать на форуме момент, когда "собирается всё для кросскомпиляции теперь гладко, налетай"
2) если есть нюансы, описать их в более развернутом HOWTO
3) поделиться образом VM, где "всё работает" - если п.3 допустим, то готов хостить/обновлять такие образы.MercuryV, MMX2, дело в том, что проекту, напомню (http://www.wl500g.info/showpost.php?p=240841&postcount=72), три месяца отроду и он пока что достаточно часто видоизменяется. Описание различных нюансов теряет актуальность на каждом следующем этапе.
Действующая инструкция есть в транке - ./INSTALL. На поддержание wiki или образа VM, который, кстати, после сборки занимает ~10Гб у меня нет времени! До сегодняшнего дня я вёл начинание в одиночку.

Принцип остаётся прежним: моя среда - это куча патчей к транку OpenWRT Buildroot (http://downloads.openwrt.org/docs/buildroot-documentation.html), позволяющая собрать репозиторий OpenWRT для нашей прошивки. Я не могу угнаться за каждой ревизией OpenWRT, коих бывает (https://dev.openwrt.org/timeline) до двадцати на дню, поэтому пишу в том же ./INSTALL номер ревизии, с которой текущая среда сборки проверена на работоспособность.

MMX2
18-03-2012, 14:15
ryzhov_al не хотели никого обидеть, более того, понимаем амбициозность и сложность поставленной задачи. Просто разобраться в этом почти с 0 - как найти нужное дерево в дремучем лесу без карты и понимания, что ты вообще ищещ:) Поэтому и высказывали желания подробного how-to;)

ryzhov_al
18-03-2012, 14:31
ryzhov_al не хотели никого обидеть, более того, понимаем амбициозность и сложность поставленной задачи.Не обидчивый. Обидчивым вести публичные начинания противопоказано.

Просто разобраться в этом почти с 0 - как найти нужное дерево в дремучем лесу без карты и понимания, что ты вообще ищещ:) Поэтому и высказывали желания подробного how-to;)Не будет. Или хотите, чтобы я перенёс усилия с разработки на документацию?
Извольте понимать что происходит. В Makefile'е всего полторы цели.

voidshah
18-03-2012, 15:54
MercuryV, MMX2 Поймите правильно, сейчас стоят более значимые задачи, чем написание хауты. И на это уходит не мало времени! Я бы и сам и ryzhov_al от how-to иногда не отказались бы:D. Да нету ее:D. И еще, возгласы - "не получается" - это не вопрос по сути.

MercuryV
18-03-2012, 16:28
Имхо, первопричина в "Пока среда сборки в нерабочем состоянии". Вопросы по сути получают ответы с предложениями разного сорта костылей. И это понятно.
Обращаю внимание на первый пункт в моих предложениях.
Напишу здесь развернутей: прошу сообщить о моменте, когда инструкция в /trunk/INSTALL снова станет приводить к ожидаемому результату.

До этого момента я беру паузу и не отвлекаю разработчиков.

yut
19-03-2012, 06:20
Не являясь обладателем данного девайса, нашел в форуме какие-то мысли по поводу установки ncursesw. Я использую openwrt с некоторыми своими патчами, но не могу побороть неправильное отображение половины русских букв в ncurses. То ли ncursesw неправильно собирается, то ли он не используется, несмотря на указания. Ошибка с русскими буквами в ncurses известна.
В компиляции uClibc в файле Common указываю UCLIBC_HAS_LOCALE=y,
в Makefile добавляю
-e 's,^.*UCLIBC_HAS_LOCALE.*,UCLIBC_HAS_LOCALE=$(if $(CONFIG_BUILD_NLS),y,n),g' \
не помогает. Поэтому все кто использует ncurses/ncursesw, rtorrent, screen, отображают половину русских букв неправильно.
У кого-нибудь все отображается верно? Дайте, пожалуйста, исходники, помотрю, попробую адаптировать для себя. Спасибо.

ryzhov_al
19-03-2012, 18:01
В конце этой недели новый репозиторий ждёт ключевое изменение: в него будут включены свои собственные базовые библиотеки uClibc.

Репозиторий станет независимым от текущей прошивки.

Побочное изменение: target-платформа в названии пакетов будет изменена на выбранное вами (большинством) название. Например, если раньше пакет назывался mc_4.8.0-1_rtn.ipk, то в будущем он будет иметь имя mc_4.8.0-1_entware.ipk.

До конца недели у вас есть возможность повлиять на название нашего начинания. Голосуйте (http://www.wl500g.info/showthread.php?t=28953).

VA_DOS
19-03-2012, 21:12
То есть в прошивке изменений базовых либ более не предвидится?

ryzhov_al
20-03-2012, 03:10
То есть в прошивке изменений базовых либ более не предвидится?Не чаще раза в год.
Каждое изменение потребует повторной установки используемых пакетов.

thefree
21-03-2012, 11:11
Обновите minidlna
1.0.24 - Released 14-Feb-2012
--------------------------------
- Fix playlist browsing with no SortOrder specified.
- Fix inotify detection of caption file removal.
- Handle an empty DeviceID from Zyxel media player SOAP request.
- Fix false positives in playlist caching optimization when we have duplicate file names in different directories.
- Trim the camera model name extracted from EXIF tags.
- Add support for user-configurable log level settings.
- Add DLNA.ORG_FLAGS support.

ryzhov_al
21-03-2012, 11:29
Можно ли добавить в репозиторий утилиту monit?Готово, r396 (http://code.google.com/p/wl500g-repo/source/detail?r=396).

voidshah
21-03-2012, 12:25
То есть в прошивке изменений базовых либ более не предвидится?
Не совсем так. Репозиторий будет работать со своими базовыми либами (в /opt/lib) как это было в optware. Непосредственно прошивки это никак не касается.

ryzhov_al
22-03-2012, 05:29
Внимание!

Если вы пользовались репозиторием до 21.03.12г, то обновление ПО невозможно. Необходима переустановка ПО по инструкции из первого поста.


Теперь технические детали, некоторые пункты вытекают друг из друга:

для сборки репозитория используется модифицированный энтузиасткий тулчейн,
теперь к репозиторию прилагаются собственные библиотеки uClibc с нормальной поддержкой локалей,
выполнена отвязка от ключевых библиотек из прошивки, за что низкий поклон тов.voidshah,
для того, чтобы пользователям предыдущих версий репозитория при обновлении не "прилетел в голову подарок"© theMIROn, изменено название платформы в пакетах на entware,
использование репозитория теперь теоретически возможно на других k26-based прошивках на устройствах архитектуры MIPSEL r1/r2 и папкой /opt, доступной для монтирования на внешние носители,
исчезли предупреждения и болячки bash, rtorrent, less и других ncurses-based приложений, связанных с отсутствием локалей. Скажем, формат даты в панелях mc теперь соответствует отечественному стандарту.


Изменения в репозитории достаточно значительные, поэтому прошу сообщать обо всех встреченных странностях и ошибках.

theMIROn
22-03-2012, 05:33
выполнена отвязка от ключевых библиотек из прошивки, за что низкий поклон тов.voidshah,
для того, чтобы пользователям предыдущих версий репозитория при обновлении не "прилетел в голову подарок"© theMIROn, изменено название платформы в пакетах на entware

:) вот и ладушки

ryzhov_al
22-03-2012, 05:37
Для того, чтобы на новом репозитории всё было нормально с кириллицей в терминале необходимо:
со стороны ПК:
Настроить в PuTTY трансляцию символов: "Window > Translation > Remote character set: > UTF-8"
со стороны роутера:
Установить пакет с определениями свойств терминалов и создать файл профиля в домашнем каталоге пользователя:

$ opkg install terminfo
$ cat ~/.profile
export TERMINFO=/opt/share/terminfo
export PATH='/opt/sbin:/opt/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin'
export TERM=xterm
export LANG='ru_RU.UTF-8'
export LC_ALL='ru_RU.UTF-8'
Напоминаю, что файл /tmp/local/root/.profile должен иметь атрибут исполняемого. После чего необходимо сохранить настройки:

$ flashfs save && flashfs commit && flashfs enable
и при следующем заходе в терминал с кириллицей всё будет нормально.

ryzhov_al
22-03-2012, 06:49
выполнена отвязка от ключевых библиотек из прошивки, за что низкий поклон тов.voidshah,
для того, чтобы пользователям предыдущих версий репозитория при обновлении не "прилетел в голову подарок"© theMIROn, изменено название платформы в пакетах на entware,:) вот и ладушки
Уболтал, языкастый!:)

ЗЫ Жду теста accel-pppd. Если не нужен, нафига было просить?

ЗЗЫ И ещё просьба. Взгляни (http://code.google.com/p/wl500g-repo/source/browse/#svn%2Ftrunk%2Ftoolchain) на патчи к uClibc, предназначенные для отвязки от /lib и привязки к /opt/lib. Помимо них при сборке используется ключи линковщика -Wl,--dynamic-linker=/opt/lib/ld-uClibc.so.0 -Wl,-rpath,/opt/lib. Пока Леонида нет, взглянуть на патчи среди моих знакомых некому. Со старыми патчами для uClibc 0.9.28 из optware сравнивать бесполезно, с тех давних пор в uClibc многое переколбасили.

MercuryV
22-03-2012, 08:34
Приветствую всех.
Есть вопрос: допустима ли многопоточная компиляция тулчейна и пакетов репозитория? или можно наступить на грабли?
я про make -j

ryzhov_al
22-03-2012, 08:41
Приветствую всех.
Есть вопрос: допустима ли многопоточная компиляция тулчейна и пакетов репозитория? или можно наступить на грабли?
я про make -jМоих патчей - нет, пакетов - да. В OpenWRT Buildroot по умолчанию эта возможность отключена. Воизбежание.

Для включения многопоточной сборки пакетов необходимо в Buildroot зайти в графическое меню:

$ cd ./trunk
$ make menuconfig
Отметить галкой пункт "Global Build Settings > Build certan packages parallelized [x]" и выйти из графического меню с сохранением настроек и продолжить сборку пакетов:

$ cd ./trunk
$ make packages/compile

Пожалуйста, пользуйтесь документацией (http://wiki.openwrt.org/about/toolchain) OpenWRT Buildroot.

mbg
22-03-2012, 09:49
Удалил все в папке /opt, поставил opkg, поставил mc, пробую запустить:

[root@router root]$ mc
-sh: mc: not found
И что-то не пойму, в чем дело...

ryzhov_al
22-03-2012, 10:06
И что-то не пойму, в чем дело...Дело в том, что вы не посмотрели на инструкцию в первом посте.

ryzhov_al
22-03-2012, 11:15
небольшая просьба: патч к syslog-ng из сообщения http://lists.debian.org/debian-security/2002/12/msg00297.html, чтобы тот не гадил в лог бессмысленными STATS: dropped 0Готово, r404 (http://code.google.com/p/wl500g-repo/source/detail?r=404).

планируется ли добавление в новый репозиторий следующих программ?
1. squid
2. bind
3. cyrus-imapd
4. postfixДобавил bind, r405 (http://code.google.com/p/wl500g-repo/source/detail?r=405). Далее пакеты буду добавлять после получения от вас обратной связи по работе bind.

Можно ли собрать samba3 и proftpd?Proftpd готов, r406 (http://code.google.com/p/wl500g-repo/source/detail?r=406). Жду результатов проверки работоспособности.

Обновите minidlna
1.0.24 - Released 14-Feb-2012
--------------------------------
- Fix playlist browsing with no SortOrder specified.
- Fix inotify detection of caption file removal.
- Handle an empty DeviceID from Zyxel media player SOAP request.
- Fix false positives in playlist caching optimization when we have duplicate file names in different directories.
- Trim the camera model name extracted from EXIF tags.
- Add support for user-configurable log level settings.
- Add DLNA.ORG_FLAGS support.
В репозитории, начиная с r397 (http://code.google.com/p/wl500g-repo/source/detail?r=397).
Пользую сам, вопросов нет.

MMX2
22-03-2012, 12:20
А еще очень хочется свежий NUT в новый репозиторий:) у самого собрать не получилось:(

mbg
22-03-2012, 13:42
Дело в том, что вы не посмотрели на инструкцию в первом посте.

Читал, но строчку про библиотеки не заметил. Дико извиняюсь и спасибо.

Alas_KA
22-03-2012, 14:25
ryzhov_al!!!
Первый пост перечитал несколько раз, но все равно "дело не идет..."
Пытаюсь перейти на новый репозитарий на прошивке tomatousb. Скрипт switch_to_openwrt.sh "затыкается" на строке 7 - ipkg.sh: not found.
Никак не догадаюсь - откуда у меня должен появиться скрипт ipkg.sh? Либо его от куда-то еще надо подгрузить?

Если это касается ipkg из репозитория tomatousb, то использовалась команда:
ipkg update
При попытке выполнить:
ipkg install opkg
получаю:
Nothing to be done
An error ocurred, return value: 4.
Collected errors:
Cannot find package opkg.
Check the spelling or perhaps run 'ipkg update'

На tomatousb.ru думаю все в основном ставили optware по инструкции Vlad и там используется репозитарий:
REPOSITORY=http://ipkg.nslu2-linux.org/feeds/optware/ddwrt/cross/stable

Я пока "в непонятках"...

pilers
22-03-2012, 15:22
.... откуда у меня должен появиться скрипт ipkg.sh? ..........

ipkg.sh - скрипт, входящий в прошивку "от энтузиастов" и находится он в /usr/bin Его задача, в основном, сводится к обеспечению установки ipkg-opt для optware (opkg для entware).
Как в tomatousb реализовано, не знаю. Должно что-то подобное быть.

Alas_KA
22-03-2012, 15:30
Спасибо. Перечитав "Инструкция по настройке роутера WL-500gP с нуля" я это уже понял.
В tomatousb нет ipkg.sh.
ryzhov_al - есть выход у "помидоров"???

ryzhov_al
22-03-2012, 15:38
В tomatousb нет ipkg.sh.
ryzhov_al - есть выход у "помидоров"???Поправил в r408 (http://code.google.com/p/wl500g-repo/source/detail?r=408).
Необходимо проверить работоспособность.

MMX2
22-03-2012, 16:56
Переставил все по новой инструкции из первого поста (пришлось переустанавливать все пакеты).
Установил proftpd
Не захотел работать с имеющимися пользователями в файле /etc/passwd
Ситуацию спасло повторное назначение пароля этим юзверям(!)
Все работает! Завтра с работы попробую попереливать файлы.
Спасибо за proftpd! ;)
Очень ждем samba и я очень жду NUT :)))

TReX
22-03-2012, 17:51
[root]$ opkg install uclibc-opt
Installing uclibc-opt (0.9.32-1) to root...
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/uclibc-opt_0.9.32-1_entware.ipk.
Installing libc (-104) to root...
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/libc_-104_entware.ipk.
Installing libgcc (-104) to root...
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/libgcc_-104_entware.ipk.
Installing libstdcpp (-104) to root...
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/libstdcpp_-104_entware.ipk.
Installing libpthread (-104) to root...
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/libpthread_-104_entware.ipk.
Installing librt (-104) to root...
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/librt_-104_entware.ipk.
Installing ldconfig (-104) to root...
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/ldconfig_-104_entware.ipk.
Configuring ldconfig.
Configuring libc.
Configuring libpthread.
Configuring libgcc.
Configuring libstdcpp.
Configuring librt.
Configuring uclibc-opt.
Updating /opt/etc/ld.so.cache
/opt/bin/ldconfig: /opt/lib/libstdc++.so.6.0.14-gdb.py is not a shared library, skipping
/opt/bin/ldconfig: skipping /opt/usr/lib: No such file or directory


A последние две строчки это нормально или глюки? )

ryzhov_al
22-03-2012, 18:01
A последние две строчки это нормально или глюки? )Нормально.


Коллеги, а как добиться нормальной отрисовки mc на сабже через ssh клиент? И локаль и кодировка клиента - utf-8.
И всё таки у меня что-то с клиентом. Не смотря на утф в локали путти выглядит всё так, будто там кои локаль.
Это косвенно подтверждает то, что если скинуть стдаут в текстовый файл, интерфейс выглядит нормально.
Прошивка от энтузиастов.См. предыдущую страницу.
(http://www.wl500g.info/showpost.php?p=247750&postcount=366)
Как-то странно кстати себя повёл ipkg в новой прошивке... а в репе появился opkg.
Совершенно верно, но это не странности. В Optware использовался менеджер пакетов ipkg, в новом OpenWRT (http://wl500g-repo.googlecode.com/svn/) - opkg.
Их взаимная несовместимость, кроме прочего, составляет отличную защиту от дурака, предотвращающую установку
Optware'шных пакетов в OpenWRT и наоборот. Таким образом, создать dependency hell (http://en.wikipedia.org/wiki/Dependency_hell) невозможно.


Если уж совсем приспичит, я могу собрать песочницу для сборки бинарей под сабж,
могу выйти на майнтейнеров репов и о чем-то договориться
У нас не так много репозиториев:
Небольшой энтузиасткий репозиторий (http://code.google.com/p/wl500g/source/browse/#svn%2Fipkg%253Fstate%253Dclosed). Он наполняться больше не будет по ряду причин.
Мейнтейнер нового репозитория OpenWRT (http://code.google.com/p/wl500g-repo/source/list) - я. Договаривайтесь, особенно если очень надо.
До мейнтейнеров optware (http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/) вы вряд ли достучитесь, у меня с lly, theMIROn этого не вышло.
И если хватает знаний собрать песочницу, то почему бы не воспользоваться такой возможностью,
вместо настойчивых просьб? Это opensource, присоединяйтесь. В репозитории OpenWRT вовсю идёт
отвязка от прошивочных библиотек для того, чтобы им могли пользоваться, в том числе, томатовцы.

http://forum.ixbt.com/topic.cgi?id=14:50707-126 ;)

TReX
22-03-2012, 18:10
Нормально.

Тогда больше предъяв по новому репозиторию не имею :D
Спасибо за огромную проделанную работу!

Alas_KA
22-03-2012, 20:10
Поправил в r408 (http://code.google.com/p/wl500g-repo/source/detail?r=408).
Необходимо проверить работоспособность.

Что-то "лыжи не едут..."

root@router:/opt# ./switch_to_openwrt.sh
Connecting to wl500g-repo.googlecode.com (173.194.69.82:80)
ipkg.conf 100% |************************************************* ************************************************** **********| 148 --:--:-- ETA
Connecting to wl500g-repo.googlecode.com (173.194.69.82:80)
ipkg.sh 100% |************************************************* ************************************************** **********| 28141 --:--:-- ETA
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/Packages ...
wget: unrecognized option `--passive-ftp'
BusyBox v1.18.5 (2012-01-29 05:05:33 ICT) multi-call binary.

Usage: wget [-csq] [-O FILE] [-Y on/off] [-P DIR] [-U AGENT][-T SEC] URL

Retrieve files via HTTP or FTP

Options:
-s Spider mode - only check file existence
-c Continue retrieval of aborted transfer
-q Quiet
-P DIR Save to DIR (default .)
-T SEC Network read timeout is SEC seconds
-O FILE Save to FILE ('-' for stdout)
-U STR Use STR for User-Agent header
-Y Use proxy ('on' or 'off')

ipkg_download: ERROR: Failed to retrieve http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/Packages, returning
ipkg_update: Error downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/Packages to /opt/lib/ipkg/lists/openwrt
ERROR: File not found: /opt/lib/ipkg/lists/openwrt
You probably want to run `ipkg update'
./ipkg.sh: line 1185: uniq: not found
ERROR: File not found: /opt/lib/ipkg/lists/openwrt
You probably want to run `ipkg update'
ipkg_get_install: ERROR: Cannot find package opkg in /opt/lib/ipkg/lists
ipkg_get_install: Check the spelling and maybe run `ipkg update'.
./switch_to_openwrt.sh: line 11: /opt/bin/opkg: not found
./switch_to_openwrt.sh: line 12: /opt/bin/opkg: not found


Я правильно понимаю, что проблема начинается отсюда:

wget: unrecognized option `--passive-ftp'

И смотреть надо в ipkg.sh???

Juny
22-03-2012, 20:38
И смотреть надо в ipkg.sh???

Да, там ближе к концу скрипта увидите. Но тут не нужен пассив фтп, чегой-то он матюгаеца?
Сисок можно вручную обновить.



# mkdir -p /opt/lib/ipkg/lists
# wget -qc http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/Packages -O- >> /opt/lib/ipkg/lists/openwrt

или в сжатом виде должно быть быстрее


# wget -qc http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/Packages.gz -O- | gunzip | cat - >> /opt/lib/ipkg/lists/openwrt

ConstAntz
22-03-2012, 20:50
2 ryzhov_al
ipkg..., opkg..., epkg.sh! не?

Alas_KA
22-03-2012, 20:57
Считаю, что не надо лезть в скрипты не понимая физику процесса, но все таки рискнул:
удалил --passive-ftp из ipkg.sh

opkg "встал". Ругался , но "встал".

mc устанавливается, но с ошибками:

Collected errors:
* pkg_run_script: package "uclibc-opt" postinst script returned status 1.
* opkg_configure: uclibc-opt.postinst returned 1.

и соответственно mc - not found.

Что-то не так с библиотеками???

Juny
22-03-2012, 21:06
Что-то не так с библиотеками???

Так пакет "uclibc-opt" не установился. Он же вернул единицу.

посмотрите

ipkg.sh list_installed
не знаю как это в opkg (наверно также)

Alas_KA
22-03-2012, 21:15
/opt# opkg list_installed
glib2 - 2.26.1-2
ldconfig - -104
libc - -104
libgcc - -104
libiconv-full - 1.11.1-1
libintl-full - 0.18.1.1-1
libncurses - 5.7-5
libpcap - 1.1.1-1
libpthread - -104
librt - -104
libslang2 - 2.2.3-1
libstdcpp - -104
mc - 4.8.0-1
tcpdump - 4.2.1-1
terminfo - 5.7-5
uclibc-opt - 0.9.32-1


Перезапустил еще раз скрипт ./switch_to_openwrt.sh (сразу не записал отчет о выполнении). Ошибки начинаются вроде как отсюда:


./ipkg.sh: line 1185: uniq: not found
Unpacking opkg...Done.
Configuring opkg...Done.
Downloading http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/Packages.gz.
Inflating http://wl500g-repo.googlecode.com/svn/ipkg/openwrt/Packages.gz.
Updated list of available packages in /opt/var/opkg-lists/openwrt.
Package uclibc-opt (0.9.32-1) installed in root is up to date.
Configuring uclibc-opt.
Updating /opt/etc/ld.so.cache
/opt/bin/ldconfig: can't resolve symbol '__bswapsi2' in lib '/opt/bin/ldconfig'.
Collected errors:
* pkg_run_script: package "uclibc-opt" postinst script returned status 1.
* opkg_configure: uclibc-opt.postinst returned 1.

Juny
22-03-2012, 21:25
2 ryzhov_al:
Держите вот вам скриптик для установки opkg. Переделайте его под себя если хотите. В нем считается что /opt еще не смонитирован и ему нужно передать два аргумента - точку монтирования USB (чтоб фс проверить и путь на диске до директории /opt)



cd /tmp
wget -qc http://dl.dropbox.com/u/44733876/wl500g-repo.tar.gz -O- | tar -zx
./install.sh /media/disk1 opt (например)


Кстати, тут же небольшой сервер на питоне. Отображает на графиках в реальном времени статисику по CPU, памяти и траффику.
Он в тестах лежит, т.к. тока вчера в пакет его добавил. Может кому пригодится для чего-нить...
http://dl.dropbox.com/u/44733876/test/rtstat_0.1-python.ipk

ivanbl4
23-03-2012, 00:43
Proftpd готов, r406 (http://code.google.com/p/wl500g-repo/source/detail?r=406). Жду результатов проверки работоспособности.
Спасибо, proftpd работает. Но пока без поддержки TLS. А хочется безопасное соединение.

Alas_KA
23-03-2012, 07:22
Поправил в r408 (http://code.google.com/p/wl500g-repo/source/detail?r=408).
Необходимо проверить работоспособность.

Как я понимаю при выполнении скрипта получаю 2 ошибки:
1. При # ./ipkg.sh install opkg

./ipkg.sh: line 1185: uniq: not found

Ошибка не критична, т.к. opkg установился.

2. При # /opt/bin/opkg install uclibc-opt

Updating /opt/etc/ld.so.cache
/opt/bin/ldconfig: can't resolve symbol '__bswapsi2' in lib '/opt/bin/ldconfig'.


ld.so.cache не создается и в этом основная проблема???

ryzhov_al
23-03-2012, 08:43
ld.so.cache не создается и в этом основная проблема???Да. Точнее проблема в том, что бинарники ldconfig и opkg всё ещё завязаны на прошивочные библиотеки.

Видится следующий выход:

допилить ipkg.sh для установки базовых библиотек uClibc,
отвязать ldconfig и opkg от прошивочных библиотек и перелинковать их на библиотеки репозитория.
Или:

попытаться (как?!) статически слинковать ldconfig и opkg, чтобы они вообще ни от чего не зависели,
оставить скрипт перехода в прежнем виде.

Попробую реализовать в начале следующей недели. Других препятствий для использования репозитория на TomatoUSB пока не вижу.

Alas_KA
23-03-2012, 08:46
ОК. Спасибо за Вашу работу.

ryzhov_al
23-03-2012, 09:27
Короче, меняю пиво на NUT.

А я буду очень-очень признателен, за добавление NUT в новый репозиторий.Готово, r409 (http://code.google.com/p/wl500g-repo/source/detail?r=409).

Вместо пива подойдёт денежный эквивалент от 200 до 500 рублей на реквизиты энтузиастов (http://www.wl500g.info/showthread.php?t=17136).

Spartach
23-03-2012, 10:28
Подскажите, а mediatomb планируется пересобрать?

ryzhov_al
23-03-2012, 11:45
Подскажите, а mediatomb планируется пересобрать?Да, r412 (http://code.google.com/p/wl500g-repo/source/detail?r=412).
Добавлен патч (http://sourceforge.net/tracker/?func=detail&aid=3014026&group_id=129766&atid=715782) для показа субтитров на телевизорах Samsung, для включения фичи необходимо в конфиге Mediatomb поправить строчку, дописав выделенный цветом фрагмент:

<protocolInfo extend="yes" samsung-hack="yes"/>
2 Zyxmon: спасибо очередной раз.

Кроме того, в качестве экперимента включил поддержку Youtube. Необходимо тестирование этой возможности, т.к. я пользуюсь другим DLNA-сервером.

И для справки.
При переходе на собственные библиотеки сломал (http://code.google.com/p/wl500g-repo/source/detail?r=397) три пакета:

mediatomb, который сейчас починил,
ipset, который в новой версии требует патча для ядра. Скорее всего, откачу на более древнюю версию, ту (http://code.google.com/p/wl500g/source/browse/#svn%2Fipkg%2Foptware-rtn), что на сайте энтузиастов.
bitlbee, которому не нравится новый ключ линковщика -Wl,--dynamic-linker=/opt/lib/ld-uClibc.so.0. Поправлю позже.

MMX2
23-03-2012, 11:47
Готово, r409 (http://code.google.com/p/wl500g-repo/source/detail?r=409).

Вместо пива подойдёт денежный эквивалент от 200 до 500 рублей на реквизиты энтузиастов (http://www.wl500g.info/showthread.php?t=17136).
Спасибо большое!!!
ААА!!:


$ blazer_usb -a myups -u root -DDD
Network UPS Tools - Megatec/Q1 protocol USB driver 0.04 (2.6.3)
0.000000 debug level is '3'
0.006381 Checking device (1D6B/0001) (002/001)
0.006907 - VendorID: 1d6b
0.007117 - ProductID: 0001
0.007288 - Manufacturer: Linux 2.6.22.19 ohci_hcd
0.007498 - Product: OHCI Host Controller
0.007849 - Serial Number: 0000:00:04.0
0.008022 - Bus: 002
0.008183 Trying to match device
0.008420 Device does not match - skipping
0.008716 Checking device (0001/0000) (001/007)
0.013966 - VendorID: 0001
0.021648 - ProductID: 0000
0.029532 - Manufacturer: ATCL FOR UPS
0.035618 - Product: ATCL FOR UPS
0.042977 - Serial Number: ATCL FOR UPS
0.050096 - Bus: 001
0.057142 Trying to match device
0.064819 Device matches
0.073194 Trying megatec protocol...
0.080090 send: Q1
0.088173 read: error sending control message: Broken pipe
0.094871 Stall condition cleared
0.102731 blazer_status: short reply
0.109291 Status read 1 failed
0.115752 send: Q1
0.123131 read: error sending control message: Broken pipe
0.129830 Stall condition cleared
0.136271 blazer_status: short reply
0.143657 Status read 2 failed
0.150597 send: Q1
0.158142 read: error sending control message: Broken pipe
0.164830 Stall condition cleared
0.171365 blazer_status: short reply
0.177998 Status read 3 failed
0.188893 Trying mustek protocol...
0.195564 send: QS
0.201226 read: QS
0.208072 blazer_status: short reply
0.214572 Status read 1 failed
0.221118 send: QS
0.227229 read: QS
0.233786 blazer_status: short reply
0.239437 Status read 2 failed
0.247321 send: QS
0.253525 read: QS
0.259924 blazer_status: short reply
0.266198 Status read 3 failed
0.272724 Trying megatec/old protocol...
0.278813 send: D
0.285868 read: D
0.292115 blazer_status: short reply
0.298277 Status read 1 failed
0.304930 send: D
0.312129 read: D
0.318672 blazer_status: short reply
0.325823 Status read 2 failed
0.331896 send: D
0.337871 read: D
0.342864 blazer_status: short reply
0.345432 Status read 3 failed
0.347992 Trying zinto protocol...
0.352887 send: Q1
0.360339 read: error sending control message: Broken pipe
0.365027 Stall condition cleared
0.368118 blazer_status: short reply
0.371064 Status read 1 failed
0.377043 send: Q1
0.384106 read: error sending control message: Broken pipe
0.390132 Stall condition cleared
0.397920 blazer_status: short reply
0.404235 Status read 2 failed
0.411015 send: Q1
0.418126 read: error sending control message: Broken pipe
0.425612 Stall condition cleared
0.431640 blazer_status: short reply
0.438235 Status read 3 failed
0.444042 No supported UPS detected


Причем под виндой завелось вроде....
Как честный человек "пиво" отправил, 1,5 бутылки.

ryzhov_al
23-03-2012, 11:55
Спасибо большое!!!
ААА!!:

0.444042 No supported UPS detected

Причем под виндой завелось вроде....Странно, собирал с теми же ключами, что в optware. И даже шире: включил cgi-bin поддержку, позволяющую рулить\мониторить UPS из web-интерфейса. У себя проверил работу на dummy-ups, но вашу ситуацию вопроизвести никак не смогу из-за отсутствия устройства. На мой взгляд дело в hot-plug скриптах и подгрузке необходимых USB-модулей. Посмотрите, есть ли в syslog'e упоманиния о "Device, that not claimed by any active driver". Кроме того, встречал ситуацию, когда для blazer-ups собирали (http://pastebin.com/bUi4KxcV) свой, отдельно допиленный nut.

ЗЫ Напоминает анекдот:

- А-а-а! Доктор, что это у меня?!
- А-а-а! Больной, что это у вас?!

MMX2
23-03-2012, 12:31
Странно, собирал с теми же ключами, что в optware. И даже шире: включил cgi-bin поддержку, позволяющую рулить\мониторить UPS из web-интерфейса. У себя проверил работу на dummy-ups, но вашу ситуацию вопроизвести никак не смогу из-за отсутствия устройства. На мой взгляд дело в hot-plug скриптах и подгрузке необходимых USB-модулей. Посмотрите, есть ли в syslog'e упоманиния о "Device, that not claimed by any active driver". Кроме того, встречал ситуацию, когда для blazer-ups собирали (http://pastebin.com/bUi4KxcV) свой, отдельно допиленный nut.

ЗЫ Напоминает анекдот:

Нет, такой надписи в логах нет.
Воткнул UPS напрямую без хаба:


$ blazer_usb -a myups -u root -DDDDD
Network UPS Tools - Megatec/Q1 protocol USB driver 0.04 (2.6.3)
0.000000 debug level is '5'
0.006523 Checking device (0001/0000) (002/002)
0.018331 - VendorID: 0001
0.023470 - ProductID: 0000
0.028710 - Manufacturer: ATCL FOR UPS
0.035631 - Product: ATCL FOR UPS
0.043567 - Serial Number: ATCL FOR UPS
0.051010 - Bus: 002
0.057446 Trying to match device
0.064772 Device matches
0.076403 send_to_all: SETINFO ups.vendorid "0001"
0.084694 send_to_all: SETINFO ups.productid "0000"
0.091639 send_to_all: SETINFO device.type "ups"
0.098542 send_to_all: SETINFO driver.version "2.6.3"
0.104232 send_to_all: SETINFO driver.version.internal "0.04"
0.111325 send_to_all: SETINFO driver.name "blazer_usb"
0.117746 Trying megatec protocol...
0.123949 send: Q1
0.133380 read: error sending control message: Broken pipe
0.139326 Stall condition cleared
0.146343 blazer_status: short reply
0.151807 Status read 1 failed
0.158861 send: Q1
0.167350 read: error sending control message: Broken pipe
0.175306 Stall condition cleared
0.181279 blazer_status: short reply
0.188034 Status read 2 failed
0.194184 send: Q1
0.204348 read: error sending control message: Broken pipe
0.211306 Stall condition cleared
0.217865 blazer_status: short reply
0.224066 Status read 3 failed
0.230687 Trying mustek protocol...
0.237228 send: QS
0.242908 read: QS
0.249796 blazer_status: short reply
0.256784 Status read 1 failed
0.262997 send: QS
0.268692 read: QS
0.275695 blazer_status: short reply
0.282270 Status read 2 failed
0.288198 send: QS
0.301543 read: QS
0.307147 blazer_status: short reply
0.313332 Status read 3 failed
0.319509 Trying megatec/old protocol...
0.325906 send: D
0.332367 read: D
0.338579 blazer_status: short reply
0.344907 Status read 1 failed
0.351425 send: D
0.357694 read: D
0.362870 blazer_status: short reply
0.368851 Status read 2 failed
0.375850 send: D
0.382088 read: D
0.388790 blazer_status: short reply
0.395055 Status read 3 failed
0.401636 Trying zinto protocol...
0.408165 send: Q1
0.417359 read: error sending control message: Broken pipe
0.425315 Stall condition cleared
0.430862 blazer_status: short reply
0.438943 Status read 1 failed
0.445702 send: Q1
0.454360 read: error sending control message: Broken pipe
0.461311 Stall condition cleared
0.467590 blazer_status: short reply
0.473418 Status read 2 failed
0.479869 send: Q1
0.489346 read: error sending control message: Broken pipe
0.496315 Stall condition cleared
0.502227 blazer_status: short reply
0.507890 Status read 3 failed
0.514742 No supported UPS detected


Видать с поддержкой моего SVEN Pro+ 800 таки проблемы у NUTа.
Ладно, буду ждать новых версий, может пофиксят.

Spartach
23-03-2012, 14:35
2 ryzhov_al, спасибо, я тоже решил попробовать другой dlna, Вы случайно не на minidlna?

Подскажите пожалуйста, есть ли возможность собрать пакет sp-auth?
Это консольная утилита позволяет медиа-потоки SopCast (p2p для видео) превращать в обычный медиа-поток (для VLC например).
Спрашиваю поскольку хочется на самсунговском ТВ смотреть спортивные вещания :-)

Страница - http://www.sopcast.org/download/
Раздел: SopCast 3.2.6 for Linux - Command line Version.

DemonGloom
24-03-2012, 12:17
Если нужно - начиная с текущего момента у меня будут копиться все версии пакетов на http://demongloom.dyndns.info:81/entware/ . Соответственно. если захочется прошлую версию пакета взять - берите смело..

ryzhov_al
24-03-2012, 12:28
2 ryzhov_al, спасибо, я тоже решил попробовать другой dlna, Вы случайно не на minidlna?minidlna.

Если нужно - начиная с текущего момента у меня будут копиться все версии пакетов на http://demongloom.dyndns.info:81/entware/Здорово. А я в прошлом году грохнул у себя подобное зеркало optware, ведомое с 2007 года.

Juny
24-03-2012, 12:28
Если нужно - начиная с текущего момента у меня будут копиться все версии пакетов на http://demongloom.dyndns.info:81/entware/ . Соответственно. если захочется прошлую версию пакета взять - берите смело..
Так можно и с гугла взять:D Иначе нафига там svn? (ну или другая система контроля версий... ревизии...):)

ryzhov_al
24-03-2012, 12:33
Так можно и с гугла взять:D Иначе нафига там svn? (ну или другая система контроля версий... ревизии...):)svn. Только из-за кучи бинарников в svn я уже исчерпал 25% от максимального объёма проекта. Что с этим дальше делать пока не знаю. Видимо, придётся выгружать всё из гуглокода, подчищать коммиты с бинарниками и заливать всё обратно. Если такое вообще возможно.

А если нет, то всегда можно грохнуть историю изменений, тем самым освободить место. Правда это совсем по варварски.

Juny
24-03-2012, 12:43
svn. Только из-за кучи бинарников в svn я уже исчерпал 25% от максимального объёма проекта. Что с этим дальше делать пока не знаю. Видимо, придётся выгружать всё из гуглокода, подчищать коммиты с бинарниками и заливать всё обратно. Если такое вообще возможно.

А если нет, то всегда можно грохнуть историю изменений, тем самым освободить место. Правда это совсем по варварски.

Придется грохать. svn не удаляет файлы физически. Можно всегда получить любой...
А какой у вас там объем ради интереса?.. (я имею ввиду не репозитория, а количество места, занимаемое всеми пакетами на текущий момент) Я как-то начинал делать скрипт для зеркалирования на дропбокс, кот. мог бы даже на роутере крутиться...
надо его закончить на досуге

theMIROn
24-03-2012, 12:54
на гугле выделяется по дефолту 4Gb, физически удалять можно только то, что в download секции

Zyxmon
24-03-2012, 13:15
Может быть глюк гуглокода. У меня при очень близком по объему проекте показывает так
http://keenetic.zyxmon.org/files/goglecode.png

На самом деле размер Downloads более 5 Мбайт. Подсчитаны только "featured downloads".

Juny
24-03-2012, 13:25
Может быть глюк гуглокода. У меня при очень близком по объему проекте показывает так


От количества коммитов зависит, тут коли есть коммит, обновляется пакет и при постоянных таких действиях базы .svn растут непомерно. Если у вас там просто есть проект и вы делаяете 2-3 коммита в неделю, с небольшим изменением исходников, то это конечно не этот случай. Мне самому нравится работать именно с svn'ом. Но наверно в этом случае. Стоит грохнуть все на гугле и выбрать другую системку (наверно Git) где файл если удален, то он удаляется и из репозитория ( могу ошибаться с гитом..., но суть эта )

ryzhov_al
24-03-2012, 13:28
Может быть глюк гуглокода.Может это что-то я не так делаю?
http://i062.radikal.ru/1203/27/d2802ff9dd8c.png
У меня ipk-пакеты тоже лежат (http://code.google.com/p/wl500g-repo/source/browse/#svn%2Fipkg) в svn. Реальный объём кода 17Мб, объём бинарников в репозитории 209Мб.

Я думаю, что дело в разнице наших подходов. Ты когда-то сделал срез OpenWRT Buildroot и неспешно допиливаешь ту ревизию транка по сегодняшний день.
Моя среда - куча патчей к последнему транку OpenWRT. Для поддержания актуальности кухни я выкачиваю один-два раза в месяц свежий транк OpenWRT, актуализирую свои патчи и пересобираю все пакеты. Получается, что раз-два в месяц в SVN попадают новые компиляции всех бинарников репозитория.

DemonGloom
24-03-2012, 14:09
Может это что-то я не так делаю?
У меня ipk-пакеты тоже лежат (http://code.google.com/p/wl500g-repo/source/browse/#svn%2Fipkg) в svn. Реальный объём кода 17Мб, объём бинарников в репозитории 209Мб.

Ну.. У меня есть еще терабайт, так что мне пока не страшно.. Если что - можно будет и прочие ревизии ко мне кинуть..

Zyxmon
24-03-2012, 14:54
....
Моя среда - куча патчей к последнему транку OpenWRT. Для поддержания актуальности кухни я выкачиваю один-два раза в месяц свежий транк OpenWRT, актуализирую свои патчи и пересобираю все пакеты. Получается, что раз-два в месяц в SVN попадают новые компиляции всех бинарников репозитория.
И у меня бинарные пакеты в svn. Общий объем бинарников ~ 50Мбайт. Я пересобираю пакет, только при обновлении версии, добавлении патча и т.п.. Очень редко. В этом разница в подходах.
Когда место будет заканчиваться, можно обратиться и попросить дополнительное.

dAsro
24-03-2012, 15:15
Пакет gawk видимо gawkнулся. Пытается установиться в

* extract_archive: Cannot make dir /usr/libexec/awk/: Read-only file system.
* extract_archive: Cannot make dir /usr/share/awk/: Read-only file system.
* wfopen: /usr/share/awk/pwcat.c: No such file or directory.
...

ryzhov_al
25-03-2012, 09:21
От количества коммитов зависит, тут коли есть коммит, обновляется пакет и при постоянных таких действиях базы .svn растут непомерно. Если у вас там просто есть проект и вы делаяете 2-3 коммита в неделю, с небольшим изменением исходников, то это конечно не этот случай. Мне самому нравится работать именно с svn'ом. Но наверно в этом случае. Стоит грохнуть все на гугле и выбрать другую системку (наверно Git) где файл если удален, то он удаляется и из репозитория ( могу ошибаться с гитом..., но суть эта )Обранужил, что у git есть штатная возможность импорта из svn. Если в нём действительно старые бинарники не сохраняются, то для меня это самый лучший выход:
импортировать svn c гуглокода в git (всегда локальный),
очистить на гуглокоде svn и переключиться на git,
затолкнуть на гуглокод локальный git-репозиторий.
При этом история потеряться не должна. Ничего не мешает завести ещё один проект на гуглокоде и проверить всё в действии. Как исчерпаю половину места - займусь.

Пакет gawk видимо gawkнулся.Поправил, r413 (http://code.google.com/p/wl500g-repo/source/detail?r=413).

lohmat
25-03-2012, 11:53
Добрый день, решил перейти на новый репозиторий(до этого использовал ipkg и флешку на гиг), но столкнулся с проблемой на самом начальном этапе:
1) Сделал "Factory Default" через web морду.
2) Все настроил(инет, wifi).
3) Включил SSH
4) На компьютере отформатировал флешку в ext2, одним разделом
5) Воткнул флешку в роутер - и тут проблема - флешка сама не монтируется, пробую в ручную:

[admin@WL-20CF30CE3F64 /tmp]$ mount -t ext2 /dev/sda1 /tmp/mnt
mount: mounting /dev/sda1 on /tmp/mnt failed: No such device
В логах следующие:

...
Jan 1 06:00:06 kernel: scsi 0:0:0:0: Direct-Access USB FLASH DRIVE PMAP PQ: 0 ANSI: 0 CCS
Jan 1 06:00:06 kernel: sd 0:0:0:0: [sda] 2015232 512-byte hardware sectors (1032 MB)
Jan 1 06:00:06 kernel: sd 0:0:0:0: [sda] Write Protect is off
Jan 1 06:00:06 kernel: sd 0:0:0:0: [sda] Assuming drive cache: write through
Jan 1 06:00:06 kernel: sda: sda1
Jan 1 06:00:06 kernel: sd 0:0:0:0: [sda] Attached SCSI removable disk
...
Mar 25 16:32:04 kernel: FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
Mar 25 16:34:22 kernel: FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
Mar 25 16:48:05 kernel: FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
Mar 25 16:49:01 kernel: FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!


Что ни так делаю? :(

TReX
25-03-2012, 11:58
...

Mar 25 16:49:01 kernel: FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!


Что ни так делаю? :(

Мож флешку под EXT3 форматнете, для приличия )

DemonGloom
25-03-2012, 12:45
Обранужил, что у git есть штатная возможность импорта из svn. Если в нём действительно старые бинарники не сохраняются, то для меня это самый лучший выход:
импортировать svn c гуглокода в git (всегда локальный),
очистить на гуглокоде svn и переключиться на git,
затолкнуть на гуглокод локальный git-репозиторий.
При этом история потеряться не должна. Ничего не мешает завести ещё один проект на гуглокоде и проверить всё в действии. Как исчерпаю половину места - займусь.
Главное - предупредите, чтобы мы тоже забэкапили весь репозиторий себе.. На всякий случай..



Что ни так делаю? :(

А покажите-ка вывод fdisk -l при подключенной флешке..

lohmat
25-03-2012, 14:50
Мож флешку под EXT3 форматнете, для приличия )
Считаю, что для флешки ext2 лучше, т.к. без журналирования - дольше проживет. ;)


А покажите-ка вывод fdisk -l при подключенной флешке..

[admin@WL-20CF30CE3F64 root]$ fdisk -l /dev/sda

Disk /dev/sda: 1031 MB, 1031798784 bytes
113 heads, 51 sectors/track, 349 cylinders
Units = cylinders of 5763 * 512 = 2950656 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 350 1007584+ 83 Linux
Partition 1 has different physical/logical beginnings (non-Linux?):
phys=(0, 1, 1) logical=(0, 1, 13)
Partition 1 has different physical/logical endings:
phys=(125, 112, 51) logical=(349, 77, 18)

Действительно какая-то ошибка.. А на компе нормально монтируется!
Удалил раздел, создал новую таблицу и сделал mkfs.ext2 /dev/sda1 на подключенной к роутеру флешке.
Но проблема осталась:


[admin@WL-20CF30CE3F64 root]$ fdisk -l

Disk /dev/sda: 1031 MB, 1031798784 bytes
113 heads, 51 sectors/track, 349 cylinders
Units = cylinders of 5763 * 512 = 2950656 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 349 1005618 83 Linux
[admin@WL-20CF30CE3F64 root]$ mount -t ext2 /dev/sda1 /tmp/mnt
mount: mounting /dev/sda1 on /tmp/mnt failed: No such device
[admin@WL-20CF30CE3F64 root]$


Я в замешательстве! :)
Отформатировал в ext3 и все заработало... TReX был прав

[admin@WL-20CF30CE3F64 root]$ mkfs.ext3 /dev/sda1
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
62976 inodes, 251404 blocks
12570 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=260046848
8 block groups
32768 blocks per group, 32768 fragments per group
7872 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376

Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 25 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[admin@WL-20CF30CE3F64 root]$ mount -t ext3 /dev/sda1 /mnt
[admin@WL-20CF30CE3F64 root]$ cd /mnt
[admin@WL-20CF30CE3F64 /mnt]$ ls
lost+found

theMIROn
25-03-2012, 16:18
Удалил раздел, создал новую таблицу и сделал mkfs.ext2 /dev/sda1 на подключенной к роутеру флешке.
а еще нужно было загрузить внешний ext2 модуль.

MercuryV
25-03-2012, 17:12
Прошу помощи.
В очередной раз попробовал всё собрать. По инструкции в trunk/INSTALL (http://code.google.com/p/wl500g-repo/source/browse/trunk/INSTALL)
Разве что у меня не Ubuntu 11.10 (пробовал, наткнулся на эти грабли (http://wl500g.info/showpost.php?p=246312&postcount=206) и вернулся к привычному Debian 6)
Сборка останавливается после squashfs4. По какой причине теряется цель - не смог определить. Лог прилагаю.


make[3]: Entering directory `/home/builder/openwrt/trunk/tools/squashfs4'
make[3]: Leaving directory `/home/builder/openwrt/trunk/tools/squashfs4'
make[2]: Leaving directory `/home/builder/openwrt/trunk'
make[1]: Leaving directory `/home/builder/openwrt/trunk'
make -C "../trunk" packages/compile
make[1]: Entering directory `/home/builder/openwrt/trunk'
make[2]: Entering directory `/home/builder/openwrt/trunk'
make[3]: Entering directory `/home/builder/openwrt/trunk'
make[3]: Leaving directory `/home/builder/openwrt/trunk'
make[2]: Leaving directory `/home/builder/openwrt/trunk'
WARNING: your configuration is out of sync. Please run make menuconfig, oldconfig or defconfig!
make[2]: Entering directory `/home/builder/openwrt/trunk'
make[2]: *** No rule to make target `packages/compile'. Stop.
make[2]: Leaving directory `/home/builder/openwrt/trunk'
make[1]: *** [packages/compile] Error 2
make[1]: Leaving directory `/home/builder/openwrt/trunk'
make: *** [.packages_compiled] Error 2


P.S. полагаю, что предупреждение "your configuration is out of sync" несущественно. По умолчанию всё же работоспособно?

ryzhov_al
25-03-2012, 17:35
P.S. полагаю, что предупреждение "your configuration is out of sync" несущественно.Не существенно.

По умолчанию всё же работоспособно?

make -C "../trunk" packages/compile
Мой косяк. Выделенная "s" - лишняя. Завтра поправлю.

voidshah
25-03-2012, 17:50
ryzhov_al Ща исправлю

MercuryV
Исправлено. Пробуйте. На будущее - приводите логи с
make V=99

MercuryV
25-03-2012, 17:58
voidshah
Уже пробую на чистой системе. По результатам - отпишусь.
Кстати, это и был лог с V=99. В данном случае информативности особо не добавилось.

lohmat
25-03-2012, 18:00
а еще нужно было загрузить внешний ext2 модуль.

А можно поподробнее? Там поддержки ext2 в ядре нет, она модулем скомпилена? Я в /lib/modules ничего подходящего не нашел...

tempik
25-03-2012, 19:22
А можно поподробнее? Там поддержки ext2 в ядре нет, она модулем скомпилена? Я в /lib/modules ничего подходящего не нашел...
вместе с прошивкой выкладывается архив с модулями для этой прошивки ... modules-1.9.2.7-rtn-rХХХХ вот из него и берите модуль ядра
\lib\modules\2.6.22.19\kernel\fs\ext2\ext2.ko

TReX
25-03-2012, 19:27
А можно поподробнее? Там поддержки ext2 в ядре нет, она модулем скомпилена? Я в /lib/modules ничего подходящего не нашел...

Так и сделайте ext3 ) и ничего цеплять будет не надо ))

lohmat
25-03-2012, 20:07
Так и сделайте ext3 ) и ничего цеплять будет не надо ))

Да, я так уже и сделал... :)
Просто удивило, что поддержка модулем собрана, видимо для экономии места.

MercuryV
25-03-2012, 23:19
voidshah, ryzhov_al
Ура! make: Nothing to be done for `all'
Но есть один нюанс. Похоже архив xfsprogs-3.1.7.tar.gz отсутствует на всех зеркалах. и у SGI и у OpenWRT. Брал у fedoraproject (http://pkgs.fedoraproject.org/repo/pkgs/xfsprogs/xfsprogs-3.1.7.tar.gz/049cf9873794ea49d0bb3f12d45748a4/xfsprogs-3.1.7.tar.gz)

dAsro
26-03-2012, 06:49
За исправление gawk спасибо. Но что случилось с репозиторием? Устанавливаю к примеру пакеты mc, transmission. Файлы в нужных директориях есть, а не запускаются. На r375 все работало хорошо.

ryzhov_al
26-03-2012, 07:50
Файлы в нужных директориях есть, а не запускаются. На r375 все работало хорошо.Я же предупреждал (http://www.wl500g.info/showpost.php?p=247748&postcount=364).

ryzhov_al
26-03-2012, 11:32
Коллеги с прошивками TomatoUSB, DD-WRT, Падавановскими RT-N56 и другими. Прошу проверить возможность установки софта из нового репозитория. Прошу обратить внимание на то, что инструкция по установки упростилась. (http://wl500g.info/showthread.php?t=28036)

Juny
26-03-2012, 11:54
Коллеги с прошивками TomatoUSB, DD-WRT, Падавановскими RT-N56 и другими. Прошу проверить возможность установки софта из нового репозитория. Прошу обратить внимание на то, что инструкция по установки упростилась. (http://www.wl500g.info/showthread.php?t=28036)

N56й - вроде воркс!! Пасиба!:)
Поправь тока линк, а то почему-то он на этот же пост ссылается!
Щас попробую поставить пакеты, и запустить что-нибудь.. отпишусь если будут проблемы. Но скорее всего не должно их быть! opkg работает, ldconfig тоже

pilers
26-03-2012, 12:07
ryzhov_al
Просьба объяснить, для чего скриптом entware_install.sh производится


.........
.........
/tmp/ipkg.sh update
/tmp/ipkg.sh install uclibc-opt
/tmp/ipkg.sh install opkg
rm -fr /opt/tmp/*
rm -fr /opt/ipkg/*
/opt/bin/opkg update
/opt/bin/opkg install uclibc-opt
установка uclibc-opt дважды? Что разными менеджерами пакетов, это ясно.

ryzhov_al
26-03-2012, 12:19
ryzhov_al
Просьба объяснить, для чего скриптом entware_install.sh производится
...
установка uclibc-opt дважды? Что разными менеджерами пакетов, это ясно.Только для того, чтобы быть уверенным в том, что переход отработал верно.

Напомню, что в момент старта bootstrap-скрипта ./entware_install.sh предполагается, что мы находимся в достаточно ограниченной и враждебной системе и насколько правильно отработают составляющие скрипт внешние команды неизвестно. По этой же причине voidshah пришлось собрать (http://code.google.com/p/wl500g-repo/source/detail?r=418) бинарник ldconfig статически, так как любые внешние зависимости у нас вызывали проблемы в момент развёртывания.

По этим причинам ./entware_install.sh и выкачиваемый им допиленный ./ipkg.sh расценивается нами лишь "полевой лагерь", который должен развернуть нормальную работу менеджера пакетов opkg. После установки opkg повторная установка базовых библиотек выполнятся в том числе для актуализации базы opkg, в которой отражены списки файлов пакетов и их статусы.

Если эта практика в будущем окажется избыточной, то мы с voidshah от неё откажемся.

Juny
26-03-2012, 12:21
ryzhov_al
Просьба объяснить, для чего скриптом entware_install.sh производится.
Чтобы он в листы opkg записался, что пакет установлен. А если не выполнить он будет считать, что пакета нет. работать то он будет, но все же для порядку!

ryzhov_al
А в каком окружении пакеты собираются?
(зы: питона2.7 нету :'( нужен блин... )

ryzhov_al
26-03-2012, 14:23
Добавил в репозиторий p0f (http://www.xakep.ru/post/58129/default.asp) - утилиту для пассивного определения информации об удалённом хосте, который связывается с вашим роутером. Её задача - "угадывать" версию ОС, аптайм, тип соединения и оборудования по косвенным признакам (mtu, информации из TCP-заголовков и пр.). Для примера работы зайдите на страничку автора (http://lcamtuf.coredump.cx/p0f3/) и посмотрите в нижней части странички что утилита о вас смогла узнать.


А в каком окружении пакеты собираются?
(зы: питона2.7 нету :'( нужен блин... )В среде OpenWRT Buildroot c одним из последних транков фида packages, детали здесь (http://code.google.com/p/wl500g-repo/source/browse/trunk/INSTALL).

Alas_KA
26-03-2012, 16:03
Опробовал на tomato. Сборка:
Tomato Firmware v1.28.0497 MIPSR2-Toastman-RT-N K26 USB VPN
При выполнении скрипта появлялись ошибки, но оценить их критичность не берусь. Посмотрите пожалуйста во вложении.
Вроде как работает. Поставил:
mc-работает
nano-работает
tcpdump-работает
transmission-работает, но надо подправлять стартовые скрипты.
Резюме - переход осуществлен успешно. Огромный респект.

Azur4
27-03-2012, 07:03
Скажите пожалуйста есть ли для нового репозитория какое то общее решение со startup/init.d скрипами?
Где можно почитать об этом?

ryzhov_al
27-03-2012, 07:22
Скажите пожалуйста есть ли для нового репозитория какое то общее решение со startup/init.d скрипами?
Где можно почитать об этом?Примерно через месяц будут адаптированы стартовые скрипты OpenWRT. Пока рекомендую пользоваться привычными скриптами rc.unslung.

Azur4
27-03-2012, 08:20
Примерно через месяц будут адаптированы стартовые скрипты OpenWRT. Пока рекомендую пользоваться привычными скриптами rc.unslung.

Блин проблема с mysql-server :(

ryzhov_al
27-03-2012, 08:56
Блин проблема с mysql-server :(c mysql-server нет никаких проблем. Это у вас есть проблема написать две строчки для его старта.

pilers
27-03-2012, 12:26
Подкорректировал файлы info.cgi (System Info для удобного просмотра состояния системной информации роутера (процессор, память, запущенные процессы, установленные пакеты, системный лог с возможностью его очистки и др.) и package.cgi (OPKG-WEB frontend - управление IPK-пакетами через WEB-морду -просмотр, установка, обновление, удаление - http://wl500g.info/showthread.php?t=13272, скрипт для "чайников" (http://wl500g.info/showthread.php?t=21889)) для работы с OPKG. Скрипты работают под управлением Web-сервера (у меня lighttpd+php-fcgi).
System Info работает нормально:
http://download.kanet.ru/gallery/files/2090/rtn16/info.jpg
С OPKG-WEB frontend есть проблемы. Механизмы скрипта (синхронизация OPKG с репозиторием, установка-удаление-обновление пакетов) работают. А вот показ состояния корректно работает только для установленных пакетов ("Installed"):
http://download.kanet.ru/gallery/files/2090/rtn16/opkg1.jpg
При показе всех пакетов репозитория ("NONE"), неустановленных пакетов ("Not installed") или при обновлении всех установленных ("Update") в таблице появляются лишние строчки:
http://download.kanet.ru/gallery/files/2090/rtn16/opkg2.jpg
Лишние строчки будут у пакетов, имеющих многострочные Description (т.е там, где есть символ перевода строки для каждой строчки Description). В случае IPKG-WEB frontend и пакетов optware такого не происходило, т.к. в optware все пакеты имеют однострочные Description.
Тем не менее для установленных пакетов в столбце comment выводится только первая строка Description и все корректно.
Есть два пути решения проблемы - попросить наших мейнтейнеров преобразовать Description всех пакетов в репозитории Entware к однострочному виду или подправить скрипт packgage.cgi. Первое представляется менее вероятным.
Файлы прилагаются. Если есть специалисты по скриптам, могущие подправить package.cgi - просьба это сделать.

ryzhov_al
27-03-2012, 19:27
При выполнении скрипта появлялись ошибки, но оценить их критичность не берусь.Поправил, r441 (http://code.google.com/p/wl500g-repo/source/detail?r=441). На единственный warning от ldconfig можете не обращать внимания.


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

/opt/sbin/nmbd -D
/opt/sbin/smbd -DПроверил SAMBA 3.6.3 в работе и пока не впечатлился. По сравнению с прошивочной SAMBA 2.0.10 выросло потребление памяти. Ниже приведены процессы SAMBA во время работы, теперь smbd может порождать дочерние процессы:

SAMBA 2.0.10:
smbd: mapped: 2044K writeable/private: 464K shared: 0K
nmbd: mapped: 1840K writeable/private: 448K shared: 0K

SAMBA 3.6.3:
smbd: mapped: 4004K writeable/private: 472K shared: 840K
smbd: mapped: 3444K writeable/private: 308K shared: 444K
nmbd: mapped: 3500K writeable/private: 284K shared: 524K


и несколько замедлилась скорость сетевого обмена. Ниже приведена усреднённая в трёхкратных тестах скорость чтения\записи 3Gb малофрагментированного ISO-файла:


SAMBA 2.0.10:

чтение с общего ресурса ~7,2Мб/c,
запись на общий ресурс ~9,0Мб/c,

SAMBA 3.6.3:

чтение с общего ресурса ~6,3Мб/c,
запись на общий ресурс ~7,5Мб/c,



Подключение ПК к роутеру - Gigabit Ethernet. Во время теста все другие непрошивочные сервисы были остановлены для того, чтобы не искажать картину. Включение опции max protocol = SMB2 (http://www.nixp.ru/news/%D0%92-Samba-3-6-0pre1-%D0%BF%D0%BE%D1%8F%D0%B2%D0%B8%D0%BB%D0%B0%D1%81%D 1%8C-%D0%BF%D0%BE%D0%BB%D0%BD%D0%B0%D1%8F-%D0%BF%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%BA%D 0%B0-SMB2.html) производительности не добавляет.
Жаль.

voidshah
27-03-2012, 21:30
ryzhov_al Мде... Как вариант, можно попробовать собрать самбу3 из OpenWRT. Хотя, имхо, это не улучшит положение.

ryzhov_al
27-03-2012, 22:02
ryzhov_al Мде... Как вариант, можно попробовать собрать самбу3 из OpenWRT. Хотя, имхо, это не улучшит положение.Проходили (http://www.wl500g.info/showpost.php?p=242977&postcount=175), не поможет.


Не являясь обладателем данного девайса, нашел в форуме какие-то мысли по поводу установки ncursesw. Я использую openwrt с некоторыми своими патчами, но не могу побороть неправильное отображение половины русских букв в ncurses. То ли ncursesw неправильно собирается, то ли он не используется, несмотря на указания. Ошибка с русскими буквами в ncurses известна.
В компиляции uClibc в файле Common указываю UCLIBC_HAS_LOCALE=y,
в Makefile добавляю
-e 's,^.*UCLIBC_HAS_LOCALE.*,UCLIBC_HAS_LOCALE=$(if $(CONFIG_BUILD_NLS),y,n),g' \
не помогает. Поэтому все кто использует ncurses/ncursesw, rtorrent, screen, отображают половину русских букв неправильно.
У кого-нибудь все отображается верно? Дайте, пожалуйста, исходники, помотрю, попробую адаптировать для себя. Спасибо.Изнините за долгий ответ. Причина в том, что в OpenWRT на gettext наложены патчи, ограничивающие использование кириллических локалей. Если эти патчи выкинуть, то, вероятно, всё наладится. Смотрите примеры в исходниках у меня здесь (http://wl500g-repo.googlecode.com/svn/trunk/) или у ув.тов.Zyxmon'а здесь (http://zyxel-keenetic-packages.googlecode.com/svn/trunk/).

Придется грохать. svn не удаляет файлы физически.
...
Я как-то начинал делать скрипт для зеркалирования на дропбокс, кот. мог бы даже на роутере крутиться...
надо его закончить на досугеЕсли вернётесь к своему начинанию, то могу предложить официальный Python DropBox API, включенный в состав репозитория. У меня, к примеру, роутер сам забирает торрент-файлы из DropBox облака, добавляя задачи для transmission.

Подскажите пожалуйста, есть ли возможность собрать пакет sp-auth?
Это консольная утилита позволяет медиа-потоки SopCast (p2p для видео) превращать в обычный медиа-поток (для VLC например).
Нет. Это не OpenSource проект, исходных кодов sopcast не предоставляет.


2 ryzhov_al:
Держите вот вам скриптик для установки opkg. Переделайте его под себя если хотите. Спасибо, посмотрел, можете убирать его с общего доступа.

Вообще, спасибо всем откликнувшимся. В общей сложности, я получил от форумчан четыре варианта Itsy Package Manager'а. В финальный вариант (http://www.wl500g.info/showthread.php?t=28036) ./entware_install.sh включен чуть допиленный вариант ipkg.sh (http://wl500g.googlecode.com/svn/trunk/others/ipkg.sh) из энтузиасткой прошивки.

yut
28-03-2012, 09:50
Проходили (http://www.wl500g.info/showpost.php?p=242977&postcount=175), не поможет.
Изнините за долгий ответ. Причина в том, что в OpenWRT на gettext наложены патчи, ограничивающие использование кириллических локалей. Если эти патчи выкинуть, то, вероятно, всё наладится. Смотрите примеры в исходниках у меня здесь (http://wl500g-repo.googlecode.com/svn/trunk/) или у ув.тов.Zyxmon'а здесь (http://zyxel-keenetic-packages.googlecode.com/svn/trunk/).

Спасибо, уже сделал. Проблема была в locale. Теперь самосборный rtorrent 0.8.9 с измененной статусной строкой все показывает правильно, чем я очень доволен. Кстати, на мысль натолкнул этот форум, за что спасибо его участникам.

MMX2
28-03-2012, 10:54
Туплю: а в новом репо нет adduser? А как тогда пользователей добавлять:)? Ручками?

ryzhov_al
28-03-2012, 10:58
Туплю: а в новом репо нет adduser? А как тогда пользователей добавлять:)? Ручками?Поищите по ключевому слову adduser в этой теме.

MMX2
28-03-2012, 11:30
Поищите по ключевому слову adduser в этой теме.

понял, добавил ручками. Спасибо!

voidshah
28-03-2012, 16:10
Проверил SAMBA 3.6.3 в работе и пока не впечатлился.
Ниже приведена усреднённая в трёхкратных тестах скорость чтения\записи 3Gb малофрагментированного ISO-файла:


SAMBA 2.0.10:

чтение с общего ресурса ~7,2Мб/c,
запись на общий ресурс ~9,0Мб/c,

SAMBA 3.6.3:

чтение с общего ресурса ~6,3Мб/c,
запись на общий ресурс ~7,5Мб/c,



Подключение ПК к роутеру - Gigabit Ethernet. Во время теста все другие непрошивочные сервисы были остановлены для того, чтобы не искажать картину. Включение опции max protocol = SMB2 (http://www.nixp.ru/news/%D0%92-Samba-3-6-0pre1-%D0%BF%D0%BE%D1%8F%D0%B2%D0%B8%D0%BB%D0%B0%D1%81%D 1%8C-%D0%BF%D0%BE%D0%BB%D0%BD%D0%B0%D1%8F-%D0%BF%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%BA%D 0%B0-SMB2.html) производительности не добавляет.
Жаль.
Такс...
Вот мои тесты на файле 1947,86 Гб

SAMBA 2 (прошивочная):

чтение с общего ресурса ~6,5Мб/c,
запись на общий ресурс ~9,6Мб/c,

SAMBA 3.6.3:

чтение с общего ресурса ~5,6Мб/c,
запись на общий ресурс ~9,23Мб/c,


Разница в чтении такая же. Стало чуть лучше на запись, но все же... Надо еще пошаматить с настройками:)

Alas_KA
28-03-2012, 16:21
Поправил, r441 (http://code.google.com/p/wl500g-repo/source/detail?r=441). На единственный warning от ldconfig можете не обращать внимания.
Перепроверил. По-моему все "красиво", но на всякий случай приложу репорт на выполнение скрипта.
P.S. Transmission конфигурируется правильно по инструкции с tomatousb.ru. В первый раз поспешил и соответственно насмешил... :)

Еще раз огромное спасибо за Ваш ЭНТУЗИАЗМ!!!

lly
28-03-2012, 18:25
ryzhov_al
А почему ты решил править конфиг uClibc sed'ом в toolchain/Makefile, а не патчем?

P.S. Возможно тебя заинтересует - https://bugs.busybox.net/show_bug.cgi?id=4964 (IMHO решение более простое - проинициализировать base->collate.index2weight NULL'ом)

voidshah
28-03-2012, 18:59
ryzhov_al
А почему ты решил править конфиг uClibc sed'ом в toolchain/Makefile, а не патчем?

А разве имеет значение? Результат одинаков ведь.

lly
28-03-2012, 19:02
А разве имеет значение? Результат одинаков ведь.
Менее наглядно, IMHO. Но не принципиально.

voidshah
28-03-2012, 19:33
ryzhov_al
P.S. Возможно тебя заинтересует - https://bugs.busybox.net/show_bug.cgi?id=4964 (IMHO решение более простое - проинициализировать base->collate.index2weight NULL'ом)
Я так понимаю, что г-н Eric Nadler инициализирует base полностью (мало ли, что там еще неинициализированно осталось?) Так?

проинициализировать base->collate.index2weight NULL'ом
в самой locale_init_l, чтоль?

lly
28-03-2012, 20:37
Я так понимаю, что г-н Eric Nadler инициализирует base полностью (мало ли, что там еще неинициализированно осталось?) Так?
Так.

в самой locale_init_l, чтоль?
Конечно, аналогично другим параметрам. Но еще посмотрим что скажут мейнтейнеры...

ryzhov_al
29-03-2012, 09:10
Разница в чтении такая же. Стало чуть лучше на запись, но все же... Надо еще пошаматить с настройками:)Просто для информации. В тестах я не стал смотреть на ту скорость, что показывает Explorer при копировании. Я самостоятельно засекал время от начала до конца операции чтения/записи и таким образом вычислял скорость. Мегабайты в тестах честные - те, в который 1024Кб.

И ещё. Тов.Padavan пишет (http://forum.ixbt.com/topic.cgi?id=14:56395-129) на ixbt.com:
Сейчас в прошивке самба 3.0.37. Довольно компактная. Многие дистрибутивы Linux использует стабильную самбу 3.5.x.
Я не первый раз слышу, как некоторые пользователи RT-N16/N66 хвастаются (http://forum.ixbt.com/topic.cgi?id=14:50707:3761#3761) скоростью копирования по FTP до 18Мб/c. Значит, можно ожидать скорость копирования по SAMBA до ~15Мб/c. Для очистки совести всё же придётся собрать SAMBA 3.5 и навсегда закрыть этот вопрос.


Подскажите пожалуйста, планируется ли adduser?
Туплю: а в новом репо нет adduser? А как тогда пользователей добавлять:)? Ручками?Уболтали, r453 (http://code.google.com/p/wl500g-repo/source/detail?r=453).

voidshah
29-03-2012, 13:35
Просто для информации. В тестах я не стал смотреть на ту скорость, что показывает Explorer при копировании. Я самостоятельно засекал время от начала до конца операции чтения/записи и таким образом вычислял скорость. Мегабайты в тестах честные - те, в который 1024Кб.

А ты думаешь я по Explorer смотрел!? Неее Explorer в баню! Секундомер рулит!:D


И ещё. Тов.Padavan пишет (http://forum.ixbt.com/topic.cgi?id=14:56395-129) на ixbt.com:
Я не первый раз слышу, как некоторые пользователи RT-N16/N66 хвастаются (http://forum.ixbt.com/topic.cgi?id=14:50707:3761#3761) скоростью копирования по FTP до 18Мб/c. Значит, можно ожидать скорость копирования по SAMBA до ~15Мб/c. Для очистки совести всё же придётся собрать SAMBA 3.5 и навсегда закрыть этот вопрос.

Хвастаться... У меня нечем хвастаться. На прошивочном vsftpd скорость скачивания с ftp не более 6,3Мб/сек. И тогда чтение с Самбы 3.6 - ~5,6Мб/cек - это нормально.

ryzhov_al
29-03-2012, 13:45
Хвастаться... У меня нечем хвастаться. На прошивочном vsftpd скорость скачивания с ftp не более 6,3Мб/сек. И тогда чтение с Самбы 3.6 - ~5,6Мб/cек - это нормально.Плюс 100MHz к тактовой частоте может так повлиять на производительность SAMBA?
http://i.piccy.info/i7/6139f273da671e953aa44ce1e398f649/1-5-6233/37450439/Snymok_240.jpg (http://piccy.info/view3/2815678/2cd142d3dc88d91a706d65b6ca40927d/)
Нет, если только в новом чипе BCM4706 по сравнению с BCM4718 не оптимизировали архитектуру.

Значит, надо искать причину медленно обмена.

ЗЫ Со скоростью ~15Мб/c просто угадал ^)

voidshah
29-03-2012, 14:02
ryzhov_al А сколько у тебя по ftp выдает?

ryzhov_al
29-03-2012, 14:32
А сколько у тебя по ftp выдает?Не помню точно, но на тех роутерах, что попадали в мои цепкие лапы ftp-обмен всегда был на ~10-20% быстрее SAMBA.

voidshah
29-03-2012, 15:25
Непомню точно, но на тех роутерах, что попадали в мои цепкие лапы ftp-обмен всегда был на ~10-20% быстрее SAMBA.
Да это я уже понял, и у меня, как видишь, примерное такая же картина. А, как понимаешь, 6,3Мб/с и 18Мб/с - уж очень большая разница... Вот и думаю, где же собака порылась? ПО? Хардварная проблема самого rt-n16?

ryzhov_al
29-03-2012, 17:49
А, как понимаешь, 6,3Мб/с и 18Мб/с - уж очень большая разница... Вот и думаю, где же собака порылась? ПО?Скорость заметно зависит от фрагментации, что бы там нам линуксоиды не говорили, выяснил это когда заморачивался (http://wl500g.info/showthread.php?28036-%CF%E5%F0%E5%F5%EE%E4-%ED%E0-%ED%EE%E2%FB%E9-%F0%E5%EF%EE%E7%E8%F2%EE%F0%E8%E9-Entware-%F1-Optware&p=242048#post242048) posix_fallocate. Когда на 18 мегабайт приходится полтыщи фрагментов о скорости говорить не приходится.

voidshah
29-03-2012, 18:57
Скорость заметно зависит от фрагментации, что бы там нам линуксоиды не говорили, выяснил это когда заморачивался (http://wl500g.info/showthread.php?28036-%CF%E5%F0%E5%F5%EE%E4-%ED%E0-%ED%EE%E2%FB%E9-%F0%E5%EF%EE%E7%E8%F2%EE%F0%E8%E9-Entware-%F1-Optware&p=242048#post242048) posix_fallocate. Когда на 18 мегабайт приходится полтыщи фрагментов о скорости говорить не приходится.
А как ее измерять на роутере?

ryzhov_al
29-03-2012, 19:02
А как ее измерять на роутере?Утилиткой Theodore Ts'o. Я не помню откуда брал исходники и как собирал, поэтому прилагаю бинарник.

ryzhov_al
30-03-2012, 09:42
Хочу обратить ваше внимание на консольный DC-клиент ncdc (http://dev.yorhel.nl/ncdc), которому полгода отроду, но который "делает" microdc2 по всем фронтам:

умеет подключаться к нескольким хабам,
может скачивать с нескольких источников параллельно,
имеет регулировку скоростей скачивания\отдачи и, что важно, скорости хэширования,
нормально обходится с кириллицей как в чате, так в файллистах и имеет прочие вкусные фичи.
Здесь (http://tt.erinome.net/2012/02/116) есть краткое, но довольно ёмкое описание на русском языке.

ncdc состоит из одного 320кб бинарника, написанного на чистом С. Дочерних процессов не порождает, потому как мультитрэдовый, например, открытие объёмных файллистов от других пользователей происходит в фоновом потоке. Максимальное потребление памяти возникает при перехешировании и\или скачивании:

$ pmap -d `pidof ncdc` | grep shared
mapped: 24516K writeable/private: 17396K shared: 0K
Поведение программы в различных сценариях.

При хэшировании своей шары: Если не ограничивать скорость перехеширования, то загрузка CPU будет около ~80%, при этом роутер "не уходит в себя" и продолжает нормально реагировать на web-интерфейс. Скорость хэширования файлов на моём RT-N16 составляет ~7Мб/c.

При скачивании: Загрузка CPU не превышает 40%, стабильная скорость скачивания файлов держится в р-не ~2Мб/c.

В состоянии покоя: В режиме безделья при подключении к одному хабу с ~12000 пользователями загрузка CPU по top не превышает 3%.

Вот скриншот работы ncdc. Интерфейс многооконный, можно переключаться между окошками, нажимая <Alt>+1, <Alt>+2 и т.д. Смотрите справку по сочетаниям клавиш и командам здесь (http://dev.yorhel.nl/ncdc/man).

#cityhub: AllAvtovo.ru
11:09:51 <Terminator> 30/03 08:25: <TpyП> irinametll: в какой класс ходит
11:09:51 <Terminator> 30/03 08:25: <irinametll> TpyП: второй
11:09:51 <Terminator> 30/03 08:26: <TpyП> проважаешь или сама чапает
11:09:51 <Terminator> 30/03 08:26: <irinametll> TpyП: сама отвожу
11:09:51 <Terminator> 30/03 08:26: <TpyП> какая мамка заботливая ))
11:09:51 <Terminator> 30/03 08:27: <irinametll> TpyП: кирпичи до школы отнести
нужно))
11:09:51 <Terminator> 30/03 08:28: <TpyП> irinametll: от оно как я понял ее
расклад )
11:09:51 <Terminator> 30/03 08:29: <TpyП> ты у нее в роли грузчика ))
11:09:51 <Terminator> 30/03 08:29: <irinametll> TpyП: носильщика)))
11:09:51 <Terminator> 30/03 08:31: <irinametll> /me временно улетела))
11:09:51 <Terminator> 30/03 08:31: <TpyП> лети =)
11:09:51 <Terminator> 30/03 09:40: <sonim> Лети а ЛЭТИ :)
11:09:51 <Terminator> 30/03 09:40: <sonim> в *
11:09:51 <Terminator>
11:10:08 <RT-N16_autopilot> /me просто проверяет правильность отображения
кириллицы.
RT-N16_autopilot @ dchub://allavtovo.ru:411 (registere 12269 users 2,02 PiB 6
#cityhub>
-[08:12:33]--[ 1:main 2:connections 3!#cityhub 4:queue ]-------------------- >>-
[Hashing: 354 / 42,25 GiB / 6,58 MiB/s] [U/D: 0/ 2173 KiB/s] [S: 0/ 20]
ncdc сохраняет при выходе как глобальные установки, так и настройки для каждого из хабов на которые вы заходили.

С сегодняшнего дня ncdc доступен в нашем репозитории.

ryzhov_al
31-03-2012, 13:44
В марте обновился rtorrent/libtorrent до версий 0.9.1/0.13.1. Jari Sundell любит своё детище, списки изменений с предыдущей версии, имеющейся в репозитории, занимают по пять (https://github.com/rakshasa/rtorrent/commits/master?page=5) страниц (https://github.com/rakshasa/libtorrent/commits/master?page=7).

Порадовало то, что теперь rtorrent теперь сам на лету регулирует скорость перехеширования! Больше rtorrent "не уходит в себя" до окончания этой операции и спокойно продолжает параллельную работу по скачиванию файлов, RPC-общению с web-мордой rutorrent и пр. Скорость перехеширования повысилась до ~4Мб/сек (ранее ~3,3Мб/сек (http://wl500g.info/showthread.php?14256-%C5%F9%E5-%F0%E0%E7-%EF%F0%EE-rTorrent-%E8-web-%EC%EE%F0%E4%F3-%EA-%ED%E5%EC%F3&p=242722#post242722)), но потребление CPU по top при этом не превышает 40%.

ryzhov_al
01-04-2012, 07:30
2 All. Предлагаю вести обсуждение тех или иных технологий/софтин в профильных темам.
Предлагаю здесь оставить лишь анонсы новшеств репозитория и то, что с ним непосредственно связано.

Omega, очередной раз почистишь нашу авгиеву конюшню?

MercuryV
01-04-2012, 16:57
Прошу добавить в репозиторий Entware пакет mini-httpd-htpasswd из OpenWrt - "utility to generate HTTP access authentication files"
Удобная штука, зависимостей не тянет.

RTM
01-04-2012, 18:07
Добавьте пожалуйста Strongswan в репозиторий Entware :rolleyes:

ryzhov_al
01-04-2012, 18:10
Привет, есть проблема с xupnpd, на RT-N66UПоправил, r459 (http://code.google.com/p/wl500g-repo/source/detail?r=459).

И маленькая просьба - cron обычный добавить. Для RT-N66U на оригинальной прошивке его взять неоткуда ...Добавил Vixie cron, r461 (http://code.google.com/p/wl500g-repo/source/detail?r=461).

MercuryV
02-04-2012, 10:04
Добавил в репозиторий p0f (http://www.xakep.ru/post/58129/default.asp)
К сведению. p0f работает, однако валится при выводе доступных интерфейсов


$ p0f -L
--- p0f 3.03b by Michal Zalewski <lcamtuf@coredump.cx> ---


-- Available interfaces --

0: Name : eth0
Description : -
IP address : (none)

1: Name : br0
Description : -
IP address : 192.168.1.1

2: Name : ppp0
Description : -
Segmentation fault

ryzhov_al
03-04-2012, 07:26
Добавьте пожалуйста Strongswan в репозиторий Entware :rolleyes:Готово, r466 (http://code.google.com/p/wl500g-repo/source/detail?r=466).
Но я в IPSEC ничего не понимаю. От слова совсем. Пожалуйста, отпишитесь по результатам проверки.


Прошу добавить в репозиторий Entware пакет mini-httpd-htpasswd из OpenWrt - "utility to generate HTTP access authentication files"
Удобная штука, зависимостей не тянет.Она заменит htdigest, который в Optware приходилось отламывать от apache? Здорово.
Готово, r467 (http://code.google.com/p/wl500g-repo/source/detail?r=467).

MercuryV
03-04-2012, 10:51
Она заменит htdigest, который в Optware приходилось отламывать от apache? Здорово.
Готово, r467 (http://code.google.com/p/wl500g-repo/source/detail?r=467).
оно заменит htpasswd от апача (для базовой аутентификации). htdigest для создания файлов одноименной аутентификации и в состав mini-httpd не входит, в комплекте с апачем, как обычно, в openwrt

ставил только запрошенный пакет mini-httpd-htpasswd (целиком mini-httpd сейчас не нужен), htpasswd работает, nginx подхватил созданный файл паролей
спасибо

z-vladimir
03-04-2012, 17:31
Прошу прощения, если не совсем по делу...
Нигде не могу найти нечто подобное iconv. Необходимо для конвертирования плейлистов из cp1251 то utf8.
Совесть моя чиста. Вроде искал хорошо, различные варианты перебирал. Может другими способами возможна сия процедура?

Zyxmon
03-04-2012, 18:46
Для того, чтобы собирался устанавливался iconv нужно добавить define Package/iconv/install
в http://zyxel-keenetic-packages.googlecode.com/svn/trunk/package/built/libiconv-full/Makefile

Скорее всего может существовать и другая версия iconv.

Zyxmon
03-04-2012, 20:58
Если бы я выкладывал в репозиторий бинарники python 2.7 вместо 2.6, то я бы увеличил PKG_RELEASE у всех пакетов модулей питона, устанавливающих свои файлы в lib/python2.x и не надеялся на флаг autoremove. Это гарантирует правильность opkg update + opkg upgrade. Это просто размышления вслух.

PS Я не стал обновлять в своей репе питон, т.к. пока 2.7 в openwrt собирается для release candidate 2.

MrGalaxy
04-04-2012, 04:09
Утро доброе!

1. При переходе на новый репозитарий надо удалять уже понаставленные пакеты или не обращать на них внимания, а новые будут ставиться поверх?
2. Синтаксис команды opkg такой же, как ipkg?

voidshah
04-04-2012, 09:21
1. При переходе на новый репозитарий надо удалять уже понаставленные пакеты или не обращать на них внимания, а новые будут ставиться поверх?

Надо все установить заново! Примонтировав /opt на другой раздел/папку

ryzhov_al
04-04-2012, 13:24
Нигде не могу найти нечто подобное iconv. Необходимо для конвертирования плейлистов из cp1251 то utf8.
Совесть моя чиста. Вроде искал хорошо, различные варианты перебирал. Может другими способами возможна сия процедура?Готово, r478 (http://code.google.com/p/wl500g-repo/source/detail?r=478).

z-vladimir
04-04-2012, 15:48
Готово, r478 (http://code.google.com/p/wl500g-repo/source/detail?r=478).
Блеск! Все работает! Спасибо!

ijjojji
05-04-2012, 10:46
Спасибо за отличный репозитарий!

Добавьте, пожалуйста, id и stat, не хватает для связки rtorrent + rutorrent c плагинами.

ryzhov_al
05-04-2012, 10:51
Добавьте, пожалуйста, id и stat, не хватает для связки rtorrent + rutorrent c плагинами.Я-то давно добавил. Теперь добавляйте их себе на роутер:)

$ opkg list | grep coreutils

Jogi
06-04-2012, 01:12
Пересмотрел все 33 страницы ветки, но так и не понял как вернуть mc обратно к нормальному виду.
Вот что имеем сейчас (mc -c, RT-N16 1.9.2.7-rtn-r4051) после перехода с ipkg на entware:
http://i.piccy.info/i7/4ee868f94f351666579eabfefa01c8d1/1-5-6537/65471989/entware-mc_500.jpg (http://piccy.info/view3/2852664/fbf73a71e879a569257ac510ade75e42/)
Буду рад помощи :)

Spartach
06-04-2012, 06:07
Буду рад помощи :)
В настройках putty: Window - Translation - Remote character set - UTF-8.
В файлик "/tmp/local/root/.profile":
#!/bin/sh
export TERMINFO=/opt/share/terminfo
export PATH='/opt/sbin:/opt/bin:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin'
export TERM=xterm
export LANG='ru_RU.UTF-8'
export LC_ALL='ru_RU.UTF-8'

evh
06-04-2012, 08:01
Что не хватает?

$ php-fcgi
PHP Warning: PHP Startup: Unable to load dynamic library '/opt/lib/php/http.so' - File not found in Unknown on line 0

$ ls /opt/lib/php/http.so
-rwxr-xr-x 1 admin root 313768 Mar 23 19:30 /opt/lib/php/http.so

dimez
06-04-2012, 08:15
А что говорит
ldd /opt/lib/php/http.so?

evh
06-04-2012, 08:28
А что говорит
ldd /opt/lib/php/http.so?


checking sub-depends for 'not found'
checking sub-depends for '/opt/lib/libcurl.so.4'
checking sub-depends for '/opt/lib/libz.so.1'
checking sub-depends for '/opt/lib/libcrypto.so.1.0.0'
checking sub-depends for '/opt/lib/libssl.so.1.0.0'
checking sub-depends for '/opt/lib/libgcc_s.so.1'
checking sub-depends for '/opt/lib/libc.so.0'
checking sub-depends for '/opt/lib/libdl.so.0'
libevent-2.0.so.5 => not found (0x00000000)
libcurl.so.4 => /opt/lib/libcurl.so.4 (0x00000000)
libz.so.1 => /opt/lib/libz.so.1 (0x00000000)
libcrypto.so.1.0.0 => /opt/lib/libcrypto.so.1.0.0 (0x00000000)
libssl.so.1.0.0 => /opt/lib/libssl.so.1.0.0 (0x00000000)
libgcc_s.so.1 => /opt/lib/libgcc_s.so.1 (0x00000000)
libc.so.0 => /opt/lib/libc.so.0 (0x00000000)
libdl.so.0 => /opt/lib/libdl.so.0 (0x00000000)
ld-uClibc.so.0 => ld-uClibc.so.0 (0x00000000)
ld-uClibc.so.0 => ld-uClibc.so.0 (0x00000000)


Пасиб.
похоже libevent2 не хватало, поставил не ругается. Из дома только проверю работает PHP или нет.
Может где зависимости надо поставить, чтобы в следующий раз правильно ставилось.

ryzhov_al
06-04-2012, 18:02
В репозиторий добавлены SIP-серверы-близнецы OpenSIPS (http://habrahabr.ru/post/82102/) и Kamailio (http://tamkovich.com/tag/kamailio/), призванные наряду с FreeSWITCH (http://ru.wikipedia.org/wiki/FreeSWITCH) предложить альтернативу Asterisk.

Оригинальные Makefile'ы OpenSIPS/Kamailio пришлось подправить (https://dev.openwrt.org/timeline?from=04%2F03%2F12&daysback=0&author=&ticket=on&update=Update), поэтому пакеты необходимо проверить в работе.

2 lokus: жду (http://wl500g.info/showthread.php?16042-%D1%EA%EE%EC%EF%E8%EB%E8%F0%F3%E9%F2%E5-%EF%EE%E6%E0%EB%F3%E9%F1%F2%E0&p=246924#post246924) тестов FreeSWITCH. Обязательно отпишитесь по результатам проверки.

lly
07-04-2012, 10:15
ryzhov_al, voidshah
Возможно я что-то пропустил в дискуссии - а чего не увеличиваете PKG_RELEASE при изменении пакетов?
Например, uclibc-opt_0.9.32-1_entware.ipk (http://code.google.com/p/wl500g-repo/source/browse/ipkg/openwrt/uclibc-opt_0.9.32-1_entware.ipk) так до сих пор билд 1, хотя изменялась и в r465, и в r443 ...


P.S. Рекомендую взять наши последние обновления uClibc.

ryzhov_al
07-04-2012, 10:43
ryzhov_al, voidshah
Возможно я что-то пропустил в дискуссии - а чего не увеличиваете PKG_RELEASE при изменении пакетов?
Например, uclibc-opt_0.9.32-1_entware.ipk (http://code.google.com/p/wl500g-repo/source/browse/ipkg/openwrt/uclibc-opt_0.9.32-1_entware.ipk) так до сих пор билд 1, хотя изменялась и в r465, и в r443 ...uclibc-пакеты не менялись, они просто по новой перепаковывались. Видишь ли, наш проект - это куча патчей к одной из последних ревизий транка OpenWRT. Для того, чтобы идти в ногу с этим транком раз-два в месяц приходится:


забирать последний транк OpenWRT,
актуализировать наши патчи,
пересобирать весь мир обновлённой средой.

Мы отмечаем эти ревизии комментариями "fixup according to last openwrt trunk (rev.ХХХХХ)." При этом OpenWRT-шные пакеты libc, libgcc, libstdcpp, libpthread, librt, ldconfig, ldd - это просто упакованные в ipk-обёртку библиотеки, взятые из тулчейна. Сами библиотеки при этом не меняются ни на байт, но при перепаковке в этих ревизиях возникает бинарная разница между ipk-пакетами.
После каждого подобного обновления я обязательно проверяю работоспособность привычного набора программ на роутере полной переустановкой.

P.S. Рекомендую взять наши последние обновления uClibc.Честно? Боюсь из-за незнания. Для себя решил, что буду обновлять тулчейн не чаще раза в год. Не хочу, чтобы на каком-то этапе работа репозитория у форумчан была нарушена при обновлении ключевых библиотек. При этом, естественно, доверие к репозиторию будет подорвано.

В отношении тулчейна буду вести себя максимально консервативно. Обновлять его буду только в случае обнаружения каких-то критических ошибок или значительных обновлений, вроде перехода на uClibc 0.9.33.

lly
07-04-2012, 11:01
Честно? Боюсь из-за незнания. Для себя решил, что буду обновлять тулчейн не чаще раза в год. Не хочу, чтобы на каком-то этапе работа репозитория у форумчан была нарушена при обновлении ключевых библиотек. При этом, естественно, доверие к репозиторию будет подорвано.
Твоя логика конечно не лишена смысла, но я предлагаю обратить внимание на правки только uClibc, на мои порты PR к gcc можешь забить с чистой совестью :).

IMHO важные:
r4052 - проверяется тесткейсом, сам проверял (с ним связан r4060), это всё с апстрима
r4053 - явная бага, проверяется глазками в arch/mips/kernel/scall32-o32.S
r4062 - явная бага, проверял сам

r4061 - можешь не брать, лично нагрузочное тестирование не проводил, доверился автору.


Обновлять его буду только в случае обнаружения каких-то критических ошибок или значительных обновлений, вроде перехода на uClibc 0.9.33.
Именно 0.9.33 не имеет смысла, основная разница - добавлена поддержка prelink.

voidshah
07-04-2012, 14:05
Все же соглашусь с Леонидом. При важных правках тулчейн необходимо обновлять и пересобирать весь репозиторий. Раз в год, имхо, очень редко. Конечно, могут возникнуть проблемы у пользователей... Но ведь они решаемы. Опять же имхо - доверие не подорвется.

ryzhov_al
09-04-2012, 14:31
1. Глядя как часто voidshah пользуется readelf, включил в новый репозиторий binutils. В первую очередь для себя.

2. Закончил (http://code.google.com/p/wl500g-repo/source/list?num=25&start=486) портирование из энтузасткого Optware'шного репозитория (http://code.google.com/p/wl500g/source/browse/#svn%2Fipkg%2Foptware) всех пакетов, которые когда-то туда привнёс (в том числе фидошные^). Оставшиеся непортированными shakespeer и mldonkey вряд ли в силу возраста представляют интерес (ага, я слышу ваш сарказм об актуальности фидошного софта ^))).
Тем более, что для DC-обмена теперь есть ncdc.

3.
Все же соглашусь с Леонидом. При важных правках тулчейн необходимо обновлять и пересобирать весь репозиторий. Раз в год, имхо, очень редко. Конечно, могут возникнуть проблемы у пользователей... Но ведь они решаемы. Опять же имхо - доверие не подорвется.Не вопрос.
В силу нахождения бага в mmap64.c предлагаю "пересобрать" тулчейн наиболее ленивым способом: дождёмся, когда Леонид включит патч в свой код прошивки и просто поправим номер забираемой ревизии тулчейна в своём хозяйстве.

Кроме того, предлагаю в нашем хозяйстве упростить один момент. Сейчас у нас (http://wl500g-repo.googlecode.com/svn/trunk/config.mk) для создания тулчейна с энтузиасткого сайта выкачиваются две ветки разных ревизий:

ревизия кода прошивки (сейчас r4001) для подготовки ядра перед сборкой тулчейна,
ревизия тулчейна (сейчас r3988).

Предлагаю забирать код ядра и код тулчейна одной ревизии. Тем более, что "разнесение" этих ревизий вероятно чревато неприятными последствиями. Кроме того, предлагаю отражать номер забранной у энтузиастов ревизии в поле версии ключевых пакетов. Тем более, что сейчас они именуются явно сиротливо:

ls ./trunk/bin/entware/packages/*_-*
./trunk/bin/entware/packages/ldconfig_-104_entware.ipk
./trunk/bin/entware/packages/ldd_-104_entware.ipk
./trunk/bin/entware/packages/libc_-104_entware.ipk
./trunk/bin/entware/packages/libgcc_-104_entware.ipk
./trunk/bin/entware/packages/libpthread_-104_entware.ipk
./trunk/bin/entware/packages/librt_-104_entware.ipk
./trunk/bin/entware/packages/libstdcpp_-104_entware.ipk

Пусть уж пакеты называются как libc_r4001-104_entware.ipk, у окружающих не будет вопросов о том, что за библиотеки включены в очередное обновление.
Интересно, правильно ли "тупой" opkg определит что новее: libc_r4002-104_entware.ipk или libc_r4001-105_entware.ipk?

lly
09-04-2012, 14:48
Кроме того, предлагаю отражать номер забранной у энтузиастов ревизии в поле версии ключевых пакетов.

Пусть уж пакеты называются как libc_r4001-104_entware.ipk, у окружающих не будет вопросов о том, что за библиотеки включены в очередное обновление.
Интересно, правильно ли "тупой" opkg определит что новее: libc_r4001-104_entware.ipk или libc_r4001-104_entware.ipk?
IMHO, не имеет смысла, особенно если вы вдруг будете добавлять свои патчи. Просто увеличивай PKG_RELEASE, а в тексте коммита можешь указать ссылку на нашу ревизию.

DemonGloom
10-04-2012, 07:21
Интересно, правильно ли "тупой" opkg определит что новее: libc_r4001-104_entware.ipk или libc_r4001-104_entware.ipk?

Блин.. Тупой я тоже не могу определить - что из них новее... Ибо они кажутся одинаковыми..

ryzhov_al
10-04-2012, 07:36
оно заменит htpasswd от апача (для базовой аутентификации). htdigest для создания файлов одноименной аутентификации и в состав mini-httpd не входит, в комплекте с апачем, как обычно, в openwrt

ставил только запрошенный пакет mini-httpd-htpasswd (целиком mini-httpd сейчас не нужен), htpasswd работает, nginx подхватил созданный файл паролей
спасибоДобавил apache вместе с htdigest, r489 (http://code.google.com/p/wl500g-repo/source/detail?r=489).
Правда, на мой взгляд, в инсталляционный пакет OpenWRT'шники на этот раз запаковали больше, чем надо. Что странно, зная их тягу к минимализму содержимого ipk-пакетов.


Блин.. Тупой я тоже не могу определить - что из них новее... Ибо они кажутся одинаковыми..Ок, поправил:

Пусть уж пакеты называются как libc_r4001-104_entware.ipk, у окружающих не будет вопросов о том, что за библиотеки включены в очередное обновление.
Интересно, правильно ли "тупой" opkg определит что новее: libc_r4002-104_entware.ipk или libc_r4001-105_entware.ipk?

По отсутствующей зависимости php5-mod-http.

Пасиб.
похоже libevent2 не хватало, поставил не ругается. Из дома только проверю работает PHP или нет.
Может где зависимости надо поставить, чтобы в следующий раз правильно ставилось.
Попробуем действовать синхронно с OpenWRT, создал им Ticket #11257 (https://dev.openwrt.org/ticket/11257).
Правда не могу сказать как быстро они прореагируют. После внесения правок в OpenWRT trunk пересобиру исправленную версию.

voidshah
10-04-2012, 13:37
r493 (http://code.google.com/p/wl500g-repo/source/detail?r=493)Теперь появилась возможность фиксировать trunk и feeds OpenWRT'шного репозитория. Т.е. при самостоятельной сборке будут скачитваться именно те trunk и feeds, которые указаны ryzhov_al как
Fixup according to last (r31158) OpenWRT trunk
Сейчас это ревизия r31158.

lly
10-04-2012, 13:49
r493 (http://code.google.com/p/wl500g-repo/source/detail?r=493)Теперь появилась возможность фиксировать trunk и feeds OpenWRT'шного репозитория.
Единственное, я бы вынес это в какую-нибудь переменную, чтобы не править в нескольких местах.

voidshah
10-04-2012, 13:58
Единственное, я бы вынес это в какую-нибудь переменную, чтобы не править в нескольких местах.
Боюсь, что feeds.conf не будет понимать переменных. Вернее ./scripts/feeds update не будет понимать переменных в feeds.conf.

ryzhov_al
10-04-2012, 14:19
Боюсь, что feeds.conf не будет понимать переменных. Вернее ./scripts/feeds update не будет понимать переменных в feeds.conf.Тоже мне проблема^):
1) cp -f .rtn/buildroot/feeds.conf ./trunk
2) sed -i 's,packages@XXXXX,packages@${PACKAGE_REVISON},g' ./trunk/feeds.conf

Если не против, я повынесу позже все явно указанные ревизии в config-файл.

voidshah
10-04-2012, 14:24
Тоже мне проблема^):
1) cp -f .rtn/buildroot/feeds.conf ./trunk
2) sed -i 's,packages@XXXXX,packages@${PACKAGE_REVISON},g' ./trunk/feeds.conf

Если не против, я повынесу позже все явно указанные ревизии в config-файл.

Вах, вах!:) Конечно не против, так же удобнее!

Verogirg
10-04-2012, 20:35
простите если оффтопик

два вопроса

1)

rt-n16(r4083) + opkg
установил Transmission - работает но в логе пишет "каку"

23:28:53 10-04-2012 (err|daemon|transmission-daemon) transmission-daemon[453]: UDP Failed to set receive buffer: requested 4194304, got 221184 (tr-udp.c:75)
23:28:53 10-04-2012 (info|daemon|transmission-daemon) transmission-daemon[453]: UDP Please add the line \"net.core.rmem_max = 4194304\" to /etc/sysctl.conf (tr-udp.c:80)
вроде проблема известная - вот например чей-то коммент на iXBT (http://forum.ixbt.com/topic.cgi?id=11:38294:989#989)

2)
попытка из терминала(sshd) запустить ps или top приводит только к появлению надписи

PID TTY STAT TIME COMMAND
ps: can't resolve symbol '__ctype_b_loc'

ryzhov_al
11-04-2012, 10:45
ryzhov_al
А почему ты решил править конфиг uClibc sed'ом в toolchain/Makefile, а не патчем?Согласен, нагляднее. Сделал патчем (http://code.google.com/p/wl500g-repo/source/browse/trunk/toolchain/0.9.32-config.patch?spec=svn494&r=494).

P.S. Рекомендую взять наши последние обновления uClibc.
Ок, тулчейн обновили (http://code.google.com/p/wl500g-repo/source/browse/trunk/config.mk?spec=svn494&r=494) до r4086.

попытка из терминала(sshd) запустить ps или top приводит только к появлению надписи

PID TTY STAT TIME COMMAND
ps: can't resolve symbol '__ctype_b_loc'

Очень похоже на dependency hell при смешении двух репозиториев: Optware и Entware. Проверил, что ps и top слинкованы правильно, поэтому могу предположить, что установка пакетов из нового репозитория велась не на чистый /opt-раздел.

Verogirg
11-04-2012, 20:01
Очень похоже на dependency hell при смешении двух репозиториев: Optware и Entware. Проверил, что ps и top слинкованы правильно, поэтому могу предположить, что установка пакетов из нового репозитория велась не на чистый /opt-раздел.

вы правы... я не "форматил" старый раздел. на котором был ipkg optware

спасибо, за наводку - почищусь :-)

ryzhov_al
12-04-2012, 06:47
Собрал SMS Server Tool 3 (http://smstools3.kekekasvi.com/)
- волшебную хрень для приёма/отправки/обработки SMS-сообщений с помощью подключенного по USB 3-G модема или телефона.

Программа может быть использована для организации SMS-робота (вопрос-ответ, подписка на периодические рассылки и прочее),
оповещения пользователя о событиях, выполнения на роутере определённых действий по приходу SMS-сообщения и прочих нужд.

newkid
13-04-2012, 22:40
Граждане товарищи где squid? В optware аж 2 штуки 2.7 и 3.0.

Я понимаю что другие прокси легче, но их осваивать надо. Я сквид 5 лет юзаю и знаю его хорошо.

Jogi
14-04-2012, 13:00
Как можно вернуть работоспособность стандартным утилитам ? :
man: can't resolve symbol '__ctype_b_loc'
route: can't resolve symbol '__ctype_b_loc'
ifconfig: can't resolve symbol '__ctype_b_loc'

lly
14-04-2012, 14:30
Как можно вернуть работоспособность стандартным утилитам ? :
man: can't resolve symbol '__ctype_b_loc'
route: can't resolve symbol '__ctype_b_loc'
ifconfig: can't resolve symbol '__ctype_b_loc'
ryzhov_al много раз писал - не умеете(не хотите) разбираться с зависимостями пакетов, ставьте в чистый /opt!

Во-вторых, man в "стандартные утилиты" не входит. А указанная ошибка как-раз свидетельствует о том, что вызываются утилиты из старого Optware, причём последние две категорически рекомендуется использовать прошивочные, а не сторонние. Об этом писал я, тоже много раз.

ryzhov_al
14-04-2012, 16:56
Граждане товарищи где squid? В optware аж 2 штуки 2.7 и 3.0.

Я понимаю что другие прокси легче, но их осваивать надо. Я сквид 5 лет юзаю и знаю его хорошо.Добавил, r505 (http://code.google.com/p/wl500g-repo/source/detail?r=505).

Пожалуйста, отпишитесь по результатам тестирования. Прошу обратить внимание на то, чтобы squid не «просился» куда-либо за пределы папки /opt.

vitalerm
15-04-2012, 10:53
Если не очень сложно, добавьте, пожалуйста, в репозитарий PHP5 XSL extension.

newkid
15-04-2012, 11:37
Добавил, r505 (http://code.google.com/p/wl500g-repo/source/detail?r=505).

Пожалуйста, отпишитесь по результатам тестирования. Прошу обратить внимание на то, чтобы squid не «просился» куда-либо за пределы папки /opt.

Вообщем поставил, но без танцев с бубном не обошлось, пришлось создавать две дериктории



mkdir /opt/var/cache
chown nobody:nobody /opt/var/cache

mkdir /opt/var/logs
chown nobody:nobody /opt/var/logs


я может не в курсе но и запускающего скрипта тоже не было


mkdir /opt/etc/init.d
touch /opt/etc/init.d/S80squid
chmod a+x /opt/etc/init.d/S80suid

создал файл /opt/etc/init.d/S80squid такого содержания


#! /bin/sh

case "$1" in
start)
echo -n "Starting proxy server: "
if [ -n "`pidof quotacheck`" ]; then
#you don't need it if you don't have quota check enable.
echo "Starting squid-cache server after delay for few mins:"
/opt/etc/squid/squid.delay-start.sh&
else
/opt/sbin/squid -f /opt/etc/squid/squid.conf
echo "done."
fi
echo "done."
;;
stop)
echo -n "Stopping proxy server: "
/opt/sbin/squid -f /opt/etc/squid/squid.conf -k shutdown
echo "done."
;;
reload|force-reload)
echo -n "Reloading proxy server configuration files: "
/opt/sbin/squid -f /opt/etc/squid/squid.conf -k reconfigure
echo "done."
;;
restart)
echo -n "Restarting proxy server: "
/opt/sbin/squid -f /opt/etc/squid/squid.conf -k shutdown
sleep 2
/opt/sbin/squid -f /opt/etc/squid/squid.conf
echo "done."
;;
*)
echo "Usage: /opt/etc/init.d/S80squid {start|stop|reload|force-reload|restart}"
exit 1
;;
esac

exit 0

добавил в файл /tmp/local/sbin/post-mount
строчку



/opt/etc/init.d/S80squid start


не забываем дать 3 волшебные комманды

flashfs save && flashfs commit && flashfs enable

Ну остальное все стандартно правим /opt/etc/squid/squid.conf как вам надо.
Создаем кэш squid командой squid -z

ryzhov_al СПАСИБО за squid и за оперативность

MercuryV
15-04-2012, 11:47
я может не в курсе но и запускающего скрипта тоже не было
AFAIK, новые пакеты "запускающих скриптов" и не содержат сейчас. Каждый выкручивается как умеет. И, если я ничего не путаю, ожидается некая реформа в этой части, со временем.

evh
17-04-2012, 01:55
Можно ncdc собрать с этим патчем - http://p.blicky.net/ec3kw?
Можно и в личку, а то не знаю как развернуть entware для сборки.
У меня не открывались списки файлов некоторых пользователей, использующих FlylinkDC++.
Я тут пообщался с разработчиком и вот , что он ответил:

<Yorhel> if you don't mind brewing your own ncdc, can you try this patch? http://p.blicky.net/ec3kw
<Yorhel> it's a very specific hack, so I'm wondering if there are still other lists you can't open with that fix

MrGalaxy
17-04-2012, 04:41
В OpenWRT есть мания всё дробить на мелкие пакеты, Точно! Я пока допёр, как ставить трансмишшен, обматерился...

И объяснил бы кто по нормальному в отдельной ветке, как теперь lighttpd ставить-настраивать. Хорошо, что теперь он хотя бы для трансмишшен не требуется.

MercuryV
17-04-2012, 12:03
Подскажите, в репозитории entware или транке OpenWRT есть пакет, который несет в себе бинарники tput и tset ? Что-то не могу найти.

don-pedro
17-04-2012, 15:10
Подскажите, в репозитории entware или транке OpenWRT есть пакет, который несет в себе бинарники tput и tset ? Что-то не могу найти.
Насколько я знаю, они в пакет ncurses входят, которого в entware пока не видно.

pilers
17-04-2012, 21:01
Подскажите, в репозитории entware или транке OpenWRT есть пакет, который несет в себе бинарники tput и tset ? Что-то не могу найти.

Попробуйте optware'вские, размещение /opt/bin. У меня команда "tput clear" работает