On Fri, 2016-09-30 at 23:21 +0200, Sylvain Baubeau wrote: > 2016-09-27 21:32 GMT+02:00 Felipe Sateler <fsateler at debian.org>: > > I have to say I'm not sure how an upgrade scenario would play out. My > > understanding currently is as follows: > > > > 1. paprefs can ship a file for gsettings-data-convert, which migrates > > the settings. > > > > 2. However that tool is only run at login. > > > > 3. As a consequence, the paprefs tool can be in an inconsistent state > > after an upgrade and before the next login. > > > > It seems that the problem is resolved by papfrefs triggering the tool > > on startup as suggested by the gnome documentation[1]. > > > > Thanks for pointing this out. I updated my paprefs patch to apply > paprefs.convert at startup. Would it be feasible for you to make it a build time option to use gconf or gsettings in paprefs? > > However that leaves us with another problem, as the pulseaudio daemon > > is not restarted automatically after an upgrade, and thus gsettings > > module might not be loaded. But, I hope paprefs can already deal with > > such a scenario and prompt the user accordingly. > > > > Unfortunately, paprefs does not deal with such a scenario. It will > therefore be able to modify the configuration but this configuration will > only take effect when pulseaudio is restarted. What do you suggest > prompting the user with ? Figuring out a good message is tricky. paprefs could just say "module- gsettings not loaded", but it would be nice to able to tell the user what to do. However, module-gsettings not being loaded may be because the server is too old version and doesn't support module-gsettings at all (distributions can deal this by depending on new enough server, though), or it has been removed from default.pa and needs to be added there, or the server has been updated but not restarted. The last reason is the most likely one in the beginning, but over time it becomes less and less likely, so just saying "restart pulseaudio" or "reboot the machine" probably isn't a good idea. > > In debian there is only paprefs depending on module-gconf. I don't > > think we'll keep module-gconf after paprefs has migrated. If we release a pulseaudio version with module-gsettings before we release paprefs with gsettings support, will you run pulseaudio with both gconf and gsettings enabled, or only with gconf? Running with both would have the benefit that if everything goes well, the data will be migrated without any glitch when the new paprefs version is run for the first time, because module-gsettings will be already loaded. The risk with that is that the migration can't be tested at the time you enable module-gsettings, since paprefs isn't ready. If there's some unforeseen problem when paprefs is finally updated, and module-gsettings needs to be fixed in some way, the migration might become even more complex, because you need to deal with detecting a situation where the server is running with a broken version of module-gsettings. --Â Tanu