Line 1: |
Line 1: |
| == Summary == | | == Summary == |
| | | |
− | This is a Sugar Labs instance of [http://openbuildservice.org/ Open Build System] (OBS) that is intended to be a: | + | This is [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: |
| | | |
| * The place where software creators need to upload (directly or indirectly) sources to spread this software among the community. | | * The place where software creators need to upload (directly or indirectly) sources to spread this software among the community. |
Line 8: |
Line 8: |
| * The convenient instrument to create, using already uploaded software, 3rd party repositories with native packages for all supported GNU/Linux distributions. | | * The convenient instrument to create, using already uploaded software, 3rd party repositories with native packages for all supported GNU/Linux distributions. |
| | | |
− | The original OBS was [http://git.sugarlabs.org/0sugar/build-service patched] to add Sweets support. | + | The Sweets [[Platform_Team/Guide/Sweets_Usage|Usage]] workflow doesn't include interacting people with OBS at all. Sweet project [[Platform_Team/Guide/Sweets_Packaging|developers]] will use clients like {{Code|sweets}} utility to interact with OBS. The full featured interaction with OBS (via [[#packages.sugarlabs.org|packages.sugarlabs.org]]) will require only if people need to create 3rd party repositories with native packages. |
| + | |
| + | For detailed information, read the original Open Build System [http://openbuildservice.org/documentation.html documentation]. |
| | | |
| == Sites == | | == Sites == |
Line 22: |
Line 24: |
| This is an original OBS Web client. It is intended to be used only by people who need to create native packages, i.e., not for most of Sugar developers. But, until creating more appropriate tool for Sugar needs, it is the only one Web client to manage already released software (the releasing is being processed by {{Code|sweets}} command). | | This is an original OBS Web client. It is intended to be used only by people who need to create native packages, i.e., not for most of Sugar developers. But, until creating more appropriate tool for Sugar needs, it is the only one Web client to manage already released software (the releasing is being processed by {{Code|sweets}} command). |
| | | |
− | == Introduction == | + | == Content == |
| + | |
| + | The contend on OBS might be several kinds: |
| + | |
| + | === Projects === |
| + | |
| + | Projects are directories of Packages and might be two types: |
| + | |
| + | * top level, regular projects, like {{Code|base}} or {{Code|sdk}}; |
| + | * user's home projects, like {{Code|home:''<user>''}}. |
| + | |
| + | === Packages === |
| + | |
| + | Packages represent particular software projects and contain all files associated with these projects, e.g., tarballs with sources. |
| + | |
| + | There are several types of package supported on OBS: |
| + | |
| + | * packages that represent sweets, |
| + | * native packages based on sweets, |
| + | * native packages with using sweet recipes as spec files, |
| + | * aliases, |
| + | * regular OBS packages. |
| + | |
| + | See [[#Usage|Usage]] section for more details. |
| + | |
| + | === Repositories === |
| + | |
| + | Every project has repositories to build its packages against. Repositories might be two types: |
| + | |
| + | * inherited from another project; |
| + | * initial repositories, aka downloaded-on-demand, that are associated with particular GNU/Linux distribution release; |
| + | * {{Code|sweets.sugarlabs.org}} repository should 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 special architecture, {{Code|0install}}, only for {{Code|sweets.sugarlabs.org}}. |
| | | |
− | For detailed information, read the original Open Build System [http://openbuildservice.org/documentation.html documentation].
| + | == Supported platforms == |
| + | |
| + | There is special project, named [https://packages.sugarlabs.org/project/repositories?project=base base], it contains all GNU/Linux distributions that are supported on OBS. All other projects need to inherit repositories from this project. |
| + | |
| + | == Usage == |
| | | |
− | The content entities in OBS are:
| + | === Sweets === |
| | | |
− | * '''Projects''', i.e., directories of Packages;
| + | === Sweet packages === |
− | * '''Packages''', that represent particular software projects.
| |
| | | |
− | Projects might be two types:
| + | === Recipe based packages === |
| | | |
− | * top level, regular projects, like {{Code|base}} or {{Code|sdk}};
| + | === Aliases === |
− | * user's home projects, like {{Code|~user/my-sugar-experiment}}.
| |
| | | |
− | Packages contain all files associated with particular software projects, e.g., tarballs with sweet sources for all versions that need to be shared.
| + | === Regular packages === |
| | | |
| == Policy == | | == Policy == |