[sugar] gconf woes

Sayamindu Dasgupta sayamindu at gmail.com
Sun Nov 23 13:03:13 EST 2008


On Sun, Nov 23, 2008 at 11:00 PM, Michael Stone <michael at laptop.org> wrote:
> On Sun, Nov 23, 2008 at 05:14:28PM +0000, Daniel Drake wrote:
>>Hi,
>>
>>The problem is that the sugar module imports try to read the XO
>>nickname, colours, etc, information which is now stored in gconf. But,
>>gconf is a per-user thing, everyone has their own store.
>
> How about making a copy (either via cp ... or mount --bind -o ro ...) of
> the gconf state available to the activity before it starts?
>
>>Rainbow launches activities as different users, so with the default
>>behaviour we cannot expect activities to be able to access sugar's
>>configuration.
>
> We should distinguish between reading that configuration and writing to
> it. We should also distinguish between writing system-wide configuration
> and per-activity configuration. Are any parts of the gconf configuration
> data sensitive? Does gconf offer any support for such niceties?
>

There are three types of GConf settings:
* Mandatory
* Default
* User

The details of how this is usually done is at
http://library.gnome.org/admin/system-admin-guide/2.24/gconf-24.html.en#gconf-26

If rainbow can somehow do the magic of exposing only the activity
specific settings as "user" (ie, readwrite) , I guess we will be able
to solve our problem. To figure out the "root" of the activity
specific settings (eg: /activities/imageviewer), we may need to add
yet another entry to the activity.info file :-). (If you look inside
~/.gconf in your desktop system, you will notice that settings are
stored in a directory hierarchy which follows the Gconf keys, eg:  the
setting /activities/imageviewer/foo will be in
~/.gconf//activities/imageviewer/%gconf.xml)

As per the usual GConf programming guidelines, sensitive data such as
password, etc should not be stored in GConf.

Thanks,
Sayamindu

-- 
Sayamindu Dasgupta
[http://sayamindu.randomink.org/ramblings]


More information about the Sugar mailing list