Bug 855612

Summary: [abrt] gnome-tweak-tool-3.4.0.1-2.fc17: gsettings.py:122:schema_get_summary:KeyError: 'theme'
Product: [Fedora] Fedora Reporter: Eric LARQUET <eric.larquet>
Component: gnome-tweak-toolAssignee: Mohamed El Morabity <pikachu.2014>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 17CC: michel, pikachu.2014, syltrem
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: abrt_hash:b2240a104546e5b64f003635a65c369db383b375
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-08-01 08:40:05 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
File: core_backtrace
none
Patch to gsettings to print out the incomplete schema causing the crash none

Description Eric LARQUET 2012-09-09 10:44:55 UTC
Version-Release number of selected component:
gnome-tweak-tool-3.4.0.1-2.fc17

Additional info:
libreport version: 2.0.13
abrt_version:   2.0.12
cmdline:        python /usr/bin/gnome-tweak-tool
kernel:         3.5.3-1.fc17.x86_64

backtrace:
:gsettings.py:122:schema_get_summary:KeyError: 'theme'
:
:Traceback (most recent call last):
:  File "/usr/bin/gnome-tweak-tool", line 76, in <module>
:    MainWindow()
:  File "/usr/lib/python2.7/site-packages/gtweak/mainwindow.py", line 44, in __init__
:    model)
:  File "/usr/lib/python2.7/site-packages/gtweak/tweakview.py", line 40, in __init__
:    self._model.load_tweaks()
:  File "/usr/lib/python2.7/site-packages/gtweak/tweakmodel.py", line 135, in load_tweaks
:    mods = __import__("gtweak.tweaks", globals(), locals(), tweak_files, 0)
:  File "/usr/lib/python2.7/site-packages/gtweak/tweaks/tweak_windows.py", line 42, in <module>
:    WindowThemeSwitcher(group_name=TWEAK_GROUP_THEME),
:  File "/usr/lib/python2.7/site-packages/gtweak/tweaks/tweak_windows.py", line 32, in __init__
:    **options)
:  File "/usr/lib/python2.7/site-packages/gtweak/widgets.py", line 198, in __init__
:    _GSettingsTweak.__init__(self, schema_name, key_name, **options)
:  File "/usr/lib/python2.7/site-packages/gtweak/widgets.py", line 105, in __init__
:    options.get("summary",self.settings.schema_get_summary(key_name)),
:  File "/usr/lib/python2.7/site-packages/gtweak/gsettings.py", line 122, in schema_get_summary
:    return self._schema._schema[key]["summary"]
:KeyError: 'theme'
:
:Local variables in innermost frame:
:self: <GSettingsSetting object at 0x23bf5f0 (gtweak+gsettings+GSettingsSetting at 0x246c5e0)>
:key: 'theme'

Comment 1 Eric LARQUET 2012-09-09 10:44:58 UTC
Created attachment 611183 [details]
File: core_backtrace

Comment 2 Syltrem 2012-10-26 21:35:13 UTC
Hello

I'm getting something similar ad possibly related :

You can get the details here:

http://ask.fedoraproject.org/question/2803/gnome-tweak-tool-fails-after-upgrade-to-fedora-17

The gnome-tweak-tool does not seem to work in f17

Thanks

Comment 3 Michel Lind 2012-10-27 19:38:49 UTC
Hi Syltrem,

(In reply to comment #2)
> Hello
> 
> I'm getting something similar ad possibly related :
> 
Replied to it at ask.fp.o -- it looks like a different problem as yours seem to be a Python problem (though I'm not sure how that came about).

To the others:

Could you provide the result of doing the following?

$ tree /usr/share/themes
$ tree $HOME/.themes

A lot of problems with g-t-t is caused by the presence of themes that it cannot parse.

Comment 4 Syltrem 2012-10-30 15:41:11 UTC
/usr/share/themes
├── Adwaita
│   ├── backgrounds
│   │   ├── adwaita-timed.xml
│   │   ├── bright-day.jpg
│   │   ├── good-night.jpg
│   │   └── morning.jpg
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── gtk-3.0
│   │   ├── gtk.css
│   │   ├── gtk-dark.css
│   │   ├── gtk.gresource
│   │   └── settings.ini
│   ├── index.theme
│   └── metacity-1
│       ├── metacity-theme-2.xml
│       └── metacity-theme-3.xml
├── AgingGorilla
│   └── metacity-1
│       ├── active-button.png
│       ├── active-close-button.png
│       ├── active-close-menu-icon.png
│       ├── active-maximize-button.png
│       ├── active-maximize-menu-icon.png
│       ├── active-menu-button.png
│       ├── active-minimize-button.png
│       ├── active-minimize-menu-icon.png
│       ├── inactive-close-button.png
│       ├── inactive-maximize-button.png
│       ├── inactive-menu-button.png
│       ├── inactive-minimize-button.png
│       └── metacity-theme-1.xml
├── Atlanta
│   └── metacity-1
│       └── metacity-theme-1.xml
├── blondie
│   └── matchbox
│       ├── accept.png
│       ├── close.png
│       ├── close-small.png
│       ├── dialogbottomleft.png
│       ├── dialogbottomright.png
│       ├── dialogbottomtile.png
│       ├── dialogtopleft2.png
│       ├── dialogtopleft.png
│       ├── dialogtopright2.png
│       ├── dialogtopright.png
│       ├── dialogtoptile2.png
│       ├── dialogtoptile.png
│       ├── hide.png
│       ├── menu.png
│       ├── next.png
│       ├── prev.png
│       ├── que.png
│       ├── theme.desktop
│       ├── theme.xml
│       ├── titleleft.png
│       ├── titleright.png
│       └── titlestrip.png
├── Bright
│   └── metacity-1
│       ├── metacity-theme-1.xml
│       └── metacity-theme-2.xml
├── Clearlooks
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── index.theme
│   └── metacity-1
│       └── metacity-theme-1.xml
├── ClearlooksClassic
│   ├── gtk-2.0
│   │   └── gtkrc
│   └── metacity-1
│       └── metacity-theme-1.xml
├── Crux
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── index.theme
│   └── metacity-1
│       ├── active-above-button.png
│       ├── active-border-top-left-border.png
│       ├── active-border-top-right-border.png
│       ├── active-bottom-left-border.png
│       ├── active-bottom-left-corner.png
│       ├── active-bottom-mid-left-border.png
│       ├── active-bottom-mid-right-border.png
│       ├── active-bottom-right-border.png
│       ├── active-bottom-right-corner.png
│       ├── active-button.png
│       ├── active-button-prelight.png
│       ├── active-button-pressed.png
│       ├── active-close-button.png
│       ├── active-left-border.png
│       ├── active-left-top-border.png
│       ├── active-left-top-border-shaded.png
│       ├── active-maximize-button.png
│       ├── active-menu-button.png
│       ├── active-menu-button-prelight.png
│       ├── active-menu-button-pressed.png
│       ├── active-minimize-button.png
│       ├── active-restore-button.png
│       ├── active-right-border.png
│       ├── active-right-top-border.png
│       ├── active-right-top-border-shaded.png
│       ├── active-shade-button.png
│       ├── active-stick-button.png
│       ├── active-top-center-left.png
│       ├── active-top-center-mid-left.png
│       ├── active-top-center-mid-right.png
│       ├── active-top-center-right.png
│       ├── active-top-left-border.png
│       ├── active-top-left-corner.png
│       ├── active-top-mid-left-border.png
│       ├── active-top-mid-right-border.png
│       ├── active-top-right-border.png
│       ├── active-top-right-corner.png
│       ├── active-unabove-button.png
│       ├── active-unshade-button.png
│       ├── active-unstick-button.png
│       ├── inactive-above-button.png
│       ├── inactive-border-top-left-border.png
│       ├── inactive-border-top-right-border.png
│       ├── inactive-bottom-left-border.png
│       ├── inactive-bottom-left-corner.png
│       ├── inactive-bottom-mid-border.png
│       ├── inactive-bottom-right-border.png
│       ├── inactive-bottom-right-corner.png
│       ├── inactive-button.png
│       ├── inactive-button-prelight.png
│       ├── inactive-button-pressed.png
│       ├── inactive-close-button.png
│       ├── inactive-left-border.png
│       ├── inactive-left-top-border.png
│       ├── inactive-left-top-border-shaded.png
│       ├── inactive-maximize-button.png
│       ├── inactive-menu-button.png
│       ├── inactive-menu-button-prelight.png
│       ├── inactive-menu-button-pressed.png
│       ├── inactive-minimize-button.png
│       ├── inactive-restore-button.png
│       ├── inactive-right-border.png
│       ├── inactive-right-top-border.png
│       ├── inactive-right-top-border-shaded.png
│       ├── inactive-shade-button.png
│       ├── inactive-stick-button.png
│       ├── inactive-top-center-left.png
│       ├── inactive-top-center-mid.png
│       ├── inactive-top-center-right.png
│       ├── inactive-top-left-border.png
│       ├── inactive-top-left-corner.png
│       ├── inactive-top-mid-border.png
│       ├── inactive-top-right-border.png
│       ├── inactive-top-right-corner.png
│       ├── inactive-unabove-button.png
│       ├── inactive-unshade-button.png
│       ├── inactive-unstick-button.png
│       ├── metacity-theme-1.xml
│       └── metacity-theme-2.xml
├── Default
│   ├── gtk-2.0-key
│   │   └── gtkrc
│   ├── gtk-3.0
│   │   └── gtk-keys.css
│   └── matchbox
│       ├── acceptbutton.xpm
│       ├── closebutton.xpm
│       ├── menubutton.xpm
│       ├── theme.desktop
│       └── theme.xml
├── Emacs
│   ├── gtk-2.0-key
│   │   └── gtkrc
│   └── gtk-3.0
│       └── gtk-keys.css
├── Esco
│   └── metacity-1
│       └── metacity-theme-1.xml
├── Glider
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── index.theme
│   └── metacity-1
│       └── metacity-theme-1.xml
├── Glossy
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── index.theme
│   └── metacity-1
│       └── metacity-theme-1.xml
├── HighContrast
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── gtk-3.0
│   │   ├── gtk.css
│   │   └── gtk.gresource
│   └── index.theme
├── HighContrastInverse
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── gtk-3.0
│   │   ├── gtk.css
│   │   └── gtk.gresource
│   └── index.theme
├── Industrial
│   └── gtk-2.0
│       └── gtkrc
├── LowContrast
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── gtk-3.0
│   │   └── gtk.css
│   └── index.theme
├── MBOpus
│   └── matchbox
│       ├── closebutton.png
│       ├── panelbg.png
│       ├── theme.desktop
│       └── theme.xml
├── Metabox
│   └── metacity-1
│       └── metacity-theme-1.xml
├── Mist
│   ├── gtk-2.0
│   │   └── gtkrc
│   ├── index.theme
│   └── metacity-1
│       └── metacity-theme-1.xml
├── Raleigh
│   └── gtk-2.0
│       └── gtkrc
├── Simple
│   ├── gtk-2.0
│   │   └── gtkrc
│   └── metacity-1
│       ├── close.png
│       ├── maximized.png
│       ├── maximize.png
│       ├── metacity-theme-1.xml
│       └── minimize.png
└── ThinIce
    └── gtk-2.0
        └── gtkrc

62 directories, 180 files

Comment 5 Syltrem 2012-10-30 15:43:46 UTC
$ tree $HOME/.themes
/home/syltrem/.themes [error opening dir]

0 directories, 0 files

$ ls $HOME/.themes
ls: cannot access /home/syltrem/.themes: No such file or directory

Comment 6 Syltrem 2012-10-30 15:47:29 UTC
Michel Alexandre : btw, I'm getting the same problem as originally reported, but only when I call g-t-t from the applications menu.
If I call it from the $ prompt, I get the other messages.
Thanks

Comment 7 Michel Lind 2012-10-31 10:36:17 UTC
Hmm, looks like it could be a problem of some schemas not being properly updated during the system upgrade, and g-t-t choking on it.

Is there any chance I could get SSH access to the machine in question? Failing that I could try installing F15, updating to F17 and see if I could reproduce the problem.

Did you upgrade through F16 or straight to F17?

Comment 8 Michel Lind 2012-10-31 10:45:08 UTC
Created attachment 636013 [details]
Patch to gsettings to print out the incomplete schema causing the crash

Could those of you affected by this try applying this patch, try running gnome-tweak-tool again and paste the result starting with "DEBUG" (see patch) to the bug report?

cd /usr/lib/python2.7/site-packages
cat /PATH/TO/gsettings.patch | su -c "patch -p1"

(or use sudo if you have it set up)

Thanks!

Comment 9 Syltrem 2012-10-31 12:44:46 UTC
(In reply to comment #7)

> Is there any
> chance I could get SSH access to the machine in question? Failing that I
> could try installing F15, updating to F17 and see if I could reproduce the
> problem.

This is not possible - the machine is in my employer's network

> Did you upgrade through F16 or straight to F17?

I went directly from f15 to f17 with preupgrade.
I tried it a 2nd time with the same results.

Thanks

Comment 10 Syltrem 2012-11-01 01:26:19 UTC
(In reply to comment #8)
> Created attachment 636013 [details]
> Patch to gsettings to print out the incomplete schema causing the crash
> 
> Could those of you affected by this try applying this patch, try running
> gnome-tweak-tool again and paste the result starting with "DEBUG" (see
> patch) to the bug report?
> 
> cd /usr/lib/python2.7/site-packages
> cat /PATH/TO/gsettings.patch | su -c "patch -p1"
> 
> (or use sudo if you have it set up)
> 
> Thanks!


Hi

Not sure how to implement the patch, or I'm missing the patch command

[root@FedOracle site-packages]# pwd
/usr/lib/python2.7/site-packages
[root@FedOracle site-packages]# cat /mnt/tmpsyl/gsettings.patch | su -c "patch -p1"
bash: patch: command not found
[root@FedOracle site-packages]# ls /mnt/tmpsyl/gsettings.patch
/mnt/tmpsyl/gsettings.patch

I do have sudo set up from my account but tried directly from root ?

Thanks

Comment 11 Michel Lind 2012-11-01 02:34:37 UTC
You do need to install patch, yes. If you are root you wouldn't need the "su -c " part.

On your second try, did you start from a clean F15 install? From the live CD, or a normal install (and if the latter, which installation profile). That should make it easy to reproduce on my end.

Thanks!

Comment 12 Syltrem 2012-11-01 10:45:35 UTC
(In reply to comment #11)
> You do need to install patch, yes. If you are root you wouldn't need the "su
> -c " part.
> 
> On your second try, did you start from a clean F15 install? From the live
> CD, or a normal install (and if the latter, which installation profile).
> That should make it easy to reproduce on my end.
> 
> Thanks!

I just reverted back to a "before the upgrade" snapshot of my f15 VM on the 2nd try, in case I had missed something on the 1st try (my first upgrade ever).

I installed patch and here is the result (complete since it is short) :

CRITICAL: Error parsing schema org.gnome.desktop.wm.preferences (/usr/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.xml)
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/gtweak/gsettings.py", line 48, in __init__
    dom = xml.dom.minidom.parse(schema_path)
  File "/usr/lib64/python2.7/xml/dom/minidom.py", line 1919, in parse
    from xml.dom import expatbuilder
  File "/usr/lib64/python2.7/xml/dom/expatbuilder.py", line 32, in <module>
    from xml.parsers import expat
  File "/usr/lib64/python2.7/xml/parsers/expat.py", line 4, in <module>
    from pyexpat import *
ImportError: /usr/lib64/python2.7/lib-dynload/pyexpat.so: undefined symbol: XML_SetHashSalt
DEBUG --- schema <gtweak.gsettings._GSettingsSchema: org.gnome.desktop.wm.preferences> has no key theme !!!



Also can I ask you something ? I'm new to Linux so it could be something I don't understand but how does this work from my account with sudo :

[syltrem@FedOracle ~]$ sudo yum list patch
BDB2053 Freeing read locks for locker 0x1de: 11645/139946473129984
BDB2053 Freeing read locks for locker 0x1df: 11645/139946473129984
BDB2053 Freeing read locks for locker 0x1e0: 11645/139946473129984
BDB2053 Freeing read locks for locker 0x1e1: 11645/139946473129984
Loaded plugins: langpacks, presto, refresh-packagekit
Installed Packages
patch.x86_64                                                     2.6.1-12.fc17                                                     @fedora
[syltrem@FedOracle ~]$ 

and it does not work from root directly ? It sounds very strange to me.

[syltrem@FedOracle ~]$ su -
Password: 
[root@FedOracle ~]# yum list patch
Plugin "presto" can't be imported
Plugin "refresh-packagekit" can't be imported
Loaded plugins: langpacks
Traceback (most recent call last):
  File "/bin/yum", line 29, in <module>
    yummain.user_main(sys.argv[1:], exit_code=True)
  File "/usr/share/yum-cli/yummain.py", line 319, in user_main
    errcode = main(args)
  File "/usr/share/yum-cli/yummain.py", line 144, in main
    result, resultmsgs = base.doCommands()

etc. I stripped the rest
I just don't know at this time where to ask about this. Thanks

Comment 13 Fedora Admin XMLRPC Client 2012-11-13 07:07:17 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 14 Syltrem 2013-01-11 18:27:24 UTC
Is the new owner active or has this been abandoned ?
Thank you

Comment 15 Fedora End Of Life 2013-07-04 02:34:01 UTC
This message is a reminder that Fedora 17 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 17. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '17'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 17's end of life.

Bug Reporter:  Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 17 is end of life. If you 
would still like  to see this bug fixed and are able to reproduce it 
against a later version  of Fedora, you are encouraged  change the 
'version' to a later Fedora version prior to Fedora 17's end of life.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 16 Fedora End Of Life 2013-08-01 08:40:13 UTC
Fedora 17 changed to end-of-life (EOL) status on 2013-07-30. Fedora 17 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.