[pulseaudio-discuss] [PATCH] module-gsettings: new module to store configuration using gsettings

Tanu Kaskinen tanuk at iki.fi
Fri Sep 9 17:49:22 UTC 2016

On Mon, 2016-07-25 at 21:58 +0200, Sylvain Baubeau wrote:
> 2016-04-26 12:47 GMT+02:00 Tanu Kaskinen <tanuk at iki.fi>:
> > * There doesn't seem to be support for migrating existing settings from
> > GConf to GSettings. paprefs will initially keep using GConf, so in the
> > transition period I think both module-gconf and module-gsettings should
> > be loaded. Settings stored in the two databases should be synchronized,
> > so that when paprefs is updated to use GSettings, the old settings will
> > be remembered.
> I did write a patch for paprefs that moves from GConf to GSettings
> (available here : https://github.com/lebauce/paprefs). It provides a
> "paprefs.convert" file for the "gsettings-data-convert" utility that
> will migrate existing settings from GConf to GSettings. On Fedora,
> putting a .convert file into /usr/share/GConf/gsettings/ will trigger
> a migration of the settings at next boot IIRC.

I believe it's possible to implement a migration scheme that is
invisible to users. The proposed scheme is not seamless: when the user
upgrades the system, the old settings won't be available to paprefs
before the next login, and new settings won't have any effect either.
Also, there's no guarantee that pulseaudio and paprefs will get updated
synchronously. If pulseaudio is upgraded first, then... hmm... you
don't seem to be loading module-gsettings in default.pa. How do you
propose the daemon configuration to be updated? Should both modules be
loaded? Or should module-gconf be replaced by module-gsettings? So it's
unclear what happens if pulseaudio is upgraded first, but if paprefs is
upgraded first, then paprefs will not work until pulseaudio gets
updated, because there's nothing in the server that would react to
changes in the gsettings store.

I'm not necessarily demanding a perfect migration scheme, if Fedora is
ok with an imperfect one, but it has to be possible to build both
pulseaudio and paprefs with gconf and without gsettings, so that we
don't force this decision on all distributions. Pulseaudio clearly
satisfies this condition - gconf support is not dropped, and gsettings
is disabled by default - but your paprefs patch removes the option to
build it with gconf support.


More information about the pulseaudio-discuss mailing list