[sugar] status of startup speedup

Michael Stone michael at laptop.org
Fri Feb 8 14:23:50 EST 2008


Tomeu,

> The only remaining issue is that activities cannot update their journal
> entries. They are able to create the entries in the datastore, but the
> second call to the DS service fails. 

Please publish the traceback so that I can help you debug the situation.

Next, some notes and some questions about your patch:

* In the second hunk, I'd like to replace the big os.environ block with
  something like:

    for key in (...):
        os.environ[key] = env[key]

  That being said, is there a good reason for selectively using values from
  os.environ instead of using everything?

* By convention, the first argument to log() should be a format string.

* I think your patch breaks rainbow's strace support. Strace support can
  probably be fixed by forking a second time, then instructing strace to trace
  to the pid of the parent; however, this will lead to interleaved writes to
  the shared file descriptors.

* Why is it necessary to import gtk twice?

* I am extremely uncomfortable importing all of telepathy, sugar, dbus, and gtk
  into the main rainbow process before it has dropped privilege. Unfortunately,
  we must drop privilege after forking and the imports must be done before
  forking. (Also, unfortunately, all of sugar, telepathy, and the datastore
  have root access through sudo. I'll be trying to change this in coming
  weeks.)
  
* Rainbow is currently made available under the MIT license. You offered your
  sugaractivity.py file under the GPL2+ license. Are you willing to offer it
  under the MIT license?

Anyhow, thanks very much for your hard work,

Michael




More information about the Sugar mailing list