GNOME Bugzilla – Bug 130129
Implement --unload option in gconftool-2
Last modified: 2004-12-22 21:47:04 UTC
The gconftool-2 program has the --load option that can be used to register .entries files in the configuration database. The gnome-panel package (and may be others in the future) use this to set the default configuration during installation time. The problem comes when deinstalling gnome-panel. You can't cleanly remove that information from the gconf database. This is a serious problem for packaging systems. Everything should remain as before in the system if one installs and deinstalls a package -- but this can't be done without cleanly removing entries from the gconf database. What I propose is the addition of an --unload option that does the opposite of --load; that is, undo the registration of .entries files. This is more or less the same as what was done with --makefile-install-rule and --makefile-uninstall-rule. The attached patch, while not very clean, shows how this can be done without too many changes in the code.
Created attachment 22749 [details] [review] Simple implementation of --unload
Created attachment 27349 [details] [review] Updated patch This new patch applies cleanly on version 2.6.1. I hope it works with the code in CVS too, but I haven't been able to check it out (I always get an older version).
Thanks Julio, commited now on HEAD: 2004-07-02 Mark McLoughlin <mark@skynet.ie> Based on a patch to add --unload option from Julio M. Merino Vidal <jmmv@menta.net> in bug #130129. * gconf/gconftool.c: (main): add --unload option. (do_load_file): add an 'unload' flag. (set_values), (process_entry), (process_key_list), (hash_install_foreach), (process_schema), (process_list): pass the flag about and unset/unassociate things as appropriate. (do_makefile_uninstall): pass the unload flag to do_load_file().