Activity Team

From Sugar Labs
Revision as of 01:04, 9 October 2010 by TimClicks (talk | contribs) (→‎General overview of git: Anish Mangal explains the [ git workflow] on the Sugar development mailing list)
Jump to navigation Jump to search

Team Home   ·   Join   ·   Contacts   ·   Resources   ·   FAQ   ·   Roadmap   ·   To Do   ·   Meetings


The Activity Team develops and maintains many of the activities available for Sugar. We also encourage independent developers to write activities, and we support them in their efforts. Our goal is to ensure that Sugar provides a complete set of high quality educational, collaborative, constructivist activities.

Our responsibilities

  1. Develop and maintain the ecosystem of Sugar activities.
  2. Recruit and mentor activity developers from the community.
  3. Collect, document and organize new activity and activity feature ideas from the Education Team, deployments and community.
  4. Work with the Development Team and the Infrastructure Team to ensure activity developers are well supported.
  5. Gather feedback with the Deployment Team about how Sugar activities are doing in the field.

Tips for Activity Developers

Ask your 'newbie' question on-line

Join IRC channel #sugar-newbies (e.g. via web client) and ask your question about activity, or sugar core, development process. Also browse chat logs.

Creating a new activity

See Activity Team Resources.

Problems logging in to Gitorious?

Gitorious users are sometimes having their IP addresses incorrectly blacklisted by OSU-OSL, the organization that hosts If your SSH key is rejected with the error "Access denied or bad repository path", please open a ticket by emailing

This has happened to a number of activity authors and we are working on getting it resolved.

Move an activity

We need help moving activities over to Sugar Labs from OLPC's servers. This is a great way to get started helping out the Activity Team. See Activity Team/How_to_migrate_from_OLPC for instructions, and Activity Team/Activity Status for the list of activities that need to be moved.

While moving activities, it would be great to check that the .pot files are up to date and the MANIFEST is correct. This will really help out the distro packagers.

Cross-platform compatibility

As Sugar is integrated into more distros and the hardware base expands, it is important to keep Activity developers informed of any issues they need be aware of. For example, when Sugar was only expected to run on the XO-1 laptop, it was safe to assume that the display was always 1200x900.

The Compatibility Tips page is a place to accumulate tips.

Modify Activities

A guide has been written describing how to make simple modifications to popular Sugar activities. Examples include adding sounds to TamTam, blocks to TurtleArt, buttons to Calculate, etc.

General overview of git

Once you have migrated your project, you may have some of questions regarding how Sugar Labs uses git.

Additional background on git can be found at these locations:


Please see the Activity Test-table page for tester information.

Background information

Sugar Activities

There is an Activities page where we highlight Sugar activities in the wiki. (We need to discuss how best to manage the content of this page as well as how to manage the activity-specific sub-pages.)

Sugar Human Interface Guidelines

The Sugar Human Interface Guidelines content has also been migrated to Sugar Labs. This guide is a critical resource when designing activities.

An Activity HIG discussion

Sugar Almanac

The Sugar Almanac content has been migrated to Sugar Labs. It's a great, quick reference when building python Activities.

The Sugar Activity Library is our user-facing portal for Sugar activities. The site uses the back-end Mozilla built for Firefox and Thunderbird extensions at, called Remora. To help out, check out Activity Library.

sugar-widgets library

See Development Team/sugar-port.

sugar-sprites library

See Activity Team/Sugar-sprites


Activity Team users on

Fake emails to identify users:

  • activities that are supported by Activity Team
  • trash@dev.null activities to remove

There is a handy utility that is a standard part of Sugar Activity bundles, You should use it to create and update POT files, generate a MANIFEST file and update locale files, and create .xo and .tar files for distribution.

./ genpot
./ fix_manifest
./ dist_xo
./ dist_source

Packaging activities discussion

We are currently discussing how to package activities in the future, in order to support all distributions. Please add your comments to the following pages.

  • Packaging
    • should we remove "Activities" section from that page; all issues where moved to Activity_Status page alsroot 10:33, 16 January 2009 (UTC)
  • Packaging ideas

The Sugar Control Panel

While not strictly in the realm of Activities, it may be useful on occasion to add a section to the Sugar Control Panel. Things to keep in mind.

A typical update cycle

Anyone can contribute a patch to a Sugar Activity. The typical work cycle involves an interaction with the activity (project) maintainer as follows:

  1. make a clone (anyone)
  2. make your changes (anyone)
  3. mail your patch to sugar_devel (anyone)
  4. make changes as per suggestions by the project maintainer and developer community (anyone)
  5. push your changes (anyone)
  6. request a merge (anyone)
  7. write release notes (anyone)
  8. tag the new version in git (project maintainer)
  9. create the .xo and .tar files (project maintainer)
  10. upload .tar to (project maintainer)
  11. upload .xo to (project maintainer)
  12. update wiki documentation (anyone)

Project Ideas

The Activity Team always needs project ideas and suggestions. Post your ideas to Activity Team/Project Ideas.

If you see something here you would like to help with, please contact us.

Wade 17:19, 13 January 2009 (UTC)

Additional resources

Additional resources may be found here.


Please check /Meetings for meeting schedules/logs.