Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

Step-by-step guide


Content by Label
cqllabel = "kb-how-to-article" and type = "page" and space = "SYS"




Linaro Open Build Service

To build packages for generic Linux distributions (Debian, Ubuntu, Fedora, CentOS, OpenSUSE) Linaro is now moving to Open Build Service created by SuSE. Typically it's known as OBS.

Building to overlays from

In case you have used for building Debian or rpm packages, using the build-package and build-rpm jobs, similar OBS jobs have been added. For DEB packages use:

Similar to the existing build-package job. Previously you would use parameters "linaro-overlay" and "stretch". In OBS you would target "linaro-overlay-stretch" to get your packages to

And for RPM packages use:

To observe and follow the build results, you can go to and select your recently submitted package from the "latest updates tag". Alternatively you can construct the URL to your build with

Using OBS directly

If you want PPA style personal or project specific repositories, you will need to create a OBS account.

Image Added

  • Choose the project to build packages against in your home project:
    1. Select "home project" from top right

Image Added

  1. Select repositories and click on "add repository"

Image Added

  1. Type linaro-overlay-stretch into project
  2. Select only the architectures you need from Armv7hl, aarch64 and x64_64.

Image Added

  1. Click on add repository
  2. Observe the builds getting scheduled
  • Install "Open Build Service commander", aka "osc"
    • apt install osc
  • set skeleton $HOME/.oscrc:

apiurl =
use_keyring = 1
  • run "osc ls" and enter same firstname.lastname and your Linaro password.
    • Notice that if you don't use use gnome or kde, you will need to remove the "use_keyring" bit or find your own way to provide a safe keyring for your password.
  • check out your home project:

osc co home:firstname.lastname
  • Include your first package:

cd home:firstname.lastname
mkdir hello
cd hello
apt-get source -d hello
osc add .
osc ci -m "initial import"
  • Now back in the web browser, observe the package hello being scheduled for builds

Image Added

  • If you want submit packages to OBS via jenkins, you need to add user "jenkins" to the maintainers of your project.
  • You can create subprojects under your home project to have multiple repos for different uses
  • If you need new toplevel project, submit a ticket at

Building software locally with OSC

Sometimes it's more convinient to run builds locally before uploading to obs builders. The osc tool allows with with "osc build" command. In a typical workflow, you have an unpacked source tree. Update debian/changelog if needed and store source package

dpkg-buildpackage -rfakeroot -S -d
cd ..

If you changed package version, remove the old .dsc file, and add the new one

osc rm packagename_oldversion.dsc
osc add packagename_newversion.dsc
osc build -j`nproc`

Once you pass a successful build, you commit the changes to push them to server

osc commit

Using repositories created by OBS

The built packages get uploaded to

Install the Linaro repository key from:

wget -O -|sudo apt-key add - 

To add an Debian repository, create /etc/apt/sources.list.d/linaro-obs.list

deb ./

Home projects are under: