Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

Firstly, strangely quickly run on my app runs fine and i believe i have made no changes to the source since quickly debug was working (proclaiming it's not user error is distasteful, I know!).

winpdb itself crashes while my app is initializing inside the boilerplate Window.py inside Gio.Settings().

GLib-GIO-ERROR **: Settings schema 'net.launchpad.cookety-app' is not installed.

I have checked folder data/glib-2.0/schemas and all is as it was when I created project with schemas present.

I have stepped through the code right inside /usr/lib/python2.7/dist-packages/gi/overrides/Gio.py, and found out that Settings.__init__() is where it crashes.

No exceptions, no debugger pausing, just a straight connection lost and winpdb closes thus making it insane for me to even get to the line of code that creates the problem.. most frustrating. Please help!

share|improve this question
    
Could you give us some more details so that we can better help you? It'd be great if you could point us to the code, you might find this useful if it's not yet online: askubuntu.com/questions/154129/… –  David Planella Jul 8 '12 at 8:15
add comment

1 Answer

up vote 2 down vote accepted

Winpdb can't locate the glib settings schema which is used for storing preferences. For example, if you look in the Preferences.py file which Quickly auto-generates, you'll see a call to Gio.Settings("net.launchpad.XXX") which retrieves any locally stored preferences for your application, based on the defined schema.

The documentation for glib-compile-schemas tells us that schemas are searched for in paths matching glib-2.0/schemas/ under the directories in XDG_DATA_DIRS. So, you have a choice. You can either formally install the schema as so:

sudo ln -s $PWD/data/glib-2.0/schemas/net.launchpad.XXX /usr/share/glib-2.0/schemas/
sudo glib-compile-schemas /usr/share/glib-2.0/schemas

Or, much more simply, you can set the variable at execution time:

XDG_DATA_DIRS=$XDG_DATA_DIRS:data quickly debug

Coincidentally, the same advice applies to running your application outside of Quickly, e.g.

XDG_DATA_DIRS=$XDG_DATA_DIRS:data python bin/XXX

Note that the above commands assume you're in the root dir of your project, as you probably are if you're using Quickly.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.