GNOME Bugzilla – Bug 745947
order of gsettings overrides seems to have been reversed
Last modified: 2015-03-13 00:55:56 UTC
This behaviour seems to have reversed recently. It used to be as mentioned in the glib-compile-schemas man page " By convention, vendor override files begin with nn_ where nn is a number from 00 to 99. Higher numbered files have higher priority (eg: if the same override is made in a file numbered 10 and then again in a file numbered 20, the override from 20 will take precedence). " However current 10_ seems to take higher priority than 20_
we override org.gnome.desktop.background in 20_ubuntu-gnome-default-settings.gschema.override but are gettings the settings from 10_desktop-base.gschema.override instead
sounds like a testcase waiting to be written
are you sure? it seems to work for me... desrt@humber:~/override-test$ head -n 10 * ==> 10_first.gschema.override <== [org.gtk.test.basic-types] test-string="this is from 10" ==> 20_second.gschema.override <== [org.gtk.test.basic-types] test-string="this is from 20" ==> org.gtk.test.gschema.xml <== <schemalist> <schema id="org.gtk.test.basic-types" path="/tests/basic-types/"> <key name="test-string" type="s"> <default>"a string, it seems"</default> </key> </schema> </schemalist> desrt@humber:~/override-test$ glib-compile-schemas . # debian jessie desrt@humber:~/override-test$ gsettings --schemadir . get org.gtk.test.basic-types test-string 'this is from 20' desrt@humber:~/override-test$ ~/code/glib/gio/glib-compile-schemas . # git desrt@humber:~/override-test$ gsettings --schemadir . get org.gtk.test.basic-types test-string 'this is from 20' desrt@humber:~/override-test$
actually, this seems to be a bug in dconf-editor and the way it generates the default values. (atleast with version 0.22 in Ubuntu, I will check with 3.15.91)
so: gsettings works as expected dconf-editor under jhbuild works dconf-editor under Ubuntu vivid is broken
dconf-editor contains a bunch of schema-parsing logic from before GSettings was able to provide all of the information that it needed via the GSettingsSchema APIs. See bug 668234 for the correct fix to this problem. *** This bug has been marked as a duplicate of bug 668234 ***