New features have since been added to AutoKey-Py3 after the initial porting. Read new features for details.
Please remove previous installations of both AutoKey and AutoKey-Py3 fully before installing!
Python modules (common):
GTK frontend only:
- GObject Introspection
QT frontend only:
Manual install via pip
pip will automatically resolve and install dependencies, but dbus-python requires the dbus headers be present on your system. These are usually installed through your package manager, and usually are named dbus-devel or libdbus-dev or similar.
pip3 install autokey # or, if you want the latest from this repository, pip3 install git+https://github.com/autokey-py3/autokey
The "--user" option for pip may be added to install for the current user only.
Try the (experimental) PPA! Note that only Ubuntu 16.04, Mint 18, or above are supported for now as they supply Python 3.5 by default. Earlier versions of Python <= 3.4 require the
typing module be installed separately.
sudo add-apt-repository ppa:troxor/autokey sudo apt update sudo apt install autokey-gtk
Packages for other Debian-based distros can be built using files under
Available in the AUR. Unfortunately, Arch has removed the kdebindings-python package, so only the GTK frontend is usable for now.
Available via layman.
layman -a y2kbadbug emerge --sync emerge -av autokey-py3
# make sure that autokey is in your search path. PATH="$HOME/.local/bin/:$PATH" # if installed with the --user option autokey-gtk # to start with the GTK3 GUI *OR* autokey-qt # to start with the QT4 GUI
Porting your scripts from Python 2
Changes were made to source code to keep the scripting API stable.
system.exec_command() returns a string. But if you use functions from the standard library you will have to fix that, as your script runs on a Python 3 interpreter. For example, expect subprocess.check_output() to return a bytes object.
2to3 can be used to do automatically translate source code.
- Some guides on porting code to Python 3:
We'd appreciate it if you take a look at Problem reporting guide before posting. By providing as much information as you can, you'll have a much better chance of getting a good answer in less time.
Bug reports and Pull Requests
Bug reports and PRs are welcome. Please use the GitHub Issue Tracker for bug reports. When reporting a suspected bug, please test against latest
git HEAD and make sure to include as much information as possible to expedite troubleshooting and resolution. For example,
- required: How to reproduce the issue you are experiencing
- Python tracebacks, if any
- Verbose logging information obtained by starting the frontend (
autokey-qt) from terminal with the
GNU GPL v3.