diff options
Diffstat (limited to 'docs/registry')
-rw-r--r-- | docs/registry | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/docs/registry b/docs/registry new file mode 100644 index 0000000..29d7b0d --- /dev/null +++ b/docs/registry @@ -0,0 +1,36 @@ +== Problem: Bundle Registry & Installer == #2009 + + Installing activities is a privileged operation, so Rainbow needs to take it + over from Sugar. However, Sugar still needs some information about what + activities are installed. What information does it need? + +Situation: + + Presently, several Sugar components rely on direct access to bundles. These + components include: + + * shell/view/clipboardmenu.py, by Tomeu, which launches activities by + hitting activityfactory.create_with_uri and by installing the activity + bundle directly if necessary. + + * bin/sugar-install-bundle, by Tomeu, which is a shell-script wrapper + around Bundle.install() + + * shell/model/homeactivity.py, by Marco, which uses the bundle to get an + activity icon. + + * shell/shellservice.py, by Tomeu and Marco, which is the main DBus + interface to the bundle registry. + + * sugar/activity/activityfactoryservice.py, which does low-level things + with the bundle for the activity it is eventually going to instantiate. + + * sugar/graphics/objectchooser.py, which uses bundles to get icons. + +Plan: + + Need to have a chat with Marco and Tomeu about how to reconcile Sugar's needs + with Rainbow's. + +Followup: + |