由于“解析模式错误”,无法使用GNOME Shell扩展

我在gnome-tweak-tool konsole对话框中收到此错误

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

然后是一系列其他错误,表明“未知扩展错误”。

所有扩展都显示,但没有一个可以打开。 有任何想法吗?

使用konsole与此无关。

更改了以下文章中提到的文件:

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

现在可以完全访问所有shell扩展。 一些不起作用(alt + tab例如)但它们都是可访问的,并且gnome-tweak-tool不再出现错误。

脚步

替换/usr/lib/python2.7/dist-packages/gtweak/gshellwrapper.py第48-61行:

 class GnomeShell: EXTENSION_STATE = { "ENABLED" : 1, "DISABLED" : 2, "ERROR" : 3, "OUT_OF_DATE" : 4 } EXTENSION_TYPE = { "SYSTEM" : 1, "PER_USER" : 2 } 

用这些:

 class GnomeShell: EXTENSION_STATE = { "ENABLED" : 1, "DISABLED" : 2, "ERROR" : 3, "OUT_OF_DATE" : 4, "DISABLED" : 6 } EXTENSION_TYPE = { "SYSTEM" : 1, "PER_USER" : 2 } 

这应该使所有扩展工作。

最后,要清除剩余的错误,请替换/usr/lib/python2.7/dist-packages/gtweak/gsettings.py第44-52行:

  #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 } 

用这些:

  #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论坛来源 )