Обзор системы сборки Linux-пакетов openSUSE Build Service
Содержание:
1.Введение (Вы читаете данный раздел);
2. Начало работы;
3. Процесс сборки;
4. Зависимости от других проектов;
5. Особенности сборки RPM и Deb.
Одной из примечательных особенностей мира Linux является наличие сотен различных дистрибутивов. Но для разработчиков приложений, желающих донести свои творения до как можно большего числа пользователей, такое разнообразие может стать проблемой: удостовериться, что приложение способно функционировать в большом количестве дистрибутивов - довольно непростая задача.
Типичным решением этой проблемы является делегирование всех забот разработчикам дистрибутивов - если им понравится ваше приложение, то они включат его в свои репозитории и будут сами заботиться о корректности его функционирования. Хорошо бы при этом попасть в основной репозиторий, а не в свалку всего и вся, которая в установленной системе по умолчанию может быть отключена. Однако популярности приложения надо сначала как-то добиться - а для этого неплохо бы завоевать аудиторию. К тому же, не факт, что разработчики дистрибутива не добавят в приложения чего-нибудь «от себя», что придется не совсем по нраву авторам оригинальной программы.
Конечно, можно просто раздавать всем исходный код и предлагать собирать программу самостоятельно, но далеко не каждый готов тратить время на сборку приложения лишь для того, чтобы попробовать его «вживую». Кроме того, такой подход не является дружественным по отношению к «обычным» пользователям десктопов.
В общем, и для пользователей, и для разработчиков ПО выгодна ситуация, когда разработчик сам создает и выкладывает готовые пакеты (RPM, Deb и прочие) для различных систем.
В идеале, разработчику для этого надо иметь под рукой установленные системы, для которых планируется собирать пакеты. Поэтому организация сборки для достаточно большого числа систем является достаточно трудоемкой и ресурсоемкой задачей. К счастью, существует готовый инструментарий, способный взять на себя существенную часть забот, - речь идет об openSUSE Build Service (OBS).
Следует помнить, что даже собрав самый лучший диструбутив в мире, у Вас может возникнуть вопрос, как сделать фото экрана (http://joxi.ru/lander/snyatie-skrinshotov). В Windows все просто, есть волшебная кнопка PrtSс и множество различных приложений... впрочем, в Linux все точно так же, только специально предназначенной для этого кнопки нет!
Изначально OBS предназначался для сборки дистрибутивов семейства SUSE (и используется для этой цели и поныне), однако со временем его функциональность существенно расширилась. Сейчас OBS - это система, позволяющая собирать RPM-и Deb-пакеты произвольных программ для наиболее популярных дистрибутивов Linux. В настоящее время поддерживается сборка пакетов для 8 дистрибутивов (причем для различных версий каждого из них) на 7 аппаратных платформах.
Давайте посмотрим - что же нам предлагает OBS и как с ним работать.
1.
2. Начало работы;
3. Процесс сборки;
4. Зависимости от других проектов;
5. Особенности сборки RPM и Deb.
Одной из примечательных особенностей мира Linux является наличие сотен различных дистрибутивов. Но для разработчиков приложений, желающих донести свои творения до как можно большего числа пользователей, такое разнообразие может стать проблемой: удостовериться, что приложение способно функционировать в большом количестве дистрибутивов - довольно непростая задача.
Типичным решением этой проблемы является делегирование всех забот разработчикам дистрибутивов - если им понравится ваше приложение, то они включат его в свои репозитории и будут сами заботиться о корректности его функционирования. Хорошо бы при этом попасть в основной репозиторий, а не в свалку всего и вся, которая в установленной системе по умолчанию может быть отключена. Однако популярности приложения надо сначала как-то добиться - а для этого неплохо бы завоевать аудиторию. К тому же, не факт, что разработчики дистрибутива не добавят в приложения чего-нибудь «от себя», что придется не совсем по нраву авторам оригинальной программы.
Конечно, можно просто раздавать всем исходный код и предлагать собирать программу самостоятельно, но далеко не каждый готов тратить время на сборку приложения лишь для того, чтобы попробовать его «вживую». Кроме того, такой подход не является дружественным по отношению к «обычным» пользователям десктопов.
В общем, и для пользователей, и для разработчиков ПО выгодна ситуация, когда разработчик сам создает и выкладывает готовые пакеты (RPM, Deb и прочие) для различных систем.
В идеале, разработчику для этого надо иметь под рукой установленные системы, для которых планируется собирать пакеты. Поэтому организация сборки для достаточно большого числа систем является достаточно трудоемкой и ресурсоемкой задачей. К счастью, существует готовый инструментарий, способный взять на себя существенную часть забот, - речь идет об openSUSE Build Service (OBS).
Следует помнить, что даже собрав самый лучший диструбутив в мире, у Вас может возникнуть вопрос, как сделать фото экрана (http://joxi.ru/lander/snyatie-skrinshotov). В Windows все просто, есть волшебная кнопка PrtSс и множество различных приложений... впрочем, в Linux все точно так же, только специально предназначенной для этого кнопки нет!
Изначально OBS предназначался для сборки дистрибутивов семейства SUSE (и используется для этой цели и поныне), однако со временем его функциональность существенно расширилась. Сейчас OBS - это система, позволяющая собирать RPM-и Deb-пакеты произвольных программ для наиболее популярных дистрибутивов Linux. В настоящее время поддерживается сборка пакетов для 8 дистрибутивов (причем для различных версий каждого из них) на 7 аппаратных платформах.
Давайте посмотрим - что же нам предлагает OBS и как с ним работать.