The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Открыт публичный сервер сборочной системы Korinf

22.06.2011 12:52

Компания Etersoft объявила об открытии публичного сервера системы Korinf. Система по назначению напоминает развиваемую в рамках проекта openSUSE платформу Open Build Service и представляет собой среду сборки пакетов под произвольные операционные системы. Среди поддерживаемых систем Debian/Ubuntu, SUSE, RHEL/Fedora, Arch Linux, Gentoo и FreeBSD (в будущем ожидается поддержка OpenSolaris, Mac OS X и даже Windows). Используя Korinf, разработчики смогут достаточно легко выпускать свои приложения для различных Linux-дистрибутивов. Одновременно с открытием публичного сервера выходит новый релиз Korinf 2.0 под свободной лицензией AGPLv3.

В режиме публичного доступа разработчики смогут конвертировать пакеты, используя ресурсы сборочного сервера Etersoft. Устанавливать Korinf на собственный сервер не потребуется. Доступ к серверу может быть как платным, так и бесплатным — это определяется степенью социальной значимости и открытости проекта. По вопросам использования публичного сервера Korinf можно обращаться по адресу [email protected]

Проект Korinf развивается из системы, которую в Etersoft используют для создания сборок собственных продуктов (например, WINE@Etersoft) под различные дистрибутивы. До сих пор Korinf разворачивался преимущественно в ALT Linux. В качестве исходных пакетов использовались пакеты из репозитория Sisyphus. Korinf позволил полностью автоматизировать конвертацию пакетов ALT Linux в пакеты других ОС. Систему сборки можно использовать и на других Linux-дистрибутивах, хотя для этого может потребоваться некоторая доработка.

Основное отличие Korinf от Open Build Service состоит в том, что система Open Build Service не привязана к какому-то определенному дистрибутиву и инструкции о сборке пакетов в ней формируются отдельно (параметры сборки уже определены для всех приложений из состава openSUSE). В Korinf используется привязка к src.rpm и spec-файлам из репозитория Sisyphus, позволяя собирать для других ОС только пакеты, оформленные в соответствии с требованиями Sisyphus. Кроме того, Korinf не поддерживает сборку системообразующих пакетов, таких как glibc и rpm.

Работа Korinf сводится к организации взаимодействия с внешними сборочными окружениями, преобразованию исходной спецификации в формат целевой системы, передаче заданий и получению результата. Сборка осуществляется на удаленном сервере или в chroot-окружениях (планируется переход к использованию контейнеров OpenVZ), в которых установлены системы для которых нужно сформировать пакет. Исходный spec-файл преобразуется для использования в заданном сборочном окружении при помощи команды rpmbph, для выполнения сборки в окружениях устанавливается пакет rpm-build-altlinux-compat. Для Debian и Slackware полученный rpm-пакет преобразуется при помощи утилиты alien. Для FreeBSD, Gentoo и других систем, имеющих принципиально другие подходы к формирования пакетов, используются специальные правила сборки и скрипты-трансляторы.

  1. Главная ссылка к новости (http://etersoft.ru/content/vie...)
  2. OpenNews: Система openSUSE Build Service переименована в Open Build Service
  3. OpenNews: Анонсирован выход openSUSE Build Service 2.1
  4. OpenNews: Анонсирован выход openSUSE Build Service 1.8 и 2.0
Автор новости: Etersoft
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/30954-Korinf
Ключевые слова: Korinf, altlinux, build
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (32) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 13:21, 22/06/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Копия Open Build Service?
     
     
  • 2.2, andres (??), 13:29, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Основное отличие Korinf от Open Build Service состоит в том, что система Open Build Service не привязана к какому-то определенному дистрибутиву и инструкции о сборке пакетов в ней формируются отдельно
     
     
  • 3.4, prof_alex (?), 13:41, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > В Korinf используется привязка к spec-файлам из репозитория Sisyphus

    Можно узнать, в каких дистрибутивах, кроме Альта, этот сизиф используется?

     
  • 3.5, aen (ok), 13:44, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    То есть отдельно для каждого дистрибутива. Для сборки, например, wine@etersoft в OBS на дюжине платформ пришлось бы писать дюжину спеков и каждый отлаживать. А в Коринфе -- один.
    Коринф удобнее тем, кто собирает свой пакет для нескольких дистрибутивов.
     
     
  • 4.15, Moomintroll (ok), 15:15, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > пришлось бы писать дюжину спеков

    Вообще-то для OBS нужен один спек с необходимыми %if и один набор правил для Debian/Ubuntu.

    C Gentoo/Arch/*BSD таки засада...

     
     
  • 5.21, а (?), 17:04, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    ошибаетесь, нужен один spec для rpm based и еще один файл для deb based
     
     
  • 6.27, Moomintroll (ok), 13:21, 23/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    янетормоз

    > и один набор правил для Debian/Ubuntu

     
  • 5.24, Клыкастый (ok), 23:57, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Надо сильно накосячить, чтобы сборка под source-based была засадой.
     
  • 3.18, Michael Shigorin (ok), 16:37, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Основное отличие Korinf от Open Build Service состоит в том, что система
    > Open Build Service не привязана к какому-то определенному дистрибутиву и инструкции
    > о сборке пакетов в ней формируются отдельно

    Интересно, кто-нить пробовал поднимать OBS на не-openSUSE?

    Касательно же "формируются отдельно" -- так в обоих случаях получается, что если нет готовых, то писать (причём "необходимые %if" в нетривиальных случаях только выглядят невинно, даже спек для нескольких версий одной и той же опенсузи или мандривы порой выглядит монструозно и с этим мало что можно поделать при текущей скорости изменения макропакетов по дистрибутивам).

    Т.е. это подходы к одной матрице с разных сторон.

     
     
  • 4.31, ach (ok), 10:34, 24/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    OBS умеет еще локально собирать пакеты в chroot целевого дистрибутива. Причем, поддерживается простая сборка в chroot, сборка в виртуалке kvm или xen на выбор.
    Korinf, я так понял, этого не умеет.

    И насчет разных rpm-based - тут есть варианты. Либо писать spec под каждый дистрибутив, либо писать один подо все с разными %if..%endif.

     
     
  • 5.32, Michael Shigorin (ok), 19:40, 26/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Korinf, я так понял, этого не умеет.

    Почему же, был бы ssh на место.

    > И насчет разных rpm-based - тут есть варианты. Либо писать spec под
    > каждый дистрибутив, либо писать один подо все с разными %if..%endif.

    ...либо http://git.altlinux.org/people/lav/packages/?p=rpm-build-altlinux-compat.git

     

  • 1.3, Alex (??), 13:39, 22/06/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Тогда зачем этот Korinf нужен, если есть Open Build Service?
     
     
  • 2.6, Axel (??), 14:11, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А OBS поддерживает сборку под Gentoo или Arch?
     
     
  • 3.8, Аноним (-), 14:26, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +8 +/
    Какая сборка под Gentoo!? Написал ебилд и все, собирать будут пользователи пакета!
     
     
  • 4.22, Омоним (?), 17:42, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Не будет! Проприетарный продукт надо собрать под все платформы, а как поделиться с гентой, никто не знает.
    Я предлагаю через LD_PRELOAD= запускать бинарники для Slackware. =)
     
     
  • 5.25, Клыкастый (ok), 23:59, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Не будет! Проприетарный продукт надо собрать под все платформы, а как поделиться
    > с гентой, никто не знает.

    Вот чёрт, а nvidia-то и не знает. Клепает себе проприетарные дрова... а они наверное сами отползают в портежи и порты.

    > Я предлагаю через LD_PRELOAD= запускать бинарники для Slackware. =)

    Прав старик Эразм Роттердамский. Против глупости сами боги бороться бессильны.


     
  • 2.19, Michael Shigorin (ok), 16:42, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Тогда зачем этот Korinf нужен, если есть Open Build Service?

    Они появились примерно одновременно -- OBS в 2007, Korinf в 2008.  И нужен он был для решения задач Etersoft, которые не решались (и не решаются) OBS, насколько понимаю.  Подойти может для схожих.

     

  • 1.7, Ignotus (?), 14:20, 22/06/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Мда, Коринф на английском не так пишется http://en.wikipedia.org/wiki/Corinth
     
     
  • 2.9, artem.stecenko (ok), 14:36, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +2 +/
    С чего Вы взяли что это английский? Это - транслит :-D
     

  • 1.10, ach (ok), 14:37, 22/06/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Для Debian и Slackware полученный rpm-пакет преобразуется при помощи утилиты alien.

    А с зависимостями такого пакета чего будет? alien зависимости не преобразует.

     
     
  • 2.11, Аноним (-), 14:39, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Для Debian и Slackware полученный rpm-пакет преобразуется при помощи утилиты alien.
    > А с зависимостями такого пакета чего будет? alien зависимости не преобразует.

    RPM же собирается на целевой системе и уже все нужные зависимости содержит

     
     
  • 3.13, ach (ok), 15:01, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Вопрос не в том. Вопрос в том, сохранятся ли эти зависимости после конвертации rpm ->deb. Насколько я помню alien зависимости корректно не конвертит. Я как-то на генте собрал rpm, отконвертил его в deb. apt пакет ставить отказался, мотивируя тем, что зависимости не нашел.
     
  • 2.12, Odin (??), 14:47, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • –2 +/
    в slackware нет зависимостей... :D
     
     
  • 3.26, Клыкастый (ok), 00:01, 23/06/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > в slackware нет зависимостей... :D

    да-да. и slapt-get придуман чисто усложнить жизнь.

     

  • 1.14, Анон9 (?), 15:12, 22/06/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Korinf позволил полностью автоматизировать конвертацию пакетов ALT Linux в пакеты других ОС.

    Хм... если бы fromAll to AltLinux. Кому требуется что-то тянуть из Альта куда-либо еще??

     
     
  • 2.16, RRV (?), 16:00, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Хм... если бы fromAll to AltLinux. Кому требуется что-то тянуть из Альта
    > куда-либо еще??

    Хм... Как бы, принцип СПО - кому требуется, тот и сделал. Разве нет? При этом, люди еще и с другими разработкой поделились, за что им спасибо сказать нужно.

     
  • 2.17, Анон (?), 16:29, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    В своё время у них в девеле прошло соббщение про модуль fedora import. Так понял из федоры возможно тянуть с пересборкой всё что угодно.
     
  • 2.20, Michael Shigorin (ok), 16:43, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Korinf позволил полностью автоматизировать конвертацию пакетов ALT Linux
    >> в пакеты других ОС.
    > Хм... если бы fromAll to AltLinux.

    Импорт из jpackage и затем fedora Игорь Власенко уже сделал; а утилиту rpmcs для зачистки спеков разного происхождения тот же Виталик Липатов сделал ещё раньше.

    > Кому требуется что-то тянуть из Альта куда-либо еще??

    Возможно, Вы не поняли: если собрать "интегральный" пакет для альта (а из-за достаточно развитого макропакета спек можно сделать чистым и высокоуровневым), то затем "дифференцировать" его под разные дистрибутивы и их версии может получиться автоматически.

     
     
  • 3.23, Анон9 (?), 18:00, 22/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    Да, идея теперь понятна.  Спасибо.
     

  • 1.28, ы (?), 15:10, 23/06/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > планируется переход к использованию контейнеров OpenVZ

    LXC (Linux Container) умеет всё что OpenVZ, но в отличие от, LXC в ядре из коробки.

     
     
  • 2.29, Michael Shigorin (ok), 15:37, 23/06/2011 [^] [^^] [^^^] [ответить]  
  • +/
    >> планируется переход к использованию контейнеров OpenVZ
    > LXC (Linux Container) умеет всё что OpenVZ

    К сожалению, нет -- управление ресурсами там по сравнению с ovz в зачаточном состоянии.

     

  • 1.30, Аноним (-), 17:51, 23/06/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    По моему OBS лучше для deb-based дистрибутивов, там пакеты собираются родные, а не конвертируются с помощью alien. Много раз уже видел корявые пакеты после этого alien, жуть сплошная.
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру