Results 1 to 7 of 7

Thread: how to: Работа с пакетами ipk

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #1

    how to: Работа с пакетами ipk

    Маленькое вступление:
    В основном пишу для себя чтобы не забыть через год


    Исследование содержимого пакета
    Разборка пакета
    Так как на самом деле пакет ничто иное как tar.gz архив то и работать с ним можно как с обычным архивом. а именно расспаковать, запаковать просмотреть содержимое, извлечь часть файлов.
    Например для расспаковки пакета с именем somepack.ipk можно выполнить следующие команды
    Code:
    tar -zxvf somepack.ipk
    после чего в папке появятся 2 файла
    data.tar.gz control.tar.gz
    которые также являются архивами
    data.tar.gz содержит инсталиремые файлы а control.tar.gz содержит сприпты установки и файл описания пакета.
    Сборка пакета
    для создания пакета ipk также можно восспользоваться архиватором tar, единственное что нужно сделать это указать упцию --format=ustar
    итак например вам захотелось создать пакет somepack
    для этого нужно создать файл с именем control приблизительно следующего содержания

    Code:
    Package: somepack
    Architecture: mipsel
    Priority: optional
    Section: net
    Version: 1.31-1
    Maintainer: Vasili Pupkin
    Source: ftp://ftp.domain.org/someprog.tar.gz
    Description: pack descripton 
    Depends: zlib, libsomelibs
    Suggests:
    Conflicts: progmame
    NB:поля Depends и Conflicts заполняются в случае если ваш пакет зависит от какого то другого пакета или конфликтует с чем то, соответственно.
    далее необходимо создать в папке стпуктуру каталогов идентичную той в которую будут копироваться файлы
    например
    Code:
    /opt
    /opt/bin
    /opt/etc
    и разложить по этим каталогам файлы.
    теперь необходимо упаковать сначала папку в которой лежит файл
    Code:
    control
    а за тем папку в которой находятся инсталируемые файлы например у нас имеется папка /opt/mypacks/somepak в которой находятся 2 поддиректории control и data. создаем архив control.tar.gz
    Code:
    cd /opt/mypacks/somepak/control
    tar (завтра допишу устал :)
    Установка ipk пакета
    Чтобы избежать проблем с переполнением /tmp и как следствие зависание рутера, можно восспользоваться опцией -t. Например так:
    Code:
    ipkg install -t /opt/tmp somepackage
    Чтобы скачать пакет без установки можно восспользоваться опцией
    Code:
    ipkg download somepackage
    Прочее
    Чтобы mc "понимал" ipk формат необходимо в файл расширений /opt/share/mc/mc.ext добавить следующие строки
    Code:
    regex/\.ipk
            Open=%cd %p#utar
            View=%view{ascii} gzip -dc %f 2>/dev/null | tar tvvf -
    Last edited by angel_il; 18-01-2008 at 22:50.
    vim имеет два режима - бибикать и все портить (с) не мое

Similar Threads

  1. IPk Tutorial Issues
    By vmoakley in forum WL-500w Tutorials
    Replies: 1
    Last Post: 15-11-2007, 07:46

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •