Ocfs2console doesn't work under 11.4 x86_64

It looks like the ocfs2console is broken on openSuse 11.4 64bit.

I tested on several servers and my laptop. It works under 11.3 x86_64 but that uses Python 2.6. OpenSuse 11.4 uses Python 2.7.

I tried to submit a bug but I can’t seem to get my email address verified so I can use the bug tracker.

Server1:~/python-gtk/pygtk-2.12.1 # ocfs2console
ERROR: Unable to initialize the windowing
system: The CObject type is marked Pending Deprecation in Python 2.7. Please use capsule objects instead.

Server1:~/python-gtk/pygtk-2.12.1 # uname -a
Linux Server1 #1 SMP 2011-02-21 10:34:10 +0100 x86_64 x86_64 x86_64 GNU/Linux

Server1:~/python-gtk/pygtk-2.12.1 # python
Python 2.7 (r27:82500, Aug 07 2010, 16:54:59) [GCC] on linux2

Does anyone have any ideas for a work around or fix?


The program turns warnings into errors, to correct (?) a bug in gtk.
Comment out the 3 marked lines (->) and ocfs2console will work.

#!/usr/bin/python -W ignore::DeprecationWarning

from ocfs2interface.about import process_args
nodeconf = process_args()

Current pygtk treats no DISPLAY as a WARNING. This means that

pygtk initialization tries to continue even after gtk_init() has failed.

All sorts of fun ensues. To prevent this, we turn the warning into an

error for the duration of gtk initialization.

Originally reported as Novell bugzilla #448523.

-> #import warnings
-> #warnings.filterwarnings(“error”)

import gtk
except Exception, e:
import sys
if str(e).lower().find(‘display’) == -1:
print >>sys.stderr, ‘’‘ERROR: Unable to initialize the windowing
system: %s
‘’’ % e
print >>sys.stderr, ‘’‘ERROR: ocfs2console needs an X11 display.
Make sure a proper setup for your display environment exists.
-> #warnings.filters.pop(0)

if nodeconf:
from ocfs2interface.nodeconfig import node_config
from ocfs2interface.console import main

Pow! That fixed it. Thx froels!

Which file do we need to make these changes?