Wednesday, December 8, 2010

A GIST ON BULDING MEEGO SOURCE USING OPEN BUILD SERVICE

Open Build Service (OBS)
       The OBS or Open Build Service is a build farm supplied to the community by Novell. It is used to build OpenSUSE and is going to be used to build MeeGo packages as well. The OBS will be used as a separate instance inside the MeeGo infrastructure. That is to say, there will be a separately maintained OBS dedicated to building MeeGo rpms.In general OBS is  an open and complete distribution development platform. It provides the infrastructure to easily create and release open source software for openSUSE and other Linux distributions on different hardware architectures. The openSUSE instance currently has over 20.000 users that are building about 100.000 packages for 21 base distributions on 6 architectures.


OBS and MeeGo:     
      The heart of the Build Infrastructure of MeeGo is the upstream project openSUSE Build Service (OBS). It is an automated system used for building software packages, collaboration of developers, release management, maintenance, and much more. Moblin started using OBS in June 2008 and released Moblin 2.0 and Moblin 2.1, as well as other derivative releases. OBS has proven to be a very reliable infrastructure that is quickly evolving. It is rich with features for distribution building and maintenance. The Linux Foundation is dedicated to the further development of OBS and has a team, including two full-time OBS maintainers, contributing to its development and its use by MeeGo and the Ecosystem.MeeGo currently uses version 2.0.x of OBS and will soon switch to version 2.1

There are 3 OBS instances that are relevant to MeeGo
  • MeeGo core : essentially, if you're a core package maintainer/developer you get an account here
  • MeeGo community : for anyone to build applications or libraries against MeeGo - anyone with a meego.com account can use this
  • openSuse : this is not for building *against* MeeGo... but we need to support MeeGo tools on many platforms and some of those get built on the openSuse OBS .
 Whats the need of OBS in MeeGo:
  1. It's a build system. You put source on it and say "use this repository" and it builds a minimal SDK-like chroot using the deb/rpms it finds in that repository
  2. It has packages - a package corresponds to a tarball and a spec/dsc
  3. It has projects - a project is like a directory with packages
  4. When a package is built it is "published" from the project where it was uploaded into a corresponding repository (which can be used to build other projects)
  5. The repositories can also be used by devices to download binary packages. 

No comments:

Post a Comment