Guest, Sunday 20 October 2013 à 09:44
|
|
|
Hello, I'm trying to get the mintMenu applet running in LMDE with MATE 1.6.
After running cairo-dock I get this error when mintMenu is active.
cairo-dock -o
warning : (/tmp/buildd/cairo-dock-3.2.1/src/gldit/cairo-dock-opengl.c:cairo_dock_initialize_opengl_backend:202)
couldn't find an appropriate visual, trying to get one without Stencil buffer
(it may cause some little deterioration in the rendering) ...
============================================================================
Cairo-Dock version : 3.2.1
Compiled date : Jun 15 2013 02:13:15
Built with GTK : 3.4
Running with OpenGL: 1
============================================================================
Fontconfig warning: "/etc/fonts/conf.d/53-monospace-lcd-filter.conf", line 10: Having multiple values in <test> isn't supported and may not work as expected
Cairo-Dock - Launcher API Daemon is already running (400)
**Traceback (most recent call last):
File "./MintMenu", line 36, in <module>
import mateapplet as gnomeapplet
ImportError: libmate-panel-applet-2.so.1: cannot open shared object file: No such file or directory**
_cd_find_volume_name_from_drive_name: assertion `pDrive != NULL' failed
_cd_find_volume_name_from_drive_name: assertion `pDrive != NULL' failed
I couldn't find libmate-panel-applet-2.so.1 either, but I found a different version, libmate-panel-applet-4.so.1.
Somehow mateapplet.so is looking for the older version. A bug?
I tried creating a symlink to the newer version, with the name mateapplet.so expects, but that gave me further errors.
ImportError: /usr/lib/python2.7/dist-packages/gtk-2.0/mateapplet.so: undefined symbol: mate_panel_applet_get_preferences_key
I created a similar thread at the mate forums as I understand that the problem seems to be with mate-applets, not cairo, but theres not much activity over there and I thought I could get help/directions here, as well as help others facing the same issues.
cairo version: 3.2.1
distro; LMDE 32bit UP7
OpenGl: yes
WM: compiz.
DE: MATE 1.6.1
Thanks in advance. |
fabounet, Monday 21 October 2013 à 17:02
|
|
Subscription date : 30 November 2007
Messages : 17118
|
well, indeed it seems to be a problem in mate
mateapplet.so was compiled against libmate-panel-applet-2, so it's expected some functions from libmate-panel-applet-2 that you don't have in libmate-panel-applet-4
don't you have by chance another mateapplet.so, for python3 maybe ?
or did you try re-installing this component ? |
Guest, Wednesday 23 October 2013 à 07:18
|
|
|
Thanks for your reply fabounet. I was informed the problem is that since 1.5, MATE deprecated mate-corba/gnome-orbit and matecomponent/bonobo.
http://wiki.mate-desktop.org/matecorba_to_dbus
As a result, mateapplet.so is not included anymore with MATE. I had it as a leftover from MATE 1.4. That's why I was getting that error. On a clean MATE 1.6 installation, the error would be a simpleImportError: No module named mateapplet
Is there a way to let the author know this? It'd be a shame to let this awesome applet die, now that even Debian stable has MATE 1.6.
But then again I don't know how hard would be to port the applet to use DBus. |
fabounet, Wednesday 23 October 2013 à 16:49
|
|
Subscription date : 30 November 2007
Messages : 17118
|
ok, I didn't know, thank you for the infos
well, I'll have to check the latest version of mintmenu, when I wrote the applet it was still using mateapplet
Edit: can you please tell me which version of mintmenu you're using ?
Edit2: in the file ~/.config/cairo-dock/third-party/MintMenu/MintMenu, could you replace line 36
import mateapplet as gnomeapplet
by
from gi.repository import MatePanelApplet as gnomeapplet
then restart the dock and see if there are some new messages in the terminal ? thanks |
Guest, Thursday 24 October 2013 à 08:04
|
|
|
Oh, I didn't know you were the author
I'd be more than happy to test any code you need. Here's what I get (I'm using mintmenu 5.4.9):
Traceback (most recent call last):
File "./MintMenu", line 36, in <module>
from gi.repository import MatePanelApplet as gnomeapplet
File "/usr/lib/python2.7/dist-packages/gi/__init__.py", line 27, in <module>
from ._gi import _API, Repository
ImportError: could not import gobject (error was: ImportError('When using gi.repository you must not import static modules like "gobject". Please change all occurrences of "import gobject" to "from gi.repository import GObject".',))
Which is weird because it works fine when I type it directly on the python interpreter.
"Please change all occurrences of "import gobject" to "from gi.repository import GObject"" isn't that the exact way the expression is written?
I tried playing around with it and the only way I can get it to work is by changing the order.
try:
import gnomeapplet
except:
from gi.repository import MatePanelApplet as gnomeapplet
try:
import gtk
except:
from gi.repository import Gtk as gtk
Then this is the output I get:
/usr/lib/python2.7/dist-packages/gobject/constants.py:24: Warning: g_boxed_type_register_static: assertion `g_type_from_name (name) == 0' failed
import gobject._gobject
Traceback (most recent call last):
File "./MintMenu", line 87, in <module>
class GApplet(gnomeapplet.Applet):
File "/usr/lib/python2.7/dist-packages/gi/module.py", line 316, in __getattr__
return getattr(self._introspection_module, name)
File "/usr/lib/python2.7/dist-packages/gi/module.py", line 217, in __getattr__
wrapper = metaclass(name, bases, dict_)
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases |
fabounet, Friday 25 October 2013 à 11:09
|
|
Subscription date : 30 November 2007
Messages : 17118
|
I'm afraid this exceeds my skills in Python
from this site, it seems that the class MatePanelApplet.Applet should define a metaclass
as it is, we can't inherit from MatePanelApplet.Applet as we could from gnomeapplet.Applet
maybe the Mate guys can fix it or provide some help... |
|