Loadpkg

Материал из ALT Linux Wiki

Loadpkg - набор утилит от Петра А. Изначально начинался как скрипт для автоматизации загрузки пакетов на altlinux.space, но позже вырос в набор утилит облегчающий сборку под разные платформы и загрузку собранных пакетов под эти же разные платформы на altlinux.space.

Команды

Заголовок
Пакет Функционал
buildpkg Сборка пакета в текущем каталоге
buildpkg-all Сборка пакетов для всех платформ
buildpkg-p10 Сборка пакета для P10
buildpkg-p11 Сборка пакета для P11
buildpkg-sisyphus Сборка пакета для Sisyphus
buildpkg-wo Сборка пакета в текущем каталоге из hahser
buildpkg-wo-p10 Сборка пакета для P10 из hahser
buildpkg-wo-p11 Сборка пакета для P11 из hahser
buildpkg-wo-sisyphus Сборка пакета для Sisyphus из hahser
clone_and_build Склонировать все настроеные репозитории altlinux.space и собрать их для всех платформ
days Вывод дней недели на английском для changlog-а
firstpush Первый пуш в git в origin/master
gitadd Аналог git add .
hardreset Аналог git reset --hard
helppkg Help по утилите
initgit Аналог git init
initroot Инициализация root hasher
initroot-p10 Инициализация root hasher для P10
initroot-p11 Инициализация root hasher для P11
initroot-sisyphus Инициализация root hasher для Sisyphus
loadpkg Загрузка пакета на altlinux.space в конкретную платформу указанную в myspace.env
loadpkg-p Загрузка пакета на altlinux.space во все платформы
luacheck Проверка всех lua-скриптов в каталоге на ошибки
pkglist Вывод всех пакетов (%package) из спека
pkgset-p10 Настройка пакетной базы для сборки в P10
pkgset-p11 Настройка пакетной базы для сборки в P11
pkgset-sisyphus Настройка пакетной базы для сборки в Sisyphus
rebuildpkg Пересборка пакетов
rebuildpkg-all Пересборка пакетов для всех платформ
rebuildpkg-p10 Пересборка пакетов для платформы P10
rebuildpkg-p11 Пересборка пакетов для платформы P11
rebuildpkg-sisyphus Пересборка пакетов для Sisyphus

Конфиг

Конфиг для Loadpkg

Для Loadpkg нужно сделать файл:

~/.loadpkg/myspace.env:

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

MYPKGDIR=/tmp/.private/petr/repo/x86_64/RPMS.hasher/
MYUSER=_
TOKEN=_
PLATFORM=p11
  • MYPKGDIR - каталог для загрузки через loadpkg
  • MYUSER - имя пользователя на altlinux.space
  • TOKEN - токен на altlinux.space для загрузки
  • PLATFORM - платформа для загрузки через loadpkg

Конфиг для clone_and_build

Для clone_and_build нужно сделать файл: ~/.loadpkg/srcrepos.env

repos=(
    "user/repo"
    "user/repo"
    "user/repo"
)

Работа с утилитой

Сначала нужно установить набор пакетов конкретной плафтормы (если вы хотите собирать отдельно для конкретной платформы):

  • Для P10:
$ pkgset-p10
  • Для P11:
$ pkgset-p11
  • Для Sisyphus:
$ pkgset-sisyphus 

После нужно инициализировать root текущей или конкретной плафтормы:

  • Текущая платформа:
$ initroot
  • Для P10:
$ initroot-p10
  • Для P11:
$ initroot-p11
  • Для Sisyphus:
$ initroot-sisyphus

После перехода в gear-репозиторий вы можете собрать пакет

  • Текущая платформа:
$ buildpkg
  • Для P10:
$ buildpkg-p10
  • Для P11:
$ buildpkg-p11
  • Для Sisyphus:
$ buildpkg-sisyphus
  • Для всех платформ:
$ buildpkg-all

Чтобы собрать пакет с наработками из репозитория с Hasher:

  • Для P10:
$ buildpkg-wo-p10
  • Для P11:
$ buildpkg-wo-p11
  • Для Sisyphus:
$ buildpkg-wo-sisyphus

Чтобы загрузить пакет на altlinux.space в репозиторий указанный в конфиге:

$ loadpkg

Вместо этого, вы можете загрузить все пакеты для всех платформ одной командой:

$ loadpkg-p

Вы так же можете скачать все из .space-репозиториев и собрать для всех платформ одной командой:

$ clone_and_build

Ссылка на проект