Создание HPKG-пакета

В современных ночных сборках Haiku, используется пакетная система инсталляции программ и модулей. Поэтому, чтобы ваша программа, библиотека или модуль правильно устанавливалась в систему, вам необходимо собрать установочный пакет в формате HPKG.

Информация на официальных ресурсах:

* Creating an OptionalPackage
* HaikuPorter BuildRecipes
* Building Packages

## Упрощённая инструкция по сборке пакета

* В домашней **Home** (путь к домашней директории: /boot/home) директории пользователя Haiku создаёте папку **package** (название папки может быть любым на ваше усмотрение), в которую будете помещать папки и файлы, которые затем будут содержимым вашего пакета.
* В папке **package** создаёте файл **.PackageInfo** (точка перед файлом обязательна) или скачиваете готовый файл-шаблон по этой ссылке.
* Заполняете поля в этом файле, описывающие параметры пакета, соответственно инструкции приведённой ниже.
* Создаёте в этой папке структуру директорий с файлами в соответствии с тем, как они должны располагаться в системных директориях **Haiku**, после установки пакета.
* Создаёте пакет выполнив в терминале команду:

```
 **package create -C** *путь\_к\_папке* *название\_пакета***.hpkg**

```

* После успешного выполнения этой команды пакет будет создан.

## Инструкция по заполнению полей в файле .PackageInfo

Содержимое файла:

```
name package_name
version 1.1-1
architecture x86_gcc2
summary "The Package Name"
description "Detailed description of your package."
packager "USER NAME <email@server.com>"
vendor "Haiku Project"
licenses {
"MIT"
}
copyrights {
"2010-2015 Author Name"
}
provides {
package_name = 1.1
}
requires {
haiku >= r1~alpha4_pm_hrev49632-1
}
urls {
"http://homepage.com"
}
source-urls {
"Download <http://site1.com/source.zip>"
"Location 2 <https://site2.com/source.zip>"
}

```

**Описание полей для заполнения:**

* **name** - пишете название вашего пакета (без пробелов). Если пакет собран для архитектуры **x86**, то указываем эту архитектуру в названии пакета через символ нижнего подчёркивания: **package\_name\_x86**
* **version** - указываете версию программы или библиотеки (указывать номер ревизии через дефис обязательно).
* **architecture** - указываете архитектуру дистрибутива **Haiku**, для которой собрана программа. (список возможных архитектур: **x86\_gcc2**, **x86**, **any**, **x86\_64**, **arm**).
* **summary** - пишете полное название программы или библиотеки (обязательно не менее трёх слов).
* **description** - пишете полное описание вашей программы или библиотеки (для чего она предназначена).
* **packager** - указываете имя или ник сборщика пакета и его адрес электронной почты.
* **vendor** - оставляете стандартное **Haiku Project**.
* **licenses** - перечисляете лицензии программы (по умолчанию можете оставить лицензию **MIT** или если файл особой лицензией прилагается к программе, то в папке пакета создаёте следующую структуру директорий: **/data/licenses** и копируете туда файл лицензии и прописываете имя этого файла вместо **MIT**). Имена стандартных лицензий, можно посмотреть в системной директории: **/system/data/licenses**
* **copyrights** - указываете годы разработки программы и её автора (без запятых и других знаков).
* **provides** - указываете название вашего пакета и его версию. (также указываете главный исполняемый файл этой программы добавляя строку **cmd:***имя\_файла* **= версия** или если это библиотека, то строку **lib:***имя\_файла* **= версия**).
* **requires** - здесь перечисляете зависимости пакета (если для работы программы нужно, чтобы в системе были установлены необходимые библиотеки и программы, то перечислите их в этом разделе, чтобы при установке пакета эти зависимости проверялись и по возможности устанавливались недостающие компоненты в автоматическом режиме). Чтобы проверить наличие установленного в системе пакета, указываем его точное название, такое же, как в репозитории HaikuDepot. Например: **libqt4\_x86 >= 4.8.6.4**. Чтобы проверить наличие в системе исполняемого файла: **cmd:***имя\_файла* **>=** *версия*, если библиотеки: **lib:***имя\_файла* **>=** *версия*. Если нужно указать архитектуру x86, то добавляем к концу имени искомого файла **\_x86**
* **urls** - указываете официальный веб сайт программы или библиотеки.
* **source-urls** - указываете прямые ссылки на исходники этой программы или библиотеки.

После создания пакета, у вас получится файл-архив с расширением **hpkg**, установку которого можно запустить, сделав по нему двойной клик мышкой или в терминале следующей командой:

```
 pkgman install путь_к_фалу.hpkg

```

Файл формата **HPKG** можно открыть, просмотреть содержимое и распаковать с помощью стандартного архиватора **Expander**.

Посмотреть примеры готовых и уже установленных в систему пакетов, вы можете в директории: **/system/packages**

На этом краткая инструкция по основным возможностям создания установочных пакетов для Haiku закончена. Удачных вам сборок!

Источник

 Форки и дистрибутивы
 Помощь