Home Business IT Open Source Open Build Service sets openSUSE apart

Open Build Service sets openSUSE apart

Given that there are more than 300 Linux distributions, all of which use a finite number of open source packages, it is difficult to point to any one aspect of a distribution that can truly be called unique.

But in the case of openSUSE, the community distribution set up by the SUSE Linux company, one feature is indeed unique: the Open Build Service (OBS) that allows anyone to build packages for any distribution, any supported architecture, yielding binaries and even installation media. Its reference implementation is here.

The OBS came about as the result of an idea that Adrian Schröter, who has been with SUSE with 1999 and is now project manager of the build service, had when he was made project manager of openSUSE soon after the community distribution was set up in 2005.

In Schröter's own words, "I had the right problem at the right time which I wanted to solve." The problem? He had something in the region of 400 packages to maintain and wanted to lessen his own workload.

"The idea was for the author of a package to do the maintenance," Schröter (above) told iTWire on the sidelines of SUSECon, the second annual conference of the SUSE Linux company in Orlando, Florida. "They would be unlikely to do it for just one distro; the build service enables them to do it for all distros, hence they have an incentive to do so."

The OBS itself is a web-based facility that supplies the space and processing power and, depending on the projects which have been set up, the source for many of the packages that developers may want to compile for their own, and other, distributions.

Schröter says SUSE had a similar service before OBS was set up in 2006 - but it could only be used for internal operations as it needed a local login. The OBS builds from source and one can obtain binaries for a single use. Else one can create a repository within the build service for multiple downloads.

"Everything is organised into projects," Schröter explained. "You can build packages for other distributions, you can search for packages or you can upload your own source. There are multiple kernel projects against which you can build your packages."

The OBS can be used on the web or else the software to set up one's own instance can be downloaded and installed elsewhere.

This can lead to abuse of the system as well. Schröter says that "if we see packages that do not comply with our policy, then we remove them. It has happened many times". Packages have to necessarily have licences that allow them to be freely distributed.

How does the service benefit openSUSE? Schröter says it provides a system where developers can communicate and co-operate. "If we can convince the author of a package to build on the OBS, then it increases the number of packages available to us. The author would know best how to package his/her own software, hence it increases quality and also integrity of the package."

He pointed to the example of the C compiler, gcc, which is often updated. If someone were to update their systems and encounter an updated compiler, he or she could well end up breaking those systems. Using the OBS, one can test how packages build and see how things are progressing; this is possible because one can build an entire distribution in less than a day.

"We use it for openSUSE and, internally, for SUSE," says Schröter who works for both. "It tends to define workflow as well, and review mechanisms are present. Mistakes, for example things like licence compliance, are spotted earlier, much before the QA stage."

To run the OBS, six core servers are needed and about 400 build instances. Most of these cater to the x86_64 architecture but one can also build for ARM and PowerPC. Initially, the service, which began in 2006, had very few packages all of which were for openSUSE.

The OBS is now integrated with the code repository, github. It is run by a core team of three people but there is a much larger virtual team. Additionally, there are contributions from partners who also use the service.

Schröter has a number of things planned to improve the service. For one, he wants to clean up the code to make it faster, and improve the integration with git, the source code management system that is used by many projects, including the Linux kernel.

He also wants better support for QA so that breakages can be detected earlier and more test suites to check all packages.

The writer is attending SUSECon as a guest of SUSE.


Did you know: Key business communication services may not work on the NBN?

Would your office survive without a phone, fax or email?

Avoid disruption and despair for your business.

Learn the NBN tricks and traps with your FREE 10-page NBN Business Survival Guide

The NBN Business Survival Guide answers your key questions:

· When can I get NBN?
· Will my business phones work?
· Will fax & EFTPOS be affected?
· How much will NBN cost?
· When should I start preparing?


Sam Varghese

website statistics

A professional journalist with decades of experience, Sam for nine years used DOS and then Windows, which led him to start experimenting with GNU/Linux in 1998. Since then he has written widely about the use of both free and open source software, and the people behind the code. His personal blog is titled Irregular Expression.