Features/Sugar Bundles: Difference between revisions
No edit summary |
|||
| (11 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
<noinclude>{{TOCright}} | <noinclude>{{TOCright}} | ||
[[Category:Feature|Sugar Bundles]] | |||
[[Category:Feature| | |||
<!-- You can add categories to tie features back to real deployments/schools requesting them, for example | <!-- You can add categories to tie features back to real deployments/schools requesting them, for example | ||
[[Category:Features requested by School Xyz|<Feature Name>]] (the |Feature Name option sorts the entry on the category page under the first letter of <Feature Name>). --> | [[Category:Features requested by School Xyz|<Feature Name>]] (the |Feature Name option sorts the entry on the category page under the first letter of <Feature Name>). --> | ||
| Line 41: | Line 40: | ||
* Journal entries with ''activity_id'', launch poper activity to open this object | * Journal entries with ''activity_id'', launch poper activity to open this object | ||
* activities, launch it with newly created object | * activities, launch it with newly created object | ||
=== Specification === | |||
Sugar bundle should have METADATA file in the top directory(or in <some_name>/ directory) of .xo bundle. This file is in [http://docs.python.org/library/configparser.html INI] format which describes how to setup bundle. | |||
METADATA file can have one or several sections(depends on content) that describe metadata fields of final entry(ies) in Journal and other data that could be useful for sugar(depends on content). | |||
{| border=1 cellpadding=3 style="border: 1px solid white; border-collapse: collapse; background: #e3e4e5;" | |||
|-style="background:#787878; color: white;" | |||
! Field | |||
! Flags | |||
! Notes | |||
|- | |||
| ''entry'' | |||
| optional<br>(depends on content) | |||
| defines access point within the bundle(e.g. index.html for library bundles) | |||
|- | |||
| ''mime_type'' | |||
| mandatory | |||
| define MIME type for final Journal entry | |||
|- | |||
| ''uid'' | |||
| ignored | |||
|- | |||
| ''*'' | |||
| optional | |||
| any [[Features/Plain_Query_Format#System_terms|system]], [[Features/Plain_Query_Format#Users_predefined_terms|users predefined]] and arbitrary Datastore field | |||
|- | |||
| ''*'' | |||
| optional | |||
| any tag, depends on content(inherited from activity bundles etc.) | |||
|- | |||
|} | |||
Any field in ''METADATA'' file can have ''_file'' suffix, in that case content of this field(substring w/o ''_file'' suffix) will be fetched from file inside of the bundle. | |||
== Benefit to Sugar == | == Benefit to Sugar == | ||
| Line 54: | Line 88: | ||
* sugar | * sugar | ||
* sugar-toolkit | * sugar-toolkit | ||
== UI Design == | |||
Nothing except related [[Features/Activity as a regular Journal Object]] feature. | |||
== How To Test == | == How To Test == | ||
| Line 79: | Line 117: | ||
* [http://wiki.laptop.org/go/Manifest_Specification#Contents_Manifests MANIFEST specification] | * [http://wiki.laptop.org/go/Manifest_Specification#Contents_Manifests MANIFEST specification] | ||
* Email threads | * Email threads | ||
** [http://thread.gmane.org/gmane.linux.laptop.olpc.sugar/19495/focus=19499 Sugar Bundles request for inclusion to 0.88] | |||
** [http://www.mail-archive.com/sugar-devel@lists.sugarlabs.org/msg10708.html Activity as a regular Journal Object request for inclusion to 0.88] | |||
** [http://www.mail-archive.com/sugar-devel@lists.sugarlabs.org/msg06874.html Object Bundles review and inclusion to 0.86/Feature_List request Object Bundles] | ** [http://www.mail-archive.com/sugar-devel@lists.sugarlabs.org/msg06874.html Object Bundles review and inclusion to 0.86/Feature_List request Object Bundles] | ||
** [http://www.mail-archive.com/sugar-devel@lists.sugarlabs.org/msg07572.html multiple activity versions installed simultaneously] | ** [http://www.mail-archive.com/sugar-devel@lists.sugarlabs.org/msg07572.html multiple activity versions installed simultaneously] | ||