Package: keyd-application-mapper Version: 2.5.0-2 Severity: grave Tags: a11y patch Justification: renders package unusable X-Debbugs-Cc: l...@martinmarshall.com
Dear Maintainer, * What led up to the situation? Installed the keyd-application-mapper package, which depends on the keyd package and the keyd executable. Due to a naming conflict, Debian has renamed the "/usr/bin/keyd" binary to "/usr/bin/keyd.rvaiya". However, the "/usr/bin/keyd-application-mapper" python script has not been updated to reflect the new name. A prerequisite step to test this is that you must copy keyd's gnome-shell- extension from the installed package to the appropriate location in the home directory and edit it to work in Gnome 48: 1. Copy the gnome-shell extension directory from "/usr/share/keyd/gnome- extension-45" to "~/.local/share/gnome-shell/extensions/keyd". 2. Edit the "~/.local/share/gnome-shell/extensions/keyd/metadata.json" file to allow use of the extension on Gnome 48 by adding "48" to the "shell-version" list near the bottom. 3. Log out and back into Gnome, in order to register the shell extension. Now, when running "/usr/bin/keyd-application-mapper" in a terminal and then opening the Gnome Extensions program, keyd-application-mapper issues the error, "FileNotFoundError: [Errno 2] No such file or directory: 'keyd'". * What exactly did you do (or not do) that was effective (or ineffective)? It's a very simple fix to workaround the problem. I copied "/usr/bin/keyd-application-mapper" to "~/.local/bin/keyd-application- mapper", which is in my user's PATH. Then I edited the definition of the "on_window_change" function in that script, so that when it calls "subprocess.run", it looks for "keyd.rvaiya" instead of "keyd". * What was the outcome of this action? Editing the "keyd-application-mapper" script corrected the problem. After doing so, there is no error, and the keyd Gnome-shell extension works as expected. * What outcome did you expect instead? Expected that it would have already been looking for "keyd.rvaiya" without having to edit the script, since Debian had renamed the "keyd" binary to that. -- System Information: Debian Release: 13.0 APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 6.12.27-amd64 (SMP w/16 CPU threads; PREEMPT) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages keyd-application-mapper depends on: ii keyd 2.5.0-2 ii python3 3.13.3-1 Versions of packages keyd-application-mapper recommends: ii python3-xlib 0.33-3 keyd-application-mapper suggests no packages. -- no debconf information
--- /usr/bin/keyd-application-mapper 2025-03-18 02:29:23.000000000 -0400 +++ keyd-application-mapper 2025-05-18 19:53:14.680690269 -0400 @@ -494,7 +494,7 @@ print(f'Active window: {cls}|{title}') bindings = lookup_bindings(cls, title) - subprocess.run(['keyd', 'bind', 'reset', *bindings], stdout=subprocess.DEVNULL) + subprocess.run(['keyd.rvaiya', 'bind', 'reset', *bindings], stdout=subprocess.DEVNULL) mon = get_monitor(on_window_change)