After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 671581 - gsettings-data-convert interacts badly with vendor overrides
gsettings-data-convert interacts badly with vendor overrides
Status: RESOLVED FIXED
Product: GConf
Classification: Deprecated
Component: gsettings
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GConf Maintainers
GConf Maintainers
Depends on:
Blocks: 671566
 
 
Reported: 2012-03-07 18:05 UTC by Allison Karlitskaya (desrt)
Modified: 2012-03-08 16:22 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
sources: remove a harmless warning message (1.84 KB, patch)
2012-03-07 20:06 UTC, Allison Karlitskaya (desrt)
committed Details | Review
gsettings-data-convert: convert only user settings (3.48 KB, patch)
2012-03-07 20:06 UTC, Allison Karlitskaya (desrt)
committed Details | Review

Description Allison Karlitskaya (desrt) 2012-03-07 18:05:54 UTC
Bug 671566 is tracking dconf writes that happen at login.  These writes are caused by gsettings-data-convert on an Ubuntu system:

[org/gnome/desktop/background]
picture-uri='file:///usr/share/backgrounds/warty-final-ubuntu.png'

[org/gnome/desktop/interface]
cursor-theme='DMZ-White'
font-name='Ubuntu 11'
gtk-theme='Ambiance'
icon-theme='ubuntu-mono-dark'

[org/gnome/desktop/lockdown]
disable-lock-screen=true

[org/gnome/desktop/sound]
event-sounds=true

[org/gnome/nautilus/desktop]
font='Ubuntu 11'


Which are clearly all the Ubuntu-specific overrides in GConf being copied to dconf.

Either Ubuntu needs to change the way they do overrides or gsettings-data-convert needs to be more intelligent about ensuring that it's only settings from the user's database that are copied.  I suspect the answer is that gsettings-data-convert needs a tweak, so I file the bug here.
Comment 1 Allison Karlitskaya (desrt) 2012-03-07 20:06:02 UTC
Created attachment 209209 [details] [review]
sources: remove a harmless warning message

GConf warns if there are no writable databases in use.  Stop it from
doing that.
Comment 2 Allison Karlitskaya (desrt) 2012-03-07 20:06:04 UTC
Created attachment 209210 [details] [review]
gsettings-data-convert: convert only user settings

We only want to migrate settings that were in writable databases (in
order to avoid 'lifting' system defaults into the user's database).
Comment 3 Matthias Clasen 2012-03-07 21:30:11 UTC
Review of attachment 209210 [details] [review]:

Looks reasonable, otherwise

::: gsettings/gsettings-data-convert.c
@@ +74,3 @@
+          strcpy (copy + (match - address) + 10, match + 11);
+          result = g_slist_prepend (result, copy);
+          g_print ("add %s\n", copy);

Leftover debug spew
Comment 4 Matthias Clasen 2012-03-07 21:30:49 UTC
Review of attachment 209209 [details] [review]:

Sure
Comment 5 Allison Karlitskaya (desrt) 2012-03-08 16:22:19 UTC
Attachment 209209 [details] pushed as 27c183f - sources: remove a harmless warning message
Attachment 209210 [details] pushed as d28bd00 - gsettings-data-convert: convert only user settings