On Fri, May 7, 2010 at 1:17 PM, Toshio Kuratomi <a.badger@xxxxxxxxx> wrote: > > Running makefile-install-schema and makefile-uninstall-schema eventually > calls do_sync() which was supposed to reread the schemas. That's currently > calling gconf_engine_suggest_sync() in gconf.c and I'm not sure whether > there's some logic in there that could cause it not to suggest syncing in > our current setup. I don't understand how this could ever work - GConf IPC happens in terms of ORBit which is per-uid, so a bare --makefile-install-rule might contact the GConf engine for uid 0 and ask it to reload, but that's it. It would have to jump through hoops to contact the GConf running as uid 500 or whatever, and I don't see those hoops being jumped. Oh but...I see, it's a Fedora patch not in the upstream GConf code to run killall. My bad looking at upstream gconf git. Sigh... > So changing policy back to doing a killall -HUP in %posttrans should work. > It would be nice to know what Fedora versions are affected by this and > whether it will someday be fixed before updating the Guidelines, though. So though this still leaves a window of up to 30 seconds where after installing an application the schema will be invalid. Which seems very likely what people are hitting. I think ideally we'd have the RPM system detect a schema was installed and do an immediate reload once post transaction, and nuke the 30 second timeout from gconf. That still leaves though the problem of the massive copy&paste scriptlets; we could remove the killall from --makefile-install-rule which would help. -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel