Comment by krackers
2 days ago
>To my knowledge, this can be fixed by requesting the OS-level accessibility permissions, which would require a separate user interaction.
Does this imply that running Gregglogger _doesn't_ require granting accessibility input monitoring permission? On osx there's at least 4 ways to monitor inputs I think (iokit level, cgeventap, carbon event monitoring, cocoa global event monitor), I'd really expect all of them to require the input monitoring permission.
It looks like you're correct -- Gregglogger relies on pynput, and its behavior on macOS aligns with the library's documented limitations [1]:
Recent versions of macOS restrict monitoring of the keyboard for security reasons. For that reason, one of the following must be true:
- The process must run as root.
- Your application must be whitelisted under "Enable access for assistive devices." Note that this might require packaging your application, since otherwise the entire Python installation must be whitelisted.
- On macOS versions after Mojave, you may also need to whitelist your terminal application if running your script from a terminal.
[1] https://pynput.readthedocs.io/en/stable/limitations.html#mac...