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 Ready for Release Manager]]
[[Category:Feature|Sugar Bundles]]
[[Category:Feature|<Feature Name>]]
<!-- 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]