diff -up notify-python-0.1.1/src/__init__.py.BAD notify-python-0.1.1/src/__init__.py --- notify-python-0.1.1/src/__init__.py.BAD 2010-08-31 09:04:45.353844005 -0400 +++ notify-python-0.1.1/src/__init__.py 2010-08-31 09:04:49.281844300 -0400 @@ -1 +1,21 @@ +""" +Fedora's libnotify.so is not linked against GTK2 or GTK3. The idea +was to support being linked against different parallel-installable +GTK stacks. + +Unfortunately, python needs to jump through some special hoops in order +to share symbols with extension modules, specifically, pygtk, which does +link against GTK2. + +Without using sys.setdlopenflags(sys.getdlopenflags() | ctypes.RTLD_GLOBAL), +the result is: +libnotify-WARNING **: Missing symbol 'gdk_screen_make_display_name' + +Thanks to David Malcolm for figuring out the workaround. +""" +import ctypes +import sys +sys.setdlopenflags(sys.getdlopenflags() | ctypes.RTLD_GLOBAL) +import gtk + from _pynotify import *