edited build
This commit is contained in:
parent
c13d11d451
commit
a6fc0155e7
|
@ -4,4 +4,5 @@
|
|||
|
||||
![Image of Yaktocat](img/budgie_desktop.png)
|
||||
|
||||
- [Работа с репозиториями](doc/repositories.md)
|
||||
- [Сборка eopkg пакета](doc/build_eopkg.md)
|
||||
|
|
|
@ -4,4 +4,5 @@
|
|||
|
||||
![Image of Yaktocat](../img/budgie_desktop.png)
|
||||
|
||||
- [Работа с репозиториями](repositories.md)
|
||||
- [Сборка eopkg пакета](build_eopkg.md)
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
## Процесс сборки
|
||||
|
||||
* [Предварительная подготовка](#предварительная-подготовка)
|
||||
* [Использование локального репозитория](#использование-локального-репозитория)
|
||||
* [Подготовка сборки пакета](#подготовка-сборки-пакета)
|
||||
|
||||
## Предварительная подготовка
|
||||
|
@ -18,7 +19,7 @@ nano ~/.solus/packager
|
|||
|
||||
Внутри файла необходимо указать два ключа, идентифицирующие собирающего пакеты:
|
||||
|
||||
```
|
||||
```shell
|
||||
[Packager]
|
||||
Name=Your Name Here
|
||||
Email=your.email@address
|
||||
|
@ -36,12 +37,24 @@ sudo eopkg install -c system.devel
|
|||
sudo eopkg it solbuild
|
||||
```
|
||||
|
||||
Так же можно (желательно) установить `solbuild-config-unstable` для сборки нестабильной версии пакета:
|
||||
Если нужно использовать только [unstable](repositories.md#список-репозиториев) репозиторий по умолчанию, также [установить конфигурацию для нестабильного репозитория](https://getsol.us/articles/packaging/building-a-package/en/#initializing-solbuild) `solbuild-config-unstable`:
|
||||
|
||||
```shell
|
||||
sudo eopkg it solbuild-config-unstable
|
||||
```
|
||||
|
||||
Если нужно использовать только [local](repositories.md#инициализация-локального-репозитория) репозиторий по умолчанию, также [установить конфигурацию для локального нестабильного репозитория](https://getsol.us/articles/packaging/local-repository/en/#install-the-local-profile):
|
||||
|
||||
```shell
|
||||
sudo eopkg install solbuild-config-local-unstable
|
||||
```
|
||||
|
||||
Также понадобятся `git` и `arcanist`:
|
||||
|
||||
```shell
|
||||
sudo eopkg it git arcanist
|
||||
```
|
||||
|
||||
После установки необходимо инициализировать `solbuild`:
|
||||
|
||||
```shell
|
||||
|
@ -77,11 +90,42 @@ ln -sv common/Makefile.iso .
|
|||
|
||||
В результате выполненных действий каталог `building` примет следующий вид:
|
||||
|
||||
```
|
||||
```shell
|
||||
├── common
|
||||
├── Makefile
|
||||
├── Makefile.common
|
||||
└── Makefile.iso
|
||||
```
|
||||
|
||||
## Использование локального репозитория
|
||||
|
||||
После выполнения установки `solbuild-config-local-unstable` создаётся путь `/var/lib/solbuild/local/` локального репозитория. При использовании локального репозитория необходимо выполнить [индексацию](repositories.md#инициализация-локального-репозитория) списка:
|
||||
|
||||
```shell
|
||||
sudo eopkg index --skip-signing /var/lib/solbuild/local/ --output /var/lib/solbuild/local/eopkg-index.xml
|
||||
```
|
||||
|
||||
Стоит заметить, что в своей работе `eopkg` всегда будет отдавать предпочтение пакетам из самого верхнего репозитория, указанного в списке `eopkg lr`. Другими словами - если пакет существует как в локальном репозитории `solbuild`, так и в официальном вышестоящем репозитории Solus, `eopkg` будет рассматривать только пакет из первого репозитория, указанного в `eopkg lr`, независимо от его номера выпуска.
|
||||
|
||||
Для того, чтобы изменить порядок следования репозиториев (их приоритетов) необходимо передобавить их в нужном порядке, например:
|
||||
|
||||
```shell
|
||||
sudo eopkg ar Local /var/lib/solbuild/local/eopkg-index.xml.xz
|
||||
sudo eopkg ar Solus https://mirrors.rit.edu/solus/packages/unstable/eopkg-index.xml.xz
|
||||
```
|
||||
|
||||
Таким образом локальный репозиторий будет иметь высокий приоритет для `eopkg`:
|
||||
|
||||
```shell
|
||||
eopkg lr
|
||||
Local [active]
|
||||
/var/lib/solbuild/local/eopkg-index.xml.xz
|
||||
Solus [active]
|
||||
https://mirrors.rit.edu/solus/packages/unstable/eopkg-index.xml.xz
|
||||
```
|
||||
|
||||
Стоит обратить внимание, что пакеты, отсутствующие в локальном репозитории сборки `solbuild`, будут извлечены из вышестоящего официального репозитория Solus (`unstable`). Индексацию `eopkg` необходимо обновлять всякий раз, когда добавляется или удаляется локально созданные пакеты в локальном репозитории `solbuild` – в противном случае `eopkg` не будет знать, что новые пакеты доступны/были удалены из репозитория.
|
||||
|
||||
## Подготовка сборки пакета
|
||||
|
||||
Все пакеты создаются из [одного файла сборки](https://getsol.us/articles/packaging/package.yml/en/#format), который предоставляет все необходимые метаданные для менеджера пакетов, а также этапы упаковки, необходимые для создания пакета. Это соответствует спецификации YAML.
|
||||
|
|
|
@ -0,0 +1,109 @@
|
|||
# Работа с репозиториями
|
||||
|
||||
* [Список репозиториев](#список-репозиториев)
|
||||
* [Инициализация локального репозитория](#инициализация-локального-репозитория)
|
||||
* [Добавление репозитория](#добавление-репозитория)
|
||||
* [Удаление репозитория](#удаление-репозитория)
|
||||
* [Включение репозитория](#включение-репозитория)
|
||||
* [Выключение репозитория](#выключение-репозитория)
|
||||
* [Обновление репозитория](#обновление-репозитория)
|
||||
|
||||
## Список репозиториев
|
||||
|
||||
Solus предоставляет только два репозитория - стабильный `shannon` и нестабильный `unstable`. После установки Solus по умолчанию подключён стабильный репозиторий . Для того, чтобы получить список установленных репозиториев на текущий момент необходимо выполнить:
|
||||
|
||||
```shell
|
||||
eopkg lr
|
||||
```
|
||||
|
||||
Терминальный вывод:
|
||||
|
||||
```shell
|
||||
Solus [активен]
|
||||
https://mirrors.rit.edu/solus/packages/shannon/eopkg-index.xml.xz
|
||||
```
|
||||
|
||||
## Инициализация локального репозитория
|
||||
|
||||
Для инициализации локального репозитория `~/Repository` из домашнего каталога используется команда:
|
||||
|
||||
```shell
|
||||
sudo eopkg index --skip-signing $HOME/Repository/ --output $HOME/Repository/eopkg-index.xml
|
||||
```
|
||||
Эта команда ищет все файлы eopkg в директории, собирает тэги из них и суммирует всю информацию в одном выходном файле XML, который по умолчанию называется `eopkg-index.xml`. В частности он индексирует и файлы исходников и бинарные пакеты.
|
||||
|
||||
В данном случае `Repository` может быть любым именем вашего каталога.
|
||||
|
||||
## Добавление репозитория
|
||||
|
||||
Для добавления нового репозитория используется команда:
|
||||
|
||||
```shell
|
||||
sudo eopkg ar Name Url
|
||||
```
|
||||
|
||||
Например, добавление нестабильного репозитория `unstable`:
|
||||
|
||||
```shell
|
||||
sudo eopkg ar Solus https://mirrors.rit.edu/solus/packages/unstable/eopkg-index.xml.xz
|
||||
```
|
||||
|
||||
Или локального репозитория `~/Repository` из домашнего каталога:
|
||||
|
||||
```shell
|
||||
sudo eopkg ar MyRepository $HOME/Repository/eopkg-index.xml.xz
|
||||
```
|
||||
|
||||
## Удаление репозитория
|
||||
|
||||
Для удаления имеющегося репозитория используется команда:
|
||||
|
||||
```shell
|
||||
sudo eopkg rr Name
|
||||
```
|
||||
|
||||
Например, добавление нестабильного репозитория `unstable`:
|
||||
|
||||
```shell
|
||||
sudo eopkg rr MyRepository
|
||||
```
|
||||
|
||||
## Включение репозитория
|
||||
|
||||
Для включения репозитория используется команда:
|
||||
|
||||
```shell
|
||||
sudo eopkg er Name
|
||||
```
|
||||
|
||||
Например:
|
||||
|
||||
```shell
|
||||
sudo eopkg er MyRepository
|
||||
```
|
||||
|
||||
## Выключение репозитория
|
||||
|
||||
Для выключения репозитория используется команда:
|
||||
|
||||
```shell
|
||||
sudo eopkg dr Name
|
||||
```
|
||||
|
||||
Например:
|
||||
|
||||
```shell
|
||||
sudo eopkg dr MyRepository
|
||||
```
|
||||
|
||||
## Обновление репозитория
|
||||
|
||||
```shell
|
||||
sudo eopkg ur Name
|
||||
```
|
||||
|
||||
Например:
|
||||
|
||||
```shell
|
||||
sudo eopkg ur MyRepository
|
||||
```
|
|
@ -4,4 +4,5 @@
|
|||
|
||||
![Image of Yaktocat](budgie_desktop.png)
|
||||
|
||||
- [Работа с репозиториями](../doc/repositories.md)
|
||||
- [Сборка eopkg пакета](../doc/build_eopkg.md)
|
||||
|
|
Loading…
Reference in New Issue