Vamos usar Gio para obter a chave base (a categoria em que o valor está). Assim que tivermos esse valor, vamos definir uma CheckBox para alterar o valor. Em seguida, configuramos vários sinais para ouvir as alterações na configuração e no CheckBox. Eu sei que não é o desktop, mas você pode ligá-lo no BASE_KEY. A propósito, você não deve tentar usar o GConf no GNOME 3, porque ele está obsoleto.
from gi.repository import Gio, Gtk
class GSettingsTest(object):
BASE_KEY = "org.gnome.nautilus.preferences"
def __init__(self):
# Make a check button to change the value.
settings = Gio.Settings(self.BASE_KEY)
change_check = Gtk.CheckButton("Always Use Browser")
change_check.set_active (settings.get_boolean("always-use-browser"))
settings.connect("changed::always-use-browser", self.on_changed, change_check)
change_check.connect('toggled', self.on_check_clicked, settings)
window = Gtk.Window(type = Gtk.WindowType.TOPLEVEL)
window.set_title("Change Nautilus")
window.set_border_width(24)
window.connect("delete-event", Gtk.main_quit)
window.add(change_check)
window.show_all()
Gtk.main()
def on_changed(self, settings, key, change_check):
change_check.set_active(settings.get_boolean("always-use-browser"))
def on_check_clicked(self, button, settings):
settings.set_boolean("always-use-browser", button.get_active())
if __name__ == '__main__':
app = GSettingsTest()