This software is no longer being updated, mainly due to Python's performance limitations. (see Abs-C for a replacement, allowing for significantly reduced latency and CPU usage, as well as Wayland support.)
I might also archive this repo at some point.
I created this program as a Linux alternative for apsun's AbsoluteTouch, as I had recently switched to Linux, and couldn't find any alternatives.
Do note that I am still very new to Python (And Git, for that matter).
Please do not hesitate if you have any sugesstions, questions etc.
Tested on Linux Mint 19.1
-
A laptop with a Synaptics touchpad (others may work, check if the device reports ABS_X and ABS_Y)
-
Python 3.6.7 (other versions are untested, but might work).
-
python3-evdev
-
python3-xlib
-
numpy
Optional - run setup.sh as root (note that this script will not work on non Ubuntu/Debian-based distros.)
Or manually install:
sudo apt-get update
sudo apt-get install evtest python3-evdev
pip3 install python3-xlib numpy
If you have previously added your user to the input group, then I strongly recommend you undo this change using:
sudo gpasswd -d $USER input
I say this because i've since discovered that this is a security risk, allowing all programs read access to all input devices, without root.
I have not yet implemented a config file, so all configuration must be done in the code itself.
See the config section of Abs.py for more info.
https://discord.gg/vKJfPyU Feel free to hang out, chat, and discuss Abs and other projects.
Add config file handling
Add Windows support
Get screen resolution automatically
Touchpad aspect ratio compensation
Request root only if needed
Get touchpad limits and path automatically(thanks RotatingSpinner)