feat: replace pynput by evdev#103
Conversation
|
check the conflicts when you can please, most likely cause by merging the previous PR. |
207d3c4 to
7205728
Compare
|
@rkmax Something on Arch requiring tkinter or python-tk unsure. Think x11 |
|
This is a really HUGE change, not sure how to go about it, but I somewhat agree with as wayland starts to become the de-facto protocol. I believe this might be a problem with installing the dependency. But well, gotta start somewhere. For now, running with poetry from your branch: I don't have Xauthority at all because I don't use X at all and have no need to have any settings there. Dependency on this file should be removed. |
291062e to
01c415e
Compare
|
Been running up the latest push #103 More Discord->#testing-and-pull-testing |
efe1c7b to
6167755
Compare
- add support for old mappings - add autocomplete fields for keys
6167755 to
ccb6c39
Compare
|
@4s3ti I just retaking this. I cleanup the history. I give up for now regarding the wayland support. I did different experiments even writenn modules in C but when test on different version sometimes fails let me know if you can merge this one |
|
I am okay with merging this, but I am not so sure what is the best way to handle this ... this feels more backwards incompatible change 🤔 maybe should be marked as "BREAKING CHANGE" and made a major release? |
Does this break anything? At a glance, it looks like there is code to handle the old pynput keypress value mappings, so I don't think there are any breaking changes with respect to the config json.
Nevermind, I found a way to get it to work @rkmax This issue explains what is going on: https://gitlab.gnome.org/GNOME/mutter/-/issues/1869
Here is a more complete implementation: 93d206c |
|
thanks @ajbucci for pointing a solution for wayland. I really appreciate. @4s3ti regarding if is a breaking change. I dont think so... no functionality were touched more than the dependencies but leave the PR open since I'll fixes mentioned by @ajbucci to see if that works correctly on ubuntu 22/23 as well like if I need to add addtiional checks/steps in the installations instructions |
|
alright .. looks good to me then ... let me know when its okay to be merged then ... or .. rather ,, I think you now have the permissions for it as well @rkmax |
|
I just include the logic to exclude the bad ecodes and include the permissions docs and scripts for installations |
|
lgtm @rkmax is this ready for being merged? |
* replace pynput by evdev * add support for old mappings * add autocomplete fields for keys * ignore vuln until upgrade * remove bad ecodes * Add uaccess tag for uinput kernel module in udev rules * Add uinput rule to udev configuration * Fix formatting in _initialize_uinput function


Description of the changes
The
pynputlibrary is not well-supported by Wayland; therefore, it has been replaced withevdev, which appears to be a more robust option.The
keysfield has been substituted by a text editor featuring real-time autocomplete functionality, as opposed to a fixed list.In the event that an invalid key name is entered, a warning will be displayed in the system tray.
Demo
2023-10-18_07-29-24.mp4