Activity Team/Obsolete/Native Packages

From Sugar Labs
Jump to navigation Jump to search



GNU/Linux distributions

GNU/Linux distributions integration is not intended to follow all requirements for native packages and in most cases cannot be reused for distribution official repositories. There are only three major ideas behind distribution support:

  • run Zero package in particular GNU/Linux distribution using native packaging system
  • do not interfere with official packages
  • make packages reusable for 0install deployment model

Zero Sugar is designed to support primarily OBS workflow. Each OBS package is an all-sufficient Zero Sugar entity with one exception, it knows nothing about 0install infrastructure. It is possible to follow regular OBS procedures for Zero packages e.g. creating links and branching them.

Within distributions that OBS supports, Zero Sugar could be considered as meta packaging tool.

Each Zero package consist of:

  • <package-name>.info Zero Sugar spec file
  • <package-name>.changes regular OBS changes file
  • revision file with revision number of current version
  • <package-name>.spec stub spec file for rpm based distributions
  • stub spec files for deb based distributions
  • tarballs with sources

RPM support

Each Zero package has rpm.spec file to support building package on all RPM based distributions that OBS supports. File contains only one line %zsugar_spec to invoke zsugar_spec macros which generates spec file content on demand according to current 0sugar.info and revision files content.