After I started playing around with the OpenSuse Build Service a bit today I got a first impression about difficulties and problems, but also about the possibilities.
It is working. I was able to build a rsibreak package for both OpenSuse and for Fedora. Both with a single spec file.
However, I did have to add several if-OpenSuse-then and if-Fedora-then checks. This was mainly due to different package namings (some build requires), different handling of desktop files (desktop-file-install or suse_update_desktop_file) and using different paths for the prefix: Fedora uses /usr, OpenSuse uses /opt/kde3.
But there is nothing which makes building impossible – indeed, it simply shows where the distributions should work together more closely because diversity doesn’t make much sense in that areas. A good point here: it looks like that OpenSuse will switch to /usr for KDE 4. Also, some problems can be solved by the intelligent usage of variables.
Having a look at another Linux build system can also help to learn new things – I wasn’t for example aware of a possible security problem in my spec files. I was given to know that it might influence Fedora also.
However, while I’m still toying around with a simple application others already used the Build Service for much larger projects in real life: Amilcar provides kdevelop packages for all supported distributions. Also, mrdocs uses OBS to provide Scribus packages for all supported rpm based distributions.
Also I was told in IRC that some people think about building KDE 4 packages for all distributions via the OBS.
So judging form the first look there is – of course, it is Alpha – lots of space for improvements and automatic tools for example to overcome the little differences of the distributions – but it already works in a successful way – and it is really fun to play with.