[sugar] Activity bundle tutorial

Dan Williams dcbw
Fri Feb 9 07:56:14 EST 2007


On Fri, 2007-02-09 at 03:22 -0800, Don Hopkins wrote:
> Thanks a lot for writing the activity tutorial, and for answering 
> questions about them!
> 
> I have some questions about activities, and would appreciate anything 
> tips you can give me, please:
> 
> What's a good example of an activity that starts and manages another X11 
> process, like Squeak?

Not really, because people who write those activities usually don't take
the time to put in real D-Bus support, which makes it all a hack.  You
then need the shim layer, which might talk to the real activity over a
unix domain socket, but that's just silly.  It's quite a bit easier to
just add the D-Bus support.

> What are the issues surrounding activities that are implemented as 
> external processes, as opposed to activities implemented in Python?

You need D-Bus support.  There's nothing preventing you from writing an
activity in any of the languages/libraries that D-Bus has bindings for
(C, C++, C#, Python, Qt, GLib, and more).  It just happens that in
Python, it's _so_ easy to write D-Bus enabled apps.

> Is it possible to program activities in Python that run in the Sugar 
> "desktop manager" process (or whatever it's called), or do they run as 
> separate Python processes?

No, not at this time.

> I suppose that would make it possible to quickly start light weight 
> activities, but it would not firewall them from each other and restrict 
> their privileges... How's that intended to work?

It's not intended to work at this time.

> Can you make light weight (to use an ancient term) "desk accessory" 
> sub-activities that are built into the Sugar manager, that you can pop 
> up and use quickly while in other activities? (Kinda like the chat 
> window?) Are those considered activities, or are they called something 
> else?

There aren't currently plans for this, but it's something we've talked
about on and off for a while.  We haven't yet decided whether to support
these or not.

> I'm interested to know what ways there are to hook into the Sugar user 
> interface, and plug in various kinds of user interface thingamabobs.

There aren't any ways right now.  That's not to say there won't be a way
in the future, but I'd caution you that this breaks trust and security
models in a few ways.

In any case, what type of applets were you thinking about?  There may be
alternate ways of achieving the functionality that you'd like to have.

Cheers,
Dan




More information about the Sugar-devel mailing list