Não é possível usar as extensões do Shell do GNOME devido a "esquema de análise de erros"

2

Eu recebo este erro na caixa de diálogo do Konsole do gnome-tweak-tool

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

E, em seguida, uma série de outros erros que indicam "erro de extensão desconhecido".

Todas as extensões são exibidas, mas nenhuma delas pode ser ativada. Alguma idéia?

    
por James LeBlanc 29.10.2011 / 22:30

1 resposta

1

O uso do konsole não tem nada a ver com isso.

Alterou os arquivos conforme mencionado no artigo abaixo:

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

Agora, tenha acesso total a todas as extensões do shell. Alguns não funcionam (alt + tab one, por exemplo), mas estão todos acessíveis, e não há mais um erro de gnome-tweak-tool .

Etapas

Substitua as linhas 48-61 de /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
}

com estes:

class GnomeShell:

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

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

Isso deve fazer com que todas as extensões funcionem.

Por último, para limpar os erros restantes, substitua as linhas 44-52 de /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
                    }

com estes:

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

( fonte dos fóruns do Ubuntu )

    
por James LeBlanc 07.11.2011 / 01:21