Can't use GNOME Shell extensions due to "error parsing schema"

5,511

Using konsole has nothing to do with this.

Changed the files as mentioned in the article below:

  • /usr/lib/python2.7/dist-packages/gtweak/gshellwrapper.py
  • /usr/lib/python2.7/dist-packages/gtweak/gsettings.py

Now have full access to all shell extensions. A few don't work (alt+tab one for example) but they are all accessible, and there is no longer an error from gnome-tweak-tool.

Steps

Replace lines 48-61 of /usr/lib/python2.7/dist-packages/gtweak/gshellwrapper.py:

class GnomeShell:

EXTENSION_STATE = {
    "ENABLED"       :   1,
    "DISABLED"      :   2,
    "ERROR"         :   3,
    "OUT_OF_DATE"   :   4
}

EXTENSION_TYPE = {
    "SYSTEM"        :   1,
    "PER_USER"      :   2
}

with these:

class GnomeShell:

EXTENSION_STATE = {
    "ENABLED"       :   1,
    "DISABLED"      :   2,
    "ERROR"         :   3,
    "OUT_OF_DATE"   :   4,
    "DISABLED"      :   6
}

EXTENSION_TYPE = {
    "SYSTEM"        :   1,
    "PER_USER"      :   2
}

This should get all extensions working.

Lastly, to clear up the remaining errors, replace lines 44-52 of /usr/lib/python2.7/dist-packages/gtweak/gsettings.py:

                        #summary is compulsory, description is optional
                    summary = key.getElementsByTagName("summary")[0].childNodes[0].data
                    try:
                        description = key.getElementsByTagName("description")[0].childNodes[0].data
                    except:
                        description = ""
                    self._schema[key.getAttribute("name")] = {
                            "summary"       :   summary,
                            "description"   :   description
                    }

with these:

                        #summary is compulsory, description is optional
                    try:
                        summary = key.getElementsByTagName("summary")[0].childNodes[0].data
                        description = key.getElementsByTagName("description")[0].childNodes[0].data
                    except:
                        description = ""
                        summary = "No Summary"
                    self._schema[key.getAttribute("name")] = {
                            "summary"       :   summary,
                            "description"   :   description
                    }

(Ubuntu Forums source)

Share:
5,511

Related videos on Youtube

James LeBlanc
Author by

James LeBlanc

Updated on September 18, 2022

Comments

  • James LeBlanc
    James LeBlanc about 1 year

    I get this error in the gnome-tweak-tool konsole dialog

    CRITICAL: Error parsing schema org.gnome.shell (/usr/share/glib-2.0/schemas/org.gnome.shell.gschema.xml)
    

    And then a series of other errors which state 'unknown extension error'.

    All of the extensions show, but none of them can be switched on. Any ideas?

    • Bruno Pereira
      Bruno Pereira about 12 years
      konsole??? are you using kde?
  • Ben Siver
    Ben Siver almost 12 years
    For some reason this is not working for me. I have changed both files exactly as stated with proper indentation yet I still receive the unknown extension error. Any ideas?