documentation/SolusProject/doc/build_eopkg.md

88 lines
3.8 KiB
Markdown
Raw Normal View History

2021-10-22 22:45:06 +00:00
# Сборка eopkg пакета
[Официальная документация](https://getsol.us/articles/packaging/) по сборке пакетов **eopkg** для последующего размещения в официальном репозитории.
## Процесс сборки
* [Предварительная подготовка](#предварительная-подготовка)
* [Подготовка сборки пакета](#подготовка-сборки-пакета)
## Предварительная подготовка
Для начала необходимо сконфигурировать файл `packager`, который используется для упаковщика в результирующем двоичном пакете. Для этого в домашней директории необходимо создать каталог `.solus` с содержащим внутри себя файлом `packager`:
```shell
mkdir ~/.solus
nano ~/.solus/packager
```
Внутри файла необходимо указать два ключа, идентифицирующие собирающего пакеты:
```
[Packager]
Name=Your Name Here
Email=your.email@address
```
Следующим действием необхоимо произвести установку [базового инструмента разработки](https://getsol.us/articles/package-management/basics/en/#base-development-tools) `system.devel`:
```shell
sudo eopkg install -c system.devel
```
Для сборки `eopkg` пакетов необходимо использовать инструмент `solbuild`:
```shell
sudo eopkg it solbuild
```
Так же можно (желательно) установить `solbuild-config-unstable` для сборки нестабильной версии пакета:
```shell
sudo eopkg it solbuild-config-unstable
```
После установки необходимо инициализировать `solbuild`:
```shell
sudo solbuild init
```
Это займет некоторое время, так как будет производиться загрузка и подготовка образа. Рекомендуется обновлять `solbuild`, в противном случае обновления будут применяться при каждой сборке:
```shell
sudo solbuild update
```
Следующим шагом необходимо создать каталог для разработки, в котором будет находиться все конфигурационные файлы для сборки пакетов. К примеру, в домашней директории создать каталог `building`:
```shell
mkdir ~/building
```
Далее внутри каталога `building` произвести настройку инструментов для сборки. Нужно настроить `common` (набор сценариев создания), который позволяет более легко управлять, создавать, проверять и публиковать пакеты. Для этого нужно клонировать общий репозиторий с помощью `git`:
```shell
cd ~/building
git clone https://dev.getsol.us/source/common.git
```
Далее нужно настроить символические ссылки:
```shell
ln -sv common/Makefile.common .
ln -sv common/Makefile.toplevel Makefile
ln -sv common/Makefile.iso .
```
В результате выполненных действий каталог `building` примет следующий вид:
```
├── common
├── Makefile
├── Makefile.common
└── Makefile.iso
```
## Подготовка сборки пакета