[virt-tools-list] Question about the Gsettings and dconf and Design document.

Avaneendra Alugupalli avaneendraa at gmail.com
Tue Nov 17 18:47:19 UTC 2015


Cole
 Thanks for your time. Will try to ask again. Sorry for my bad english :).
Will try my best
this time.

I downloaded the code and tried to run the virt-manager.py of off eclipse
Pydev IDE.
Ran into some issues, not sure the order but ran
glib-compile-schemas data/*schamas*
ran "python setup.py -install"

after that virt-manager sucessfully came up "with auto connected to lxc:///
and qemu://system"

Now I wanted to understand the code, ran the virt-manager in pdb -debugger.
stepping into the config code found that the
"/org/virt-manager/virt-manager/connections/uris"
is already populated with " lxc:/// and qemu://system" value.

but I see that this tuple in dconf DB is only updated by engine code. now
wondering how
does config is able to see the " lxc:/// and qemu://system" values.

thanks
-Avaneendra

On Tue, Nov 17, 2015 at 1:37 PM, Cole Robinson <crobinso at redhat.com> wrote:

> On 11/17/2015 11:40 AM, Avaneendra Alugupalli wrote:
> > hi Cole
> >  Thanks for the response.
> >>
> >
> >>The functions that add/remove/list the URIs in config.py are add_conn,
> >> remove_conn, list_conn_uris respectively. They are called from engine.py
> >
> > From the code in virt-manager.py main handler, I find that the
> > config object is getting created before the engine object?. Is that for
> the first
> > time when I run the virt-manager app. config sees default values of
> connections/
> > uris to none [] and then engine creates them. And even if the app is
> exited
> > we still have non default values ("qemu:///sysmtem" and "lxc://") in the
> dconf?.
> > perhaps not delete those values from dconf?.
> >
>
> Sorry, I'm not really following what you are saying. Can you describe the
> problem you are hitting, step by step, and exactly what you are trying to
> determine?
>
> Also, take a look at dconf-editor, it's a UI tool for exploring dconf
> values.
> Might explain what you are seeing.
>
> - Cole
>
> >
> > On Mon, Nov 16, 2015 at 8:09 PM, Cole Robinson <crobinso at redhat.com
> > <mailto:crobinso at redhat.com>> wrote:
> >
> >     On 11/16/2015 02:17 PM, Avaneendra Alugupalli wrote:
> >     > hi
> >     >  I am trying to understand the code for virt-manager and found
> that during the
> >     > config object create, gets the connections / uris using the
> Gsettings API. and
> >     > these are the entries in dconf database.
> >     >
> >     > forchild inself._settings.list_children():
> >     > childschema =self._root +"."+child
> >     > self._settingsmap[child] =Gio.Settings.new(childschema)
> >     >
> >     >
> >     > returns connections/uris as "qemu:///system" and "lxc:///". From
> the
> >     >
> >     > I can see that data
> >     >
> >     <https://github.com/virt-manager/virt-manager/tree/master/data
> >/org.virt-manager.virt-manager.gschema.xml
> >     > makes
> >     > default entry for these fields. How ever am unable to track who is
> updating
> >     > the connections/uris to "qemu:///system" and "lxc:///" strings.
> >
> >     The functions that add/remove/list the URIs in config.py are
> add_conn,
> >     remove_conn, list_conn_uris respectively. They are called from
> engine.py
> >
> >     > Also is there any architecture/ design document to understand the
> code at very
> >     > higher
> >     > level?.
> >
> >     No unfortunately :/
> >
> >     - Cole
> >
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/virt-tools-list/attachments/20151117/58f9b0f4/attachment.htm>


More information about the virt-tools-list mailing list