/usr/lib/python2.4/site-packages/Xlib/display.py:30: DeprecationWarning: Non-ASCII character '\xf6' in file /usr/lib/python2.4/site-packages/Xlib/protocol/display.py on line 749, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
import protocol.display
Traceback (most recent call last):
File "/usr/bin/pypanel", line 957, in ?
PyPanel(display.Display())
File "/usr/lib/python2.4/site-packages/Xlib/display.py", line 80, in __init__
self.display = _BaseDisplay(display)
File "/usr/lib/python2.4/site-packages/Xlib/display.py", line 67, in __init__
apply(protocol.display.Display.__init__, (self, ) + args, keys)
File "/usr/lib/python2.4/site-packages/Xlib/protocol/display.py", line 122, in __init__
self.default_screen = min(self.default_screen, len(self.info.roots) - 1)
File "/usr/lib/python2.4/site-packages/Xlib/protocol/rq.py", line 1371, in __getattr__
raise AttributeError(attr)
AttributeError: root
Нашел такой рецепт:
/usr/lib/python<version>/site-packages/Xlib/protocol/display.py
and change line 530 from -
recv = self.socket.recv(2048)
to -
recv = self.socket.recv(4096)
Ох ребята, изварт!
Так как у меня кроме монитора еще и телек через tv-out подключен, то вышеприведенное число мне пришлось увеличить еще в два раза. Теперь все работает
Traceback (most recent call last):
File "/usr/bin/pypanel", line 957, in ?
PyPanel(display.Display())
File "/usr/bin/pypanel", line 94, in __init__
self.getDesktopNames()
File "/usr/bin/pypanel", line 360, in getDesktopNames
desktop.total = self.root.get_full_property(self._DESKTOP_COUNT, 0).value[0]
AttributeError: 'NoneType' object has no attribute 'value'
Запросы ошибок к операционной системе игнорироваться не могут.