Platform Team/Guide/Sweets Usage
This is a trying to replace jhbuild for core development process. It is inspired by evidence and simplicity of activity development workflow.
Requirements
- Install
sweets
command. - Attach Platform and Core Bazaar repositories.
- Download Sugar from Bazaar to install all sugar dependencies and sugar itself (to use by default):
sweets download sugar/emulator
Usage
Clone any glucose projects to ~/sweets
or ~/Activities
directory. While running sugar, these cloned projects will be used instead of installed packages.
To run sugar emulator:
sweets sugar/emulator
To run sugar session, instead of sugar
command, use:
sweets sugar
While launching, sweets
will check if cloned projects were built and run building otherwise. To rerun building, being within particular cloned repository, use:
sweets build -f
To rebuild with reconfiguring:
sweets build -ff
You can change python code in cloned projects without a need to run build command (the same .py files are used to run sugar, see implement option in [Build] section in recipe file for particular project), of course sugar itself should be restarted to take into account new .py code.
Current limitations
Most of current restrictions are conditioned by not using 0install and will be fixed while 0.92 sucrose release cycle. They are:
- sugar project should be cloned in any case,
- glucose needs to be patched. It is not in master, so use bazaar branches[3] that are synced with the trunk:
- dependency solving is inefficient and temporary, it will be replaced by invoking 0install in further implementation,
- build time dependencies need to be installed manually:
# fedora based systems yum install autoconf automake libtool make intltool pygtk2-devel gtk2-devel GConf2-devel gnome-common icon-slicer icon-naming-utils xorg-x11-apps libSM-devel alsa-lib-devel # debian based systems apt-get install build-essential intltool python-gtk2-dev libgtk2.0-dev libgconf2-dev icon-slicer icon-naming-utils x11-apps libsm-dev libasound2-dev libtool gnome-common