HPC.ru lite - Все форумы
Форум: КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее
Тема: работа с пакетами ipk
Страницы: [1] 2 3

[Ответить]
DMych [30.11.2005 12:23] работа с пакетами ipk:
(Решил вынести свой вопрос в новую тему, ибо суть новая тема )

Еще раз "о птичках": есть ли способ проверить из скриптов при установке пакета куда статится - в основную память или на карточку (CardInst=yes|no)? Ну, кроме, разумеется, прямого анализа файла control.

Последнее, кстати, может оказаться проблематичным, т.к. на машине может не оказаться даже grep'а, не говоря уже о sed'е, awk'е и т.п.

Просто тут у меня мысля родилась - перепаковать тот Питон, что в cramfs идет, в нормальный ipk-файл с возможностью установки на карточку. Для этого желательно проверять куда он ставится, и создавать (или не создавать) нужные симлинки.
DMych [30.11.2005 13:55] :
Не такое уж и "море". У меня на SD 512M (правда, в ext2fs) лежит devimage, emacs, и оба Питона (практически целиком). Плюс репозиторий CVS, куча доков и фоток. И еще место осталось. Честно.

А, нет, вру: devimage у меня там в cramfs-таки лежит - я его не распаковывал.

По любому, я думаю, может быть полезно иметь этот Питон в ipk-формате, ибо из двух существующих этот ИМХО качественнее сделан. Опять же, не нужно мучиться выбором нужных пакетов. Поставил - и все (хошь cramfs бери, хошь в ipk - на выбор).
maslovsky [30.11.2005 15:27] Re: работа с пакетами ipk:
Разве что по анализу переменной PKG_ROOT

Это точно не поможет, ибо это фишка опциональная и её может не быть.

Grep и sed есть даже в шарпвских прошивках (в составе busybox), awk появился в прошивках для завров СхК. В Cacko и прочих продвинутых прошивках всё это есть с самого начала.

А это и не нужно, гуёвый исталятор сам создает необходимые симлинки при установке на карты.
DMych [30.11.2005 16:35] Re: работа с пакетами ipk:
А не гуёвый?

Опять же, откуда он знает, что /usr/bin/python должен указывать на /usr/bin/python2.3 или /mnt/card/QtPalmtop/usr/bin/python?
DMych [01.12.2005 11:25] Re: работа с пакетами ipk:
Ожидаемый размер пакетов после установки:
[*:814774f5c0]сам Питон ~37M
[*:814774f5c0]документация в HTML ~15M


Сдается мне, не так уж много. Кстати, файлы там в основном небольшого размера, многие вообще мелкие. Так что насчет размера кластера стоит подумать.
DMych [01.12.2005 13:29] :
В процессе установки пересобранного питона ipkg рукается:

/mnt/cf/ipks# ipkg -d /mnt/cf/QtPalmtop install ./python_2.3-build01_arm.ipk
Unpacking python...Done.
Configuring python...[: ==: unknown operand
Done.
*** Command: add
*** Locating
package Package "python" not found on external storages.
/mnt/cf/ipks# ipkg -d /mnt/cf/QtPalmtop/ install ./python-doc_2.3-build01_arm.ipk
Unpacking python-doc...Done.
Configuring python-doc...Done.
*** Command: add
*** Locating package
Package "python-doc" not found on external storages.

Пакет pythonимеет в control:

Package: python
Priority: optional
Section: Console

а также postinst-скрипт:

#!/bin/sh

ln -sf $PKG_ROOT/usr/bin/python2.3 /usr/bin/python
ln -sf $PKG_ROOT/usr/bin/pydoc2.3 /usr/bin/pydoc
if [ $PKG_ROOT == "/" ] ; then
ln -sf $PKG_ROOT/usr/lib/python2.3 /usr/lib/python2.3
fi

exit 0

В control для python-doc прописано:


Package: python-doc
Priority: optional
Section: Misc


Что бы это могло быть? А главное - как лечить?
DMych [01.12.2005 15:47] :
Все, разобрался сам: во-первых, нужно, конечно же, задавать -d /mnt/cf, а во-вторых, писать #!/bin/bash, а не /bin/sh в скрипте.
maslovsky [01.12.2005 16:07] Re: работа с пакетами ipk:
А не гуёвый?

Есть такая штука как ipkg-link

Ссылку /usr/bin/python2.3 -> /usr/bin/python нужно просто в пакете иметь. А ссылка /mnt/card/usr/bin/python -> /usr/bin/python будет создана инсталятором.
maslovsky [01.12.2005 16:08] :
$PKG_ROOT лучше в кавычки взять
maslovsky [01.12.2005 16:10] :
И если уж что-то делаешь ручками в postinst, то подчищай за собой в portrm
[Ответить]
[Вперед >]