openSUSE → openSUSE Build Service
Для начала небольшое вступление.
Являясь закоренелым пользователем арча вдруг решил поставить openSUSE.
Чем же меня заинтересовал этот дистрибутив? Заинтересовал он, а именно его разработчики отношением к пользователю и количеством нужных и качественных сервисов: + 1-click install,,,.
Признайтесь, такого больше не у кого нет.
Сегодня, как вы уже догадались, мы разберем первый сервис — OBS.
Если кто пользовался арчем, то он знает что такое .
По сути OBS это тот же AUR, но он еще сам собираем бинарные версии под множество дистрибутивов.
Как и во всех других сервисах Novell вход происходит через Novell account.
Он же уже у вас есть? Нет? Не беда — .
Собирать пакеты можно разными способами, сегодня разберем один из них — RPM spec.
Вот пример spec'a с комментариями(кстати, я первый кто этот пакет добавил в OBS, так что spec. эксклюзивный… шучу, ведь spec можно увидеть на странице пакета):
spec. мы написали, а то нам с ним делать?
Можно собрать на локальной машине rpmbuild -bb nitrogen.spec.
А можно и OBS, вот об этом поподробнее.
С активацией аккаунта на OBS нам дают домашний проект, вот там мы и будем собирать пакеты.
Нажимаем на cсылочку [Add Package].
Записываем данные о пакета, как мы делали это в спеке.
Теперь мы на странице пакета, для начала справа добавляем дистрибутивы для сборки.
Теперь можно заполнить URL проекта, теги, но самое главное это файлы: добавляем в файлы на spec. файл м архив с исходниками. Для уверенности жмакаем [Trigger Rebuild] и ждем, через какое-то время пакет будет собран и выставлен на всеобщее обозрение.
На этом все, удачной компиляции!
ЗЫ прошу не разводить холивар насчет дистрибутивов.
Являясь закоренелым пользователем арча вдруг решил поставить openSUSE.
Чем же меня заинтересовал этот дистрибутив? Заинтересовал он, а именно его разработчики отношением к пользователю и количеством нужных и качественных сервисов: + 1-click install,,,.
Признайтесь, такого больше не у кого нет.
Сегодня, как вы уже догадались, мы разберем первый сервис — OBS.
Если кто пользовался арчем, то он знает что такое .
По сути OBS это тот же AUR, но он еще сам собираем бинарные версии под множество дистрибутивов.
Как и во всех других сервисах Novell вход происходит через Novell account.
Он же уже у вас есть? Нет? Не беда — .
Собирать пакеты можно разными способами, сегодня разберем один из них — RPM spec.
Вот пример spec'a с комментариями(кстати, я первый кто этот пакет добавил в OBS, так что spec. эксклюзивный… шучу, ведь spec можно увидеть на странице пакета):
#
# rpm spec for nitrogen
#
#Общая информация о пакете,тут думаю все понятно по названиям
Summary: Nitrogen is a background browser and setter for X windows.
Name: nitrogen
Version: 1.4
Release: 0
Epoch: 0
License: GPL
#группа пакета,т.е. то место где можно будет его найти в менеджере пакетов
#найти группы можно тут - http://en.opensuse.org/SUSE_Package_Conventions/RPM_Groups
Group: Utilities/System
#Вписываем свои имя в историю :)
Packager: Adrov Igor <nucleartux@gmail.com>
#домашняя страница проекта
URL: http://projects.l3ib.org/nitrogen/
#путь к файлу
Source: http://projects.l3ib.org/nitrogen/files/nitrogen-1.4.tar.gz
#папочка,в которой наш проект будет собиратся,почти всегда это:
#BuildRoot: %{_tmppath}/%{name}-%{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
#зависимости для сборки
BuildRequires: gtkmm2-devel gtk2 make gcc-c++
#и для запуска
Requires: gtkmm2 gtk2
#детальное описание
%description
Nitrogen is a background browser and setter for X windows. It is written in C++ using the gtkmm toolkit. It can be used in two modes: browser and recall. Nitrogen has been in development for over 2 years, due to real life and laziness. For more info, check out the features section.
#подготовка пакета,тут будет выполнена разархивация и т.п.
%prep
#копирование файлов,принимает параметр -n name,где name - имя папки проекта в архиве
%setup -q
#сборка,конфигурирование
%build
%configure
#устанавливаем и очищаем временную папку
%install
rm -rf "$RPM_BUILD_ROOT"
%makeinstall
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
%clean
rm -rf "$RPM_BUILD_ROOT"
#очень важный момент - каталог файлов,тут нужно для каждого проекта смотреть индивидуально
%files
%defattr(-,root,root)
%doc AUTHORS ChangeLog NEWS README
%doc %{_mandir}/*/*
%{_bindir}/*
%_datadir/icons/hicolor/128x128/apps/%{name}.png
%_datadir/icons/hicolor/16x16/apps/%{name}.png
%_datadir/icons/hicolor/22x22/apps/%{name}.png
%_datadir/icons/hicolor/32x32/apps/%{name}.png
%_datadir/icons/hicolor/48x48/apps/%{name}.png
%_datadir/icons/hicolor/16x16/actions/wallpaper-centered.png
%_datadir/icons/hicolor/16x16/actions/wallpaper-scaled.png
%_datadir/icons/hicolor/16x16/actions/wallpaper-tiled.png
%_datadir/icons/hicolor/16x16/actions/wallpaper-zoomed.png
%_datadir/icons/hicolor/16x16/devices/video-display.png
%_datadir/icons/hicolor/16x16/mimetypes/image-x-generic.png
#ченейджлог он и в африке ченейджлог
%changelog
* Wed Jul 18 2009 Adrov Igor <nucleartux@gmail.com> 0:1.4-0
- initial release
###
### eof
###
spec. мы написали, а то нам с ним делать?
Можно собрать на локальной машине rpmbuild -bb nitrogen.spec.
А можно и OBS, вот об этом поподробнее.
С активацией аккаунта на OBS нам дают домашний проект, вот там мы и будем собирать пакеты.
Нажимаем на cсылочку [Add Package].
Записываем данные о пакета, как мы делали это в спеке.
Теперь мы на странице пакета, для начала справа добавляем дистрибутивы для сборки.
Теперь можно заполнить URL проекта, теги, но самое главное это файлы: добавляем в файлы на spec. файл м архив с исходниками. Для уверенности жмакаем [Trigger Rebuild] и ждем, через какое-то время пакет будет собран и выставлен на всеобщее обозрение.
На этом все, удачной компиляции!
ЗЫ прошу не разводить холивар насчет дистрибутивов.
- +3
- nuclear
- 17 июля 2009, 09:31
Спасибо