Sugar Network/Recipe Specification: Difference between revisions
No edit summary |
|||
| Line 38: | Line 38: | ||
* packaged | * packaged | ||
=== [ | === [Component] === | ||
This is a required section (but | This is a required section (but see also [[#Presets|presents]]). It describes the main recipe component. | ||
'''slug''' = <package-slug> | '''slug''' = <package-slug> | ||
| Line 141: | Line 141: | ||
'''requires''' = <dependency-name> [(=|>=|<) <version>] [; ...] | '''requires''' = <dependency-name> [(=|>=|<) <version>] [; ...] | ||
What [[Activity Team/Zero Sugar/Packaging Guide#Package_names|dependencies]] should be present before building the package from sources, in addition to ''requires'' values from the ''[ | What [[Activity Team/Zero Sugar/Packaging Guide#Package_names|dependencies]] should be present before building the package from sources, in addition to ''requires'' values from the ''[Component]'' sections. | ||
'''configure''' = <shell-command> | '''configure''' = <shell-command> | ||
| Line 182: | Line 182: | ||
== Presets == | == Presets == | ||
Instead of | Instead of component sections, special sections might be used. These sections extend standard ''[Component]'' options and might add special meaning of existed ones, see description for particular preset. | ||
=== [Activity] === | === [Activity] === | ||
| Line 188: | Line 188: | ||
This preset should be present only for activities (or for applications that could be used also as Activities, e.g., GCompris is a regular application but could be launched in Sugar mode). | This preset should be present only for activities (or for applications that could be used also as Activities, e.g., GCompris is a regular application but could be launched in Sugar mode). | ||
Preset uses the same options as [ | Preset uses the same options as ''[Component]'' with these additions: | ||
'''activity_version''' | '''activity_version''' | ||
| Line 200: | Line 200: | ||
'''icon''' = <icon-file-name-wo-suffix> | '''icon''' = <icon-file-name-wo-suffix> | ||
Behaviour from activity.info is supported (value should not have ".svg" suffix, and icon file could be found only in activity subdirectory) but deprecated. Regular ''icon'' behaviour from [ | Behaviour from activity.info is supported (value should not have ".svg" suffix, and icon file could be found only in activity subdirectory) but deprecated. Regular ''icon'' behaviour from ''[Component]'' section should be used instead. | ||
'''exec''' = <shell-command> | '''exec''' = <shell-command> | ||
| Line 258: | Line 258: | ||
=== Python library === | === Python library === | ||
A python-based library that could be used as is, or as an activity dependency. | |||
[ | [Component] | ||
slug = journal | slug = journal | ||
summary = Hight level library to create your own Journal-like activity | summary = Hight level library to create your own Journal-like activity | ||
| Line 270: | Line 270: | ||
binding = PYTHONPATH | binding = PYTHONPATH | ||
=== | === C-based library with Python binding === | ||
[DEFAULT] | [DEFAULT] | ||
slug = | slug = polyol | ||
summary = | summary = Intermediate level GObject based libraries for Sugar | ||
description = Polyol is a set of libraries that are written in Vala. | |||
Libraries are intended to provide high-level C API to basic Sugar | |||
features including Gtk based user interface. Applications that are | |||
linked against Polyol, interact with sugar processes | |||
(like shell, datastore, etc.) via DBus. | |||
license = LGPLv3+ | license = LGPLv3+ | ||
homepage = http://wiki.sugarlabs.org/go/Activity_Team/ | homepage = http://wiki.sugarlabs.org/go/Activity_Team/Polyol | ||
version = | |||
age = 0 | |||
version = 1 | |||
stability = testing | stability = testing | ||
[ | [Component] | ||
requires = glib; gconf; libgee >= 0.5 | requires = glib; gconf; libgee >= 0.5 | ||
gtk+ >= 2.12; pango >= 1.20; librsvg; %(slug)s/env | |||
binding = LD_LIBRARY_PATH lib | binding = LD_LIBRARY_PATH lib | ||
PKG_CONFIG_PATH lib/pkgconfig | PKG_CONFIG_PATH lib/pkgconfig | ||
VAPIDIR share/vala/vapi | VAPIDIR share/vala/vapi | ||
exclude = | exclude = python/** | ||
arch = any | |||
arch = | |||
[ | [Component/python] | ||
requires = python; %(slug)s | requires = python; pygtk; pycairo; %(slug)s | ||
slots[python] = 2.5; 2.6; 2.7; 3.0 | |||
binding = PYTHONPATH python | binding = PYTHONPATH python | ||
include = | include = python/toolkit/** | ||
arch = | arch = any | ||
[Build] | [Build] | ||
requires = | requires = pkg-config; cmake; make; gcc-c | ||
configure = cmake -D CMAKE_INSTALL_PREFIX=%(PREFIX)s | |||
-D PYTHON_SITEDIR=%(PREFIX)s/python | |||
- | -D COMPONENTS="collab;ds;env;gui;shell;toolkit" | ||
- | -D BINDING=python | ||
- | -D CMAKE_C_FLAGS:STRING="%(CFLAGS)s" | ||
- | %(SRCDIR)s | ||
%(SRCDIR)s | make = make | ||
install = make DESTDIR=%(DISTDIR)s install | install = make DESTDIR=%(DISTDIR)s install | ||