School Network/Open Build Service: Difference between revisions

No edit summary
No edit summary
Line 1: Line 1:
== Summary ==
== Summary ==


This is a [http://git.sugarlabs.org/0sugar/build-service patched] Sugar Labs instance of [http://openbuildservice.org/ Open Build System] (OBS) that is intended to be a:
This is a [http://git.sugarlabs.org/0sugar/build-service patched] Sugar Labs instance of the [http://openbuildservice.org/ Open Build System] (OBS), which is intended to be a:


* Place to host sources and to make binaries, if there is need, for [[Platform_Team/Sweets|Sweets]].
* Place to host sources and to make binaries, if there is a need, for [[Platform_Team/Sweets|Sweets]] projects.
* Convenient instrument to create 3rd party repositories with native packages for all [[#Supported_platforms|supported]] GNU/Linux distributions.
* Convenient instrument to create 3rd party repositories with native packages for all [[#Supported_platforms|supported]] GNU/Linux distributions.


Line 51: Line 51:
* inherited from another project;
* inherited from another project;
* initial repositories, aka, downloaded-on-demand, that are associated with a particular GNU/Linux distribution release;
* initial repositories, aka, downloaded-on-demand, that are associated with a particular GNU/Linux distribution release;
* {{Code|sweets.sugarlabs.org}} repository should be present if Packages need to be distributed via Zero Install.
 
Note: The {{Code|sweets.sugarlabs.org}} repository should be present if Packages need to be distributed via Zero Install.


Every repository has supported architectures, e.g., {{Code|i586}} or {{Code|x86_64}}. There is also the special architecture, {{Code|0install}}, only for {{Code|sweets.sugarlabs.org}}.
Every repository has supported architectures, e.g., {{Code|i586}} or {{Code|x86_64}}. There is also the special architecture, {{Code|0install}}, only for {{Code|sweets.sugarlabs.org}}.
Line 81: Line 82:
* Click the ''Link sweet package'' link to add it to your project.
* Click the ''Link sweet package'' link to add it to your project.


The result will be regular OBS repositories with native packages. The only difference is that after installation on target systems, the content of these packages will be placed in the {{Code|/opt}} directory instead of the regular {{Code|/usr}}. The reason is that sweets are not intended to be placed directly in the {{Code|/usr}} directory as there might be file name collisions with existing files.
The result will be regular OBS repositories with native packages. The only difference is that after installation on target systems, the content of these packages will be placed in the {{Code|/opt}} directory instead of the regular {{Code|/usr}}. The reason for this is that sweets are not intended to be placed directly in the {{Code|/usr}} directory as there might be file name collisions with existing files.


=== Recipe based packages ===
=== Recipe based packages ===


These are regular OBS packages except that instead of regular spec files, e.g., RPM {{Code|.spec}}, they might be built based on [[Platform_Team/Recipe_Specification#.5BPackage.5D|sweets.recipe]] files. It is a kind of meta packaging, but restricted by design. In comparison with sweet packages, these packages will be placed in the {{Code|/usr}} directory.
These are regular OBS packages except that instead of regular spec files, e.g., RPM {{Code|.spec}}, they might be built based on [[Platform_Team/Recipe_Specification#.5BPackage.5D|sweets.recipe]] files. It is a kind of meta packaging, but restricted by design. As opposed to sweet packages, these packages will be placed in the {{Code|/usr}} directory.


=== Regular packages ===
=== Regular packages ===


It is exactly how OBS is originally designed to work.
Regular packages is exactly how OBS was originally designed to work.


== Policy ==
== Policy ==