zepete: (Default)
[personal profile] zepete
Репозиторий openwrt состоит из трех составляющих:
-файла пакета с расширением ipk;
-вспомогательный текстовый файл "Packages" содержащем сведения для проверки подлинности пакетов, который нужен для получения файла "Packages.gz";
-Packages.gz, являющегося упакованным файлом  Packages, собственно, который и требуется для opkg.

1. Файл с раширением ".ipk".
Это архив, упакованный linux утилитой ar. В windows его можно просмотреть при помощи 7zip, а в linux помогает mc. Имя файла состоит из трех частей разделенных подчеркиванием: "<имя пакета для opkg install/remove>_<версия>_<платформа>.ipk".
Файл содержит три файла.
1. Файл длиной 4 байта и именем "debian-binary", содержащий "2.0";
2. Архив "data.tar.gz", содержащий файловую систему, которая будет распакована в корневую папку;
3. Архив "control.tar.gz", содержащий файл "control" (описывает пакет) и sh программы: "preinst" (запускается перед установкой пакета, соответствует содержимому секуции/переменной Package/<имя пакета>/preinst), "postinst" (запускается после установки пакета, соответствует содержимому секуции/переменной Package/<имя пакета>/postinst), "prerm" (запускается перед удалением пакета, соответствует содержимому секуции/переменной Package/<имя пакета>/prerm), "postrm" (запускается после удаления пакета, соответствует содержимому секуции/переменной Package/<имя пакета>/postrm). Некоторые из этих программ могут отсутствовать, но файл control обязателен. Отменяется установка/удаление пакета возвращением не нулевого значения из скрипта preinst/prerm.
Поэтому установочные скрипты можно проверить до установки пакета, просто просмотрев содержимое архива control.tar.gz.

2. Файл Packages.
Содержит такие строки для каждого пакета.

Version: 1-1
Depends: libc
Provides:
Source: package/packagename
Section: 1
Status: unknown ok not-installed
Essential: no
Priority: optional
Maintainer: zepete
Architecture: ar71xx
Installed-Size: 816
Filename: packagename_1-1_ar71xx.ipk
Size: 2353
MD5Sum: 7d6363d5aa63e2a016c1e9a56a40dd1d
Description:  description of package packagename

При обновлении пакета обязательно менять в нем поля MD5Sum, Size и Filename (если менялась версия). MD5Sum вычисляется при помощи WinMD5free.
После чего упаковать этот файл в Packages.gz тем же самым 7zip.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

zepete: (Default)
zepete

January 2026

S M T W T F S
    1 23
4 56 78910
11121314151617
18192021222324
25262728293031

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 14th, 2026 05:36 pm
Powered by Dreamwidth Studios