Вход:  Пароль:  
FreeSource: korinf ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |

Korinf

Описание

Коринф – система сборки пакетов под различные целевые системы на основе единого src.rpm, выполненного согласно правилам ALT Linux.
Название Korinf (Коринф) предложено Алексеем Новодворским. Как известно, Сизиф был царём Коринфа.
Проект развивается из системы сборки, применяемой в Etersoft для сборки бинарных пакетов WINE@Etersoft, haspd, Postgre SQL?, freenx и прочего.


Система в настоящий момент готовится к публикации, и не до конца готова к самостоятельному использованию. Можно обращаться к wine@etersoft.ru.

Применение

Единый исходник

Исходной единицей, отправляемой на сборку, является src.rpm со спеком, написанным согласно принятым в ALT Linux правилам.
Спек желательно иметь идеальный (вычитанный согласно новейшим представлениям о его красоте).


Поддерживаемые целевые основные системы:

Процесс сборки

Коринф выполняет организационную работу по передаче задания на сборку пакета и публикацию результата.
rpm-спек для целевой системы преобразуется из спека для ALT Linux с помощью команды rpmbph (из etersoft-build-utils) и выполняется его сборка. Задействуется пакет rpm-build-altlinux-compat (обеспечивающий совместимость спека по макросам с целевой системой).
Сборка происходит на сборочной машине в chroot'е целевой системы под специальным пользователем, либо в удалённой системе, доступной через ssh.
Для не rpm-систем с помощью alien производится конвертирование пакета (в deb или tgz).
Результат сборки публикуется (копируется на ftp-сервер в соответствующий каталог).
Успешность сборки контролируется, но в любом случае протокол сборки также публикуется.

Дополнительно


Для систем, в которые невозможно преобразование из rpm (Free BSD, Gentoo, Solaris) пишутся собственные правила сборки (портежи и ебилды).

Возможно реально разработать конвертор в портежи и ебилды.

Что нужно

Подобные системы

Сборочные фермы


“Personal Package Archives” полностью интегрируется в другой бесплатный сервис Launchpad, и дает каждому своему пользователю 1 Gb дискового пространства для загрузки любого программного обеспечения. “Personal Package Archives” автоматически скомпилирует его, и сделает deb пакет для Ubuntu Linux.
Плюс, в “Personal Package Archives” доступен сервис оповещения о ошибках (bug reporting) и локализированное програмное обеспечение через веб-интерфейс.

Использование


В настоящий момент Korinf развёрнут на сборочных серверах Etersoft. Инструкция по использованию для тех, у кого есть логин:


$ cvs checkout eterbuild
$ cd tools
$ ./login.sh Дистрибутив/версия [-r]
Дистрибутив/версия – в стиле ALTLinux/4.0 или SUSE/10.3
-r – вход под root, а не под пользователем


Для сборки пакета нужно выполнить скрипт вида build-пакет.sh:
$ cd eterbuild
$ build-пакет.sh
Например, выполнить скрипт build-wine.sh.


В этом скрипте должна присутствовать строка
export REBUILDLIST="Дистрибутив/версия (Список дистрибутивов)"
для сборки в тестовой системе (наборе систем).
В строке build_rpm необходимо указать собираемый пакет:
build_rpm Пакет.


Вспомогательные скрипты Korinf работают следующим образом:
Из скрипта build-%{пакет} вызывается функция build_rpm, описанная в ./functions/helpers.sh, которая запускает скрипт functions/autobuild-functions.sh. В нем используется функция build_in_dist, описанная в build-main.sh. Эта функция позволяет собирать пакеты для Free BSD (с помощью скрипта build-freebsd.sh), Open Solaris? (build-solaris.sh), Gentoo (build-gentoo.sh) (для этих систем сборка происходит на отдельных машинах), ALTLinux (./functions/build-hasher.sh) и других дистрибутивов (build_rpms из ./functions/build-rpm.sh) (для deb дистрибутивов производится конвертирование из rpm с помощью функции convert_rpm; с ее же помощью происходит конвертирование в tgz и tar.gz). Для 2 последних случаев монтируется файловая система соответствующего дистрибутива (системы указываются в переменной REBUILDLIST скрипта build-%{пакет}) (с помощью mount-linux из ./functions/mount.sh). Сборка для Linux при этом происходит в чруте в подмонтированной файловой системе с помощью средств из пакета etersoft-build-utils: rpmbb и rpmbph.


С результатом сборки можно ознакомиться в eterbuild/log/Система/Пакет.log, а также в соответствующем каталоге на ftp-сервере.


Страницы, ссылающиеся на данную: AltLinux/Sisyphus/devel/situation


 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]