Le lundi 27 mai 2013 16:24:36 UTC+2, Joe a écrit :
[...]
I expect you will have to install from source.
First determine which desktop environment you are using (Gnome, KDE,
LXDE, ...). If you are using Gnome, you'll want to install autokey-gtk.
If KDE, then autokey-qt. If you're using anything else, you can still
probably get autokey to work, but you'll have to install the supporting
libraries (either QT or GTK) too.
Once you know what version of autokey you want to install, follow the
instructions for installing from source at
https://code.google.com/p/autokey/wiki/InstallingAutoKey
If you get stuck, post the specifics here.
Joe
Hi Joe and the rest of the Autokey community,
I'm a Mageia (apprentice) packager and I have been trying without success to package Autokey on Mageia 3, based on Fedora 19's Autokey package. Actually building from source works and results in a working autokey-qt version (provided I install the required dependencies, fair enough), but I can't get autokey-gtk to work properly.
After I figured out the available dependencies for autokey-gtk, there are still two main problems:
1) One problem with the packaging: Mageia's packaging tools check the source code for missing runtime dependencies. It then happens that two Python libraries are missing, which cannot be installed in Mageia, namely:
* typelib(Unity), which obviously makes sense only on a Ubuntu-based distro. I tried patching the file to remove the chunk of code relative to Unity, but I guess it's prone to breaking a few things?
* typelib(AppIndicator3): Mageia 3 ships libappindicator1, which provides typelib(AppIndicator) (note that there is no '3'). Are there big differences between the two libraries, or should it work with both? (provided I patch Autokey to import AppIndicator and not AppIndicator3).
2) Regardless of packaging issues, autokey-gtk won't run on Mageia 3, showing this error:
Traceback (most recent call last):
File "/usr/bin/autokey-gtk", line 20, in <module>
from autokey.gtkapp import Application
File "/usr/lib/python2.7/site-packages/autokey/gtkapp.py", line 29, in <module>
from gtkui.notifier import get_notifier
File "/usr/lib/python2.7/site-packages/autokey/gtkui/notifier.py", line 28, in <module>
from gi.repository import AppIndicator
File "/usr/lib/python2.7/site-packages/gi/importer.py", line 76, in load_module
dynamic_module._load()
File "/usr/lib/python2.7/site-packages/gi/module.py", line 242, in _load
version)
File "/usr/lib/python2.7/site-packages/gi/module.py", line 97, in __init__
repository.require(namespace, version)
gi.RepositoryError: Requiring namespace 'Gtk' version '2.0', but '3.0' is already loaded
I played around a bit with Python to try to force the loading of Gtk 2.0 instead of the default version being Gtk 3.0 (I have both on my system), and python prints this warning:
>>> import gi
>>> gi.require_version("Gtk", "2.0")
>>> from gi.repository import Gtk
/usr/lib/python2.7/site-packages/gi/overrides/Gtk.py:46: RuntimeWarning: You have imported the Gtk 2.0 module. Because Gtk 2.0 was not designed for use with introspection some of the interfaces and API will fail. As such this is not supported by the pygobject development team and we encourage you to port your app to Gtk 3 or greater. PyGTK is the recomended python module to use with Gtk 2.0
Looking at the source code, I'd have to patch the whole project to enforce the use of Gtk 2.0 using this method, and I'm not sure it would work (and also that it's the best method, I'm not too knowledgeable about Gtk and gir).
I just wanted to report these issues to the team, in case some of those things could be fixed. I won't import Autokey to Mageia for now, since the Gtk version does not start. As said previously, the Qt version seems to work, so I'd advise Jeffrey to build Autokey himself and to use the Qt version for now.
Regards,
Rémi V. / Akien