4

Using a fairly simple schema, with a single boolean key, I have not been able to get dconf-editor to accept that the key is actually defined anywhere and when I navigate to the key from dconf-editor, I get a warning that the key has no schema and suggests that I delete it.

gsettings (the command line tool) allows me to extract the description just fine, indicating that the schema is installed correctly. Manipulating and reading the key through gsettings seems to work fine and the result does show up in dconf-editor in real time.

My schema:

<?xml version="1.0" encoding="UTF-8"?>
<schemalist gettext-domain="example-schema">
  <schema
    id="org.example.schema"
    path="/org/example/schema/"
    >
    <key name="boolean_value" type="b">
      <default>false</default>
      <summary>A boolean value</summary>
      <description>A value that may be either true or false</description>
    </key>
  </schema>
</schemalist>

I have placed the schema in /usr/share/glib-2.0/schemas and then run glib-compile-schemas . when inside /usr/ share/glib-2.0/schemas. After this, when I query with gsettings, the schema does show up and I can access the boolean_value key.

I am developing this on Fedora 31 (there's no Ask Fedora), with dconf-editor 3.34.4 and gsettings version 2.62.5.

Clearer
  • 189

1 Answers1

4

dconf-editor doesn't actually do any proper introspection of the database, instead it maps between known paths and id's and uses that to figure out how to describe a key. This list is hardcoded into the program and requires a recompile to update.

The result is that, unless your schema is in that list, dconf-editor will not know about it; if you want your user to get nice feedback from dconf-editor, you need to modify their version of the program, compile it and then install it.

Clearer
  • 189