Дмитрий Перлов opensuse build server: tips & tricks...
DESCRIPTION
Доклад Дмитрия Перлова на ноябрьской линуксовке MLUG 2013TRANSCRIPT
![Page 1: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/1.jpg)
openSUSE Build Server:tips & tricks кросс-дистрибутивной сборки
Дмитрий Перлов Для MLUG
![Page 2: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/2.jpg)
Поддерживаемые форматы
PKGBUILD
dsc (rules, control,changelog)
deb(Debian, *buntu)
spec
pkg.tar.xz(Arch Linux)
rpm (openSUSE,SLE, Fedora,
CentOS, RHEL, SL)
kiwi iso
![Page 3: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/3.jpg)
Что нам стоит дом построить
✔ архив с исходными кодами✔ spec✔ dsc, rules, control, changelog✔ PKGBUILD
![Page 4: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/4.jpg)
Гибкость spec
✔ %if 0%{?suse_version}✔ %if 0%{?fedora} <= 17✔ %ifarch %arm
✔ %define qtversion %(rpm -q libqt4 --qf='%{VERSION}\n' | awk -F. '{print $1 * 10000 + $2 * 100 + $3}')
%if %{qtversion} >= 40801
![Page 5: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/5.jpg)
Каждой цели по файлу
✔ gconfmm.dscдля всех версий Debian и *buntu, кроме нижеперечисленных
✔ gconfmm-Debian_7.0.dscдля Debian 7
✔ gconfmm-xUbuntu_12.04.dscдля *buntu 12.04
![Page 6: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/6.jpg)
_link
Пакет-ссылка = оригинальный пакет +разница из внесённых именений. При обновлении оринального пакета и приотсутствии конфликтов пакет-ссылкатакже обновится. NB! Сервисы ( _service ) в пакетах-ссылкахне запускаются автоматически.
![Page 7: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/7.jpg)
Полезные ресурсыhttp://en.opensuse.org/openSUSE:Build_Service_cross_distribution_howto
http://bit.ly/1cC2Hfz
http://en.opensuse.org/openSUSE:Build_Service_Tips_and_Tricks
http://en.opensuse.org/openSUSE:Build_Service_Debian_builds
http://bit.ly/1bF3HkX
http://bit.ly/1bF3RbV
![Page 8: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/8.jpg)
Спасибо за внимание!
Dmitriy Perlow aka DA(P).DarkneSS
https://build.opensuse.org/home?user=DarkSS
https://github.com/DAP-DarkneSS/obs
http://dap-darkness.livejournal.com/tag/obs
![Page 9: Дмитрий Перлов openSUSE Build Server: tips & tricks кросс-дистрибутивной сборки](https://reader034.vdocuments.net/reader034/viewer/2022052621/557ecb82d8b42a8e558b5054/html5/thumbnails/9.jpg)
Level up
На днях в OBS была реализована
автоматическая генерация _service-файла по(вероятно, «решение» проблемы скудной документации по данной теме)
адресу репозитория на GitHub и возможность
запуска сборки при обновлении git, для чего
используется сгенерированный ключ.(и можно не городить самописные скрипты)