rbreaves / kinto

Mac-style shortcut keys for Linux & Windows.
http://kinto.sh
GNU General Public License v2.0
4.27k stars 214 forks source link

keyboard unresponsive while kinto is active - can't get install to work #684

Open buzuddha opened 2 years ago

buzuddha commented 2 years ago

Describe the bug A complete install using either the method results in an unresponsive keyboard, perhaps related to xkeysnail.

Expected behavior Install kinto.sh without error and have the bomb mac shortcuts so I can actually get work done.

Install Type: Bare Metal Distro: 5.18.1-arch1-1 DE: Gnome Branch: ? Commit: b38c1a1

Logs and status if relevant

xkeysnail
sudo systemctl status xkeysnail
x xkeysnail.service - xkeysnail
     Loaded: loaded (/usr/lib/systemd/system/xkeysnail.service; disabled; vendor preset: disabled)
     Active: failed (Result: signal) since Sun 2022-06-05 12:44:10 EDT; 30s ago
   Duration: 10.194s
    Process: 108458 ExecStart=/usr/bin/sudo /bin/bash -c /usr/bin/xhost +SI:localuser:root && /home/hugh/.config/kinto/killdups.sh && /usr/bin/xkeysnail --quiet --watch /home/hugh/.config/kinto/kinto.py (code=killed, signal=TERM)
    Process: 108495 ExecStop=/usr/bin/sudo /bin/bash -c /usr/bin/sudo pkill -f bin/xkeysnail && exit 0 (code=killed, signal=TERM)
   Main PID: 108458 (code=killed, signal=TERM)
        CPU: 137ms

Jun 05 12:44:10 blackbox sudo[108495]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c /usr/bin/sudo pkill -f bin/xkeysnail && exit 0
Jun 05 12:44:10 blackbox sudo[108495]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Jun 05 12:44:10 blackbox sudo[108497]:     root : PWD=/ ; USER=root ; COMMAND=/usr/sbin/pkill -f bin/xkeysnail
Jun 05 12:44:10 blackbox sudo[108497]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Jun 05 12:44:10 blackbox sudo[108495]: pam_unix(sudo:session): session closed for user root
Jun 05 12:44:10 blackbox sudo[108497]: pam_unix(sudo:session): session closed for user root
Jun 05 12:44:10 blackbox systemd[1]: xkeysnail.service: Control process exited, code=killed, status=15/TERM
Jun 05 12:44:10 blackbox sudo[108458]: pam_unix(sudo:session): session closed for user root
Jun 05 12:44:10 blackbox systemd[1]: xkeysnail.service: Failed with result 'signal'.
Jun 05 12:44:10 blackbox systemd[1]: Stopped xkeysnail.
sudo journalctl --unit=xkeysnail.service -b
Jun 05 12:47:20 blackbox systemd[1]: Started xkeysnail.
Jun 05 12:47:20 blackbox sudo[109018]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c /usr/bin/xhost +SI:localuser:root && /home/hugh/.config/kinto/killdups.sh && /usr/bin/xkeysnail --quiet --watch /home/hugh/.config/kinto/kinto.py
Jun 05 12:47:20 blackbox sudo[109018]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Jun 05 12:47:20 blackbox sudo[109024]: localuser:root being added to access control list
Jun 05 12:48:26 blackbox systemd[1]: Stopping xkeysnail...
Jun 05 12:48:26 blackbox sudo[109140]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c /usr/bin/sudo pkill -f bin/xkeysnail && exit 0
Jun 05 12:48:26 blackbox sudo[109140]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Jun 05 12:48:26 blackbox sudo[109142]:     root : PWD=/ ; USER=root ; COMMAND=/usr/sbin/pkill -f bin/xkeysnail
Jun 05 12:48:26 blackbox sudo[109142]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Jun 05 12:48:26 blackbox sudo[109140]: pam_unix(sudo:session): session closed for user root
Jun 05 12:48:26 blackbox sudo[109142]: pam_unix(sudo:session): session closed for user root
Jun 05 12:48:26 blackbox systemd[1]: xkeysnail.service: Control process exited, code=killed, status=15/TERM
Jun 05 12:48:26 blackbox sudo[109018]: pam_unix(sudo:session): session closed for user root
Jun 05 12:48:26 blackbox systemd[1]: xkeysnail.service: Failed with result 'signal'.
Jun 05 12:48:26 blackbox systemd[1]: Stopped xkeysnail.
xkb
`systemctl --user status keyswap
`Unit keyswap.service could not be found.

`journalctl --user-unit=keyswap.service -b
`no output

Additional context

./setup.py
Kinto 1.2-13 build b38c1a1
Type in Linux like it's a Mac.

Overlay key,  'super' , detected. Will be removing so Super-Space can remap to Cmd-Space for app launching..
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: pillow in /home/hugh/.local/lib/python3.10/site-packages (9.1.1)
Using systemd...
localuser:root being added to access control list
fatal: destination path 'xkeysnail' already exists and is not an empty directory.
Processing /home/hugh/builds/kinto/xkeysnail
Requirement already satisfied: evdev in /usr/lib/python3.10/site-packages (from xkeysnail==0.3.0) (1.5.0)
Requirement already satisfied: python-xlib in /usr/lib/python3.10/site-packages (from xkeysnail==0.3.0) (0.31)
Requirement already satisfied: inotify_simple in /usr/lib/python3.10/site-packages (from xkeysnail==0.3.0) (1.3.5)
Requirement already satisfied: six>=1.10.0 in /usr/lib/python3.10/site-packages (from python-xlib->xkeysnail==0.3.0) (1.16.0)
Using legacy 'setup.py install' for xkeysnail, since package 'wheel' is not installed.
Installing collected packages: xkeysnail
  Attempting uninstall: xkeysnail
    Found existing installation: xkeysnail 0.3.0
    Uninstalling xkeysnail-0.3.0:
      Successfully uninstalled xkeysnail-0.3.0
    Running setup.py install for xkeysnail ... done
Successfully installed xkeysnail-0.3.0
/usr/bin/xkeysnail
Service file added to /usr/lib/systemd/system/xkeysnail.service
Ownership set for root...
Permissions set to 644...
Created soft symlink...
ln: failed to create symbolic link '/etc/systemd/system/graphical.target.wants/xkeysnail.service': No such file or directory
Failed to create soft symlink for graphical target...
Removed "/etc/systemd/system/xkeysnail.service".
Adding xhost fix...

Kinto install is complete.

If the setup wizard fails to appear then please run this command.
~/.config/kinto/gui/kinto-gui.py

You can then either Google what dependencies you may be missing
or open an issue ticket.

Gnome may not support appindicators well, so by default you may need to install packages before enabling the System Tray.
You may try one of the following extensions.
    1) AppIndicator and KStatusNotifierItem Support
    2) TopIcons Plus

Note: you may want these supporting packages

'sudo apt install gnome-tweaks gnome-shell-extension-appindicator gir1.2-appindicator3-0.1'

pacman -Q | grep appindicator  
gnome-shell-extension-appindicator 42-1
libappindicator-gtk3 12.10.0.r296-2

pacman -Q | grep tweaks 
gnome-tweaks 42beta+r9+gc66d8c3-1

which xkeysnail
/usr/bin/xkeysnail

Screenshot from 2022-06-05 13-09-36

Not exactly sure what I can do here. I've tried to enable xkeysnail, but doesn't seem to have an effect. Can't see keyswap. Happy for any ideas!

Thanks!

joshgoebel commented 2 years ago
buzuddha commented 2 years ago

Hi Josh! Thanks for your reply. Looks like the config.py is missing (see below). The xkeysnail github page provides an example config.py but this appears to be for emacs shortcuts and I'm guessing that kinto is supposed to have its own config.

Not sure if I should just grab the example config. There's no config.py in the kinto github repo. Any suggestion?

/usr/bin/sudo /bin/bash -c /usr/bin/xhost +SI:localuser:root && /home/hugh/.config/kinto/killdups.sh && /usr/bin/xkeysnail --watch /home/hugh/.config/kinto/kinto.py
[sudo] password for hugh: 
access control enabled, only authorized clients can connect
SI:localuser:hugh
SI:localuser:root

██╗  ██╗██╗  ██╗███████╗██╗   ██╗
╚██╗██╔╝██║ ██╔╝██╔════╝╚██╗ ██╔╝
 ╚███╔╝ █████╔╝ █████╗   ╚████╔╝
 ██╔██╗ ██╔═██╗ ██╔══╝    ╚██╔╝
██╔╝ ██╗██║  ██╗███████╗   ██║
╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝   ╚═╝
  ███████╗███╗   ██╗ █████╗ ██╗██╗
  ██╔════╝████╗  ██║██╔══██╗██║██║
  ███████╗██╔██╗ ██║███████║██║██║
  ╚════██║██║╚██╗██║██╔══██║██║██║
  ███████║██║ ╚████║██║  ██║██║███████╗
  ╚══════╝╚═╝  ╚═══╝╚═╝  ╚═╝╚═╝╚══════╝
                             v0.3.0

Failed to open `uinput` in write mode.
Make sure that you have executed xkeysnail with root privilege such as

    $ sudo xkeysnail config.py

sudo xkeysnail config.py

██╗  ██╗██╗  ██╗███████╗██╗   ██╗
╚██╗██╔╝██║ ██╔╝██╔════╝╚██╗ ██╔╝
 ╚███╔╝ █████╔╝ █████╗   ╚████╔╝
 ██╔██╗ ██╔═██╗ ██╔══╝    ╚██╔╝
██╔╝ ██╗██║  ██╗███████╗   ██║
╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝   ╚═╝
  ███████╗███╗   ██╗ █████╗ ██╗██╗
  ██╔════╝████╗  ██║██╔══██╗██║██║
  ███████╗██╔██╗ ██║███████║██║██║
  ╚════██║██║╚██╗██║██╔══██║██║██║
  ███████║██║ ╚████║██║  ██║██║███████╗
  ╚══════╝╚═╝  ╚═══╝╚═╝  ╚═╝╚═╝╚══════╝
                             v0.3.0

Traceback (most recent call last):
  File "/usr/bin/xkeysnail", line 6, in <module>
    cli_main()
  File "/usr/lib/python3.10/site-packages/xkeysnail/__init__.py", line 61, in cli_main
    eval_file(args.config)
  File "/usr/lib/python3.10/site-packages/xkeysnail/__init__.py", line 5, in eval_file
    with open(path, "rb") as file:
FileNotFoundError: [Errno 2] No such file or directory: 'config.py'
joshgoebel commented 2 years ago

Linux/kinto.py

It's in the repo.

hellozach commented 1 year ago

@buzuddha I was having the same issue on Ubuntu 22.04 when using Wayland vs Xorg. To resolve it I followed these steps:

  1. Uninstal Kinto
  2. Disable Wayland in /etc/gdm3/custom.conf (source)
  3. Reboot
  4. Run xhost +SI:localuser:root (source)
  5. Re-install Kinto
buzuddha commented 1 year ago

Oh sweet! I'll give this a shot when I'm back from vacation! I'll let you know how it goes.

Thanks,

Buzuddha

On Sat, Aug 27, 2022, 19:20 Zach Johnson @.***> wrote:

@buzuddha https://github.com/buzuddha I was having the same issue on Ubuntu 22.04 when using Wayland vs Xorg. To resolve it I followed these steps:

  1. Uninstal Kinto
  2. Disable Wayland in /etc/gdm3/custom.conf (source https://askubuntu.com/questions/1410256/how-do-i-use-x-instead-of-wayland-on-22-04 )
  3. Reboot
  4. Run xhost +SI:localuser:root (source https://github.com/mooz/xkeysnail#usage)
  5. Re-install Kinto

— Reply to this email directly, view it on GitHub https://github.com/rbreaves/kinto/issues/684#issuecomment-1229379175, or unsubscribe https://github.com/notifications/unsubscribe-auth/AJTISHO77X6QIKWSKPAY6LDV3LZILANCNFSM5X5TWDDQ . You are receiving this because you were mentioned.Message ID: @.***>

rbreaves commented 1 year ago

Hmmmm.. typically you can click on a gear icon or something on the login screen to switch to X11 mode. I may need to rework the installer - it’s not supposed to install on Wayland at all & tells users that when it properly detects wayland running. Something has changed though or maybe xwayland interferes.. I dunno.

buzuddha commented 1 year ago

So I'm back to linux and want to actually get this working. I've gone through a fresh install of arch and am in Gnome but logged in with the x11 session via the gear in gdm.

The install fails but xkeysnail opens and disables the entire keyboard

Install Type: Bare Metal Distro: 6.2.6-arch1-1 DE: Gnome X11 (though wayland is default - is there wayland support?) Branch: master? Commit: git rev-parse --short HEAD?

Logs and status if relevant

# xkeysnail

██╗  ██╗██╗  ██╗███████╗██╗   ██╗
╚██╗██╔╝██║ ██╔╝██╔════╝╚██╗ ██╔╝
 ╚███╔╝ █████╔╝ █████╗   ╚████╔╝
 ██╔██╗ ██╔═██╗ ██╔══╝    ╚██╔╝
██╔╝ ██╗██║  ██╗███████╗   ██║
╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝   ╚═╝
  ███████╗███╗   ██╗ █████╗ ██╗██╗
  ██╔════╝████╗  ██║██╔══██╗██║██║
  ███████╗██╔██╗ ██║███████║██║██║
  ╚════██║██║╚██╗██║██╔══██║██║██║
  ███████║██║ ╚████║██║  ██║██║███████╗
  ╚══════╝╚═╝  ╚═══╝╚═╝  ╚═╝╚═╝╚══════╝
                             v0.3.0

usage: xkeysnail [-h] [--devices device [device ...]] [--watch] [-q] config.py
xkeysnail: error: the following arguments are required: config.py
sudo systemctl status xkeysnail

xkeysnail.service
     Loaded: not-found (Reason: Unit xkeysnail.service not found.)
     Active: failed (Result: signal) since Wed 2023-03-15 23:54:45 EDT; 6min ago
   Duration: 10.833s
   Main PID: 19892 (code=killed, signal=TERM)
        CPU: 159ms

Mar 15 23:54:45 crabhouse sudo[19927]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/sudo pkill -f bin/xkeysnail && exit 0'
Mar 15 23:54:45 crabhouse sudo[19927]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:54:45 crabhouse sudo[19929]:     root : PWD=/ ; USER=root ; COMMAND=/usr/sbin/pkill -f bin/xkeysnail
Mar 15 23:54:45 crabhouse sudo[19929]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:54:45 crabhouse sudo[19929]: pam_unix(sudo:session): session closed for user root
Mar 15 23:54:45 crabhouse sudo[19927]: pam_unix(sudo:session): session closed for user root
Mar 15 23:54:45 crabhouse systemd[1]: xkeysnail.service: Control process exited, code=killed, status=15/TERM
Mar 15 23:54:45 crabhouse sudo[19892]: pam_unix(sudo:session): session closed for user root
Mar 15 23:54:45 crabhouse systemd[1]: xkeysnail.service: Failed with result 'signal'.
Mar 15 23:54:45 crabhouse systemd[1]: Stopped xkeysnail.
sudo journalctl --unit=xkeysnail.service -b

Mar 15 23:42:11 crabhouse sudo[15833]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/xhost +SI:localuser:root && /home/hugh/.config/kinto/killdups.sh && /usr/bin/xkeysnail ->
Mar 15 23:42:11 crabhouse sudo[15833]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:42:11 crabhouse sudo[15836]: localuser:root being added to access control list
Mar 15 23:42:21 crabhouse systemd[1]: Stopping xkeysnail...
Mar 15 23:42:21 crabhouse sudo[15874]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/sudo pkill -f bin/xkeysnail && exit 0'
Mar 15 23:42:21 crabhouse sudo[15874]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:42:21 crabhouse sudo[15876]:     root : PWD=/ ; USER=root ; COMMAND=/usr/sbin/pkill -f bin/xkeysnail
Mar 15 23:42:21 crabhouse sudo[15876]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:42:21 crabhouse sudo[15876]: pam_unix(sudo:session): session closed for user root
Mar 15 23:42:21 crabhouse sudo[15874]: pam_unix(sudo:session): session closed for user root
Mar 15 23:42:21 crabhouse systemd[1]: xkeysnail.service: Control process exited, code=killed, status=15/TERM
Mar 15 23:42:22 crabhouse sudo[15833]: pam_unix(sudo:session): session closed for user root
Mar 15 23:42:22 crabhouse systemd[1]: xkeysnail.service: Failed with result 'signal'.
Mar 15 23:42:22 crabhouse systemd[1]: Stopped xkeysnail.
Mar 15 23:43:53 crabhouse systemd[1]: Started xkeysnail.
Mar 15 23:43:53 crabhouse sudo[16445]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/xhost +SI:localuser:root && /home/hugh/.config/kinto/killdups.sh && /usr/bin/xkeysnail ->
Mar 15 23:43:53 crabhouse sudo[16445]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:43:53 crabhouse sudo[16448]: localuser:root being added to access control list
Mar 15 23:44:23 crabhouse systemd[1]: Stopping xkeysnail...
Mar 15 23:44:23 crabhouse sudo[16526]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/sudo pkill -f bin/xkeysnail && exit 0'
Mar 15 23:44:23 crabhouse sudo[16526]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:44:23 crabhouse sudo[16528]:     root : PWD=/ ; USER=root ; COMMAND=/usr/sbin/pkill -f bin/xkeysnail
Mar 15 23:44:23 crabhouse sudo[16528]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:44:23 crabhouse sudo[16526]: pam_unix(sudo:session): session closed for user root
Mar 15 23:44:23 crabhouse sudo[16528]: pam_unix(sudo:session): session closed for user root
Mar 15 23:44:23 crabhouse systemd[1]: xkeysnail.service: Control process exited, code=killed, status=15/TERM
Mar 15 23:44:23 crabhouse sudo[16445]: pam_unix(sudo:session): session closed for user root
Mar 15 23:44:23 crabhouse systemd[1]: xkeysnail.service: Failed with result 'signal'.
Mar 15 23:44:23 crabhouse systemd[1]: Stopped xkeysnail.
Mar 15 23:48:01 crabhouse systemd[1]: Started xkeysnail.
Mar 15 23:48:01 crabhouse sudo[17515]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/xhost +SI:localuser:root && /home/hugh/.config/kinto/killdups.sh && /usr/bin/xkeysnail ->
Mar 15 23:48:01 crabhouse sudo[17515]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:48:01 crabhouse sudo[17518]: localuser:root being added to access control list
Mar 15 23:48:09 crabhouse systemd[1]: Stopping xkeysnail...
Mar 15 23:48:09 crabhouse sudo[17544]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/sudo pkill -f bin/xkeysnail && exit 0'
Mar 15 23:48:09 crabhouse sudo[17544]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:48:09 crabhouse sudo[17546]:     root : PWD=/ ; USER=root ; COMMAND=/usr/sbin/pkill -f bin/xkeysnail
Mar 15 23:48:09 crabhouse sudo[17546]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:48:09 crabhouse sudo[17546]: pam_unix(sudo:session): session closed for user root
Mar 15 23:48:09 crabhouse sudo[17544]: pam_unix(sudo:session): session closed for user root
Mar 15 23:48:09 crabhouse systemd[1]: xkeysnail.service: Control process exited, code=killed, status=15/TERM
Mar 15 23:48:10 crabhouse sudo[17515]: pam_unix(sudo:session): session closed for user root
Mar 15 23:48:10 crabhouse systemd[1]: xkeysnail.service: Failed with result 'signal'.
Mar 15 23:48:10 crabhouse systemd[1]: Stopped xkeysnail.
Mar 15 23:53:01 crabhouse systemd[1]: Started xkeysnail.
Mar 15 23:53:01 crabhouse sudo[19206]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/xhost +SI:localuser:root && /home/hugh/.config/kinto/killdups.sh && /usr/bin/xkeysnail ->
Mar 15 23:53:01 crabhouse sudo[19206]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:53:01 crabhouse sudo[19209]: localuser:root being added to access control list
Mar 15 23:54:06 crabhouse systemd[1]: Stopping xkeysnail...
Mar 15 23:54:06 crabhouse sudo[19360]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/sudo pkill -f bin/xkeysnail && exit 0'
Mar 15 23:54:06 crabhouse sudo[19360]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:54:06 crabhouse sudo[19362]:     root : PWD=/ ; USER=root ; COMMAND=/usr/sbin/pkill -f bin/xkeysnail
Mar 15 23:54:06 crabhouse sudo[19362]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:54:06 crabhouse sudo[19362]: pam_unix(sudo:session): session closed for user root
Mar 15 23:54:06 crabhouse sudo[19360]: pam_unix(sudo:session): session closed for user root
Mar 15 23:54:06 crabhouse systemd[1]: xkeysnail.service: Control process exited, code=killed, status=15/TERM
Mar 15 23:54:06 crabhouse sudo[19206]: pam_unix(sudo:session): session closed for user root
Mar 15 23:54:06 crabhouse systemd[1]: xkeysnail.service: Failed with result 'signal'.
Mar 15 23:54:06 crabhouse systemd[1]: Stopped xkeysnail.
Mar 15 23:54:34 crabhouse systemd[1]: Started xkeysnail.
Mar 15 23:54:34 crabhouse sudo[19892]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/xhost +SI:localuser:root && /home/hugh/.config/kinto/killdups.sh && /usr/bin/xkeysnail ->
Mar 15 23:54:34 crabhouse sudo[19892]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Mar 15 23:54:34 crabhouse sudo[19894]: localuser:root being added to access control list
Mar 15 23:54:45 crabhouse systemd[1]: Stopping xkeysnail...
Mar 15 23:54:45 crabhouse sudo[19927]:     root : PWD=/ ; USER=root ; COMMAND=/bin/bash -c '/usr/bin/sudo pkill -f bin/xkeysnail && exit 0'
Mar 15 23:54:45 crabhouse sudo[19927]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)

xkb

systemctl --user status keyswap
Unit keyswap.service could not be found.
journalctl --user-unit=keyswap.service -b
-- No entries --

Screenshots If applicable, add screenshots to help explain your problem.

Additional context

/bin/bash -c "$(wget -qO- https://raw.githubusercontent.com/rbreaves/kinto/HEAD/install/linux.sh || curl -fsSL https://raw.githubusercontent.com/rbreaves/kinto/HEAD/install/linux.sh)"
--2023-03-15 23:54:22--  https://github.com/rbreaves/kinto/archive/refs/heads/master.zip
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving github.com (github.com)... 140.82.112.3
Connecting to github.com (github.com)|140.82.112.3|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/rbreaves/kinto/zip/refs/heads/master [following]
--2023-03-15 23:54:23--  https://codeload.github.com/rbreaves/kinto/zip/refs/heads/master
Resolving codeload.github.com (codeload.github.com)... 140.82.114.10
Connecting to codeload.github.com (codeload.github.com)|140.82.114.10|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/zip]
Saving to: ‘/home/hugh/Downloads/kinto.zip’

/home/hugh/Downloads/kinto.zip                      [ <=>                                                                                                  ] 678.58K  --.-KB/s    in 0.08s   

2023-03-15 23:54:23 (8.02 MB/s) - ‘/home/hugh/Downloads/kinto.zip’ saved [694862]

Archive:  /home/hugh/Downloads/kinto.zip
d2c3b1e9f2696d1b4a3003c6b6c50d9420de783f
replace /home/hugh/Downloads/kinto-master/.gitattributes? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
  inflating: /home/hugh/Downloads/kinto-master/.gitattributes  
  inflating: /home/hugh/Downloads/kinto-master/.github/ISSUE_TEMPLATE/bug_report.md  
  inflating: /home/hugh/Downloads/kinto-master/.github/ISSUE_TEMPLATE/feature_request.md  
  inflating: /home/hugh/Downloads/kinto-master/.github/ISSUE_TEMPLATE/gratitude.md  
  inflating: /home/hugh/Downloads/kinto-master/.github/ISSUE_TEMPLATE/question.md  
  inflating: /home/hugh/Downloads/kinto-master/.github/workflows/01-ubuntu-budgie.yml  
  inflating: /home/hugh/Downloads/kinto-master/.gitignore  
  inflating: /home/hugh/Downloads/kinto-master/LICENSE  
  inflating: /home/hugh/Downloads/kinto-master/README.md  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-black-invert.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-black.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-color-black-invert.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-color-black.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-color-invert-border.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-color-invert.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-color-white-invert.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-color.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-white-invert.ico  
  inflating: /home/hugh/Downloads/kinto-master/assets/kinto-white.ico  
  inflating: /home/hugh/Downloads/kinto-master/install/linux.sh  
  inflating: /home/hugh/Downloads/kinto-master/install/windows.ps1  
  inflating: /home/hugh/Downloads/kinto-master/linux/gnome_logoff.sh  
  inflating: /home/hugh/Downloads/kinto-master/linux/gui/capslock_1200x720.png  
  inflating: /home/hugh/Downloads/kinto-master/linux/gui/keys_1200x720.png  
  inflating: /home/hugh/Downloads/kinto-master/linux/gui/kinto-gui.py  
  inflating: /home/hugh/Downloads/kinto-master/linux/gui/kinto.desktop  
  inflating: /home/hugh/Downloads/kinto-master/linux/gui/tuxbg.png  
  inflating: /home/hugh/Downloads/kinto-master/linux/gui/tuxcry4.png  
  inflating: /home/hugh/Downloads/kinto-master/linux/gui/tuxerror.png  
  inflating: /home/hugh/Downloads/kinto-master/linux/gui/tuxuninstall.png  
  inflating: /home/hugh/Downloads/kinto-master/linux/initkb  
  inflating: /home/hugh/Downloads/kinto-master/linux/killdups.sh  
  inflating: /home/hugh/Downloads/kinto-master/linux/kinto-service.sh  
  inflating: /home/hugh/Downloads/kinto-master/linux/kinto.py  
  inflating: /home/hugh/Downloads/kinto-master/linux/limitedadmins  
  inflating: /home/hugh/Downloads/kinto-master/linux/prexk.sh  
  inflating: /home/hugh/Downloads/kinto-master/linux/root_logoff.sh  
  inflating: /home/hugh/Downloads/kinto-master/linux/system-config/dename.sh  
  inflating: /home/hugh/Downloads/kinto-master/linux/system-config/unipkg.sh  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/icons/kinto-color-16.svg  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/icons/kinto-color.svg  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/icons/kinto-invert-16.svg  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/icons/kinto-invert.svg  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/icons/kinto-solid-16.svg  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/icons/kinto-solid.svg  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/icons/kinto.svg  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/kintotray.desktop  
  inflating: /home/hugh/Downloads/kinto-master/linux/trayapps/appindicator/kintotray.py  
  inflating: /home/hugh/Downloads/kinto-master/linux/vscode_keybindings.json  
  inflating: /home/hugh/Downloads/kinto-master/linux/xkeysnail.desktop  
  inflating: /home/hugh/Downloads/kinto-master/linux/xkeysnail.service  
  inflating: /home/hugh/Downloads/kinto-master/linux/xkeysnail_sysv.desktop  
  inflating: /home/hugh/Downloads/kinto-master/linux/xkeystart.sh  
  inflating: /home/hugh/Downloads/kinto-master/prekinto.py  
  inflating: /home/hugh/Downloads/kinto-master/setup.py  
  inflating: /home/hugh/Downloads/kinto-master/windows/NoShell.vbs  
  inflating: /home/hugh/Downloads/kinto-master/windows/WinToMac_AltWin_swap.skl  
  inflating: /home/hugh/Downloads/kinto-master/windows/autohotkey.ps1  
  inflating: /home/hugh/Downloads/kinto-master/windows/detectUSB.ahk  
  inflating: /home/hugh/Downloads/kinto-master/windows/kinto-start.vbs  
  inflating: /home/hugh/Downloads/kinto-master/windows/kinto.ahk  
  inflating: /home/hugh/Downloads/kinto-master/windows/standard_ctrlalt_swap.skl  
  inflating: /home/hugh/Downloads/kinto-master/windows/theme_ubuntu.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/toggle_kb.bat  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/macbook_winctrl_capsesc_swap.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/macbook_winctrl_swap.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/macbook_winctrl_swap.skl  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/remove_keyswap.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/standard_ctrlalt_capsesc_swap.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/standard_ctrlalt_swap.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/theme_campbell.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/theme_legacy.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/theme_onehalfdark.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/unused/theme_onehalflight.reg  
  inflating: /home/hugh/Downloads/kinto-master/windows/usb.vbs  
  inflating: /home/hugh/Downloads/kinto-master/xkeysnail_service.sh  
Installing Kinto...
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).

Kinto  build 
Type in Linux like it's a Mac.

Overlay key,  'super' , detected. Will be removing so Super-Space can remap to Cmd-Space for app launching..
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: pillow in /home/hugh/.local/lib/python3.10/site-packages (9.4.0)
Using systemd...
localuser:root being added to access control list
fatal: destination path 'xkeysnail' already exists and is not an empty directory.
Processing /home/hugh/Downloads/kinto-master/xkeysnail
  Preparing metadata (setup.py) ... done
Requirement already satisfied: evdev in /usr/lib/python3.10/site-packages (from xkeysnail==0.3.0) (1.6.1)
Requirement already satisfied: python-xlib in /usr/lib/python3.10/site-packages (from xkeysnail==0.3.0) (0.33)
Requirement already satisfied: inotify_simple in /usr/lib/python3.10/site-packages (from xkeysnail==0.3.0) (1.3.5)
Requirement already satisfied: six>=1.10.0 in /usr/lib/python3.10/site-packages (from python-xlib->xkeysnail==0.3.0) (1.16.0)
Building wheels for collected packages: xkeysnail
  Building wheel for xkeysnail (setup.py) ... done
  Created wheel for xkeysnail: filename=xkeysnail-0.3.0-py3-none-any.whl size=17520 sha256=1ba61e69adbb60ce692290e15fb04f821e733cd0f3c6c6f9e3d66d38a7769b3c
  Stored in directory: /tmp/pip-ephem-wheel-cache-y29loc2n/wheels/11/e8/3c/46d58556f98ee7960b72902c3c2eca80a6058b35c7db9ab85f
Successfully built xkeysnail
Installing collected packages: xkeysnail
  Attempting uninstall: xkeysnail
    Found existing installation: xkeysnail 0.3.0
    Uninstalling xkeysnail-0.3.0:
      Successfully uninstalled xkeysnail-0.3.0
Successfully installed xkeysnail-0.3.0
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
/usr/bin/xkeysnail
Service file added to /usr/lib/systemd/system/xkeysnail.service
Ownership set for root...
Permissions set to 644...
Created soft symlink...
ln: failed to create symbolic link '/etc/systemd/system/graphical.target.wants/xkeysnail.service': No such file or directory
Failed to create soft symlink for graphical target...
Failed to disable unit: Refusing to operate on alias name or linked unit file: xkeysnail.service
Adding xhost fix...

Kinto install is complete.

If the setup wizard fails to appear then please run this command.
~/.config/kinto/gui/kinto-gui.py

You can then either Google what dependencies you may be missing
or open an issue ticket.

Gnome may not support appindicators well, so by default you may need to install packages before enabling the System Tray.
You may try one of the following extensions.
    1) AppIndicator and KStatusNotifierItem Support
    2) TopIcons Plus

Note: you may want these supporting packages
'sudo apt install gnome-tweaks gnome-shell-extension-appindicator gir1.2-appindicator3-0.1'

This part to mee seems like the first issue that presents itself. I've googled but not much clarity on how to fix this.

fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
buzuddha commented 1 year ago

Looked into hellozach's advice. In /etc/gdm/custom.conf WaylandEnable=false was already there.

The other post cites errors I'm not seeing. But if I run


sudo xkeysnail kinto.py

██╗  ██╗██╗  ██╗███████╗██╗   ██╗
╚██╗██╔╝██║ ██╔╝██╔════╝╚██╗ ██╔╝
 ╚███╔╝ █████╔╝ █████╗   ╚████╔╝
 ██╔██╗ ██╔═██╗ ██╔══╝    ╚██╔╝
██╔╝ ██╗██║  ██╗███████╗   ██║
╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝   ╚═╝
  ███████╗███╗   ██╗ █████╗ ██╗██╗
  ██╔════╝████╗  ██║██╔══██╗██║██║
  ███████╗██╔██╗ ██║███████║██║██║
  ╚════██║██║╚██╗██║██╔══██║██║██║
  ███████║██║ ╚████║██║  ██║██║███████╗
  ╚══════╝╚═╝  ╚═══╝╚═╝  ╚═╝╚═╝╚══════╝
                             v0.3.0

No keyboard devices specified via (--devices) option.
xkeysnail picks up keyboard-ish devices from the list below:

--------------------------------------------------------------------------------------------------
Device               Name                                Phys
--------------------------------------------------------------------------------------------------
/dev/input/event0    Power Button                        PNP0C0C/button/input0
/dev/input/event1    Power Button                        LNXPWRBN/button/input0
/dev/input/event2    ASUSTeK ROG Strix Flare PNK LTD     usb-0000:09:00.3-6.1/input0
/dev/input/event5    Logitech MX Ergo                    usb-0000:09:00.3-1/input2:3
/dev/input/event3    ASUSTeK ROG Strix Flare PNK LTD Consumer Control usb-0000:09:00.3-6.1/input2
/dev/input/event7    ASUSTeK ROG Strix Flare PNK LTD System Control usb-0000:09:00.3-6.1/input2
/dev/input/event8    ASUSTeK ROG Strix Flare PNK LTD     usb-0000:09:00.3-6.1/input2
/dev/input/event9    ASUSTeK ROG Strix Flare PNK LTD Mouse usb-0000:09:00.3-6.1/input2
/dev/input/event4    ASUSTeK ROG Strix Flare PNK LTD     usb-0000:09:00.3-6.1/input3
/dev/input/event11   Logitech K400 Plus                  usb-0000:09:00.3-1/input2:1
/dev/input/event12   C-Media Electronics Inc.       USB PnP Sound Device usb-0000:09:00.1-3/input2
/dev/input/event13   PC Speaker                          isa0061/input0
/dev/input/event14   HDA ATI HDMI HDMI/DP,pcm=3          ALSA
/dev/input/event15   HDA ATI HDMI HDMI/DP,pcm=7          ALSA
/dev/input/event16   HDA ATI HDMI HDMI/DP,pcm=8          ALSA
/dev/input/event17   HDA ATI HDMI HDMI/DP,pcm=9          ALSA
/dev/input/event18   HDA ATI HDMI HDMI/DP,pcm=10         ALSA
/dev/input/event19   HD-Audio Generic Front Mic          ALSA
/dev/input/event20   HD-Audio Generic Rear Mic           ALSA
/dev/input/event21   HD-Audio Generic Line               ALSA
/dev/input/event22   HD-Audio Generic Line Out Front     ALSA
/dev/input/event23   HD-Audio Generic Line Out Surround  ALSA
/dev/input/event24   HD-Audio Generic Line Out CLFE      ALSA
/dev/input/event25   HD-Audio Generic Front Headphone    ALSA
/dev/input/event6    CHERRY DW 9000KB Keyboard           88:63:df:8a:0c:e3
/dev/input/event10   py-evdev-uinput                     py-evdev-uinput

Okay, now enable remapping on the following device(s):

------------------------------------------------------------------------------------
Device               Name                                Phys
------------------------------------------------------------------------------------
/dev/input/event2    ASUSTeK ROG Strix Flare PNK LTD     usb-0000:09:00.3-6.1/input0
/dev/input/event4    ASUSTeK ROG Strix Flare PNK LTD     usb-0000:09:00.3-6.1/input3
/dev/input/event6    CHERRY DW 9000KB Keyboard           88:63:df:8a:0c:e3

WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
LC-X
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
LM-X
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
LM-X
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
LM-C
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
LC-X
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
LC-V
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
A
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
S
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
D
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
F
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
A
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
S
WM_CLASS 'gnome-text-editor' | active keymaps = [Anonymous keymap, General GUI, Wordwise - not vscode]
D
WM_CLASS 'kgx' | active keymaps = [Tab Navigation for apps that want Ctrl+Shift+Tab/Ctrl+Tab, Special overrides for terminals, General GUI, Wordwise - not vscode, terminals]
LC-C
WM_CLASS 'kgx' | active keymaps = [Tab Navigation for apps that want Ctrl+Shift+Tab/Ctrl+Tab, Special overrides for terminals, General GUI, Wordwise - not vscode, terminals]
LC-X
WM_CLASS 'kgx' | active keymaps = [Tab Navigation for apps that want Ctrl+Shift+Tab/Ctrl+Tab, Special overrides for terminals, General GUI, Wordwise - not vscode, terminals]
LC-Z
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE
WM_CLASS 'Brave-browser' | active keymaps = [Chrome Browsers, General Web Browsers, Anonymous keymap, General GUI, Wordwise - not vscode]
BACKSPACE

The bottom is me mashing keys that don't do anything. By closing the terminal the keyboard works again.

xhost +SI:localuser:root doesn't fix anything for me.

RedBearAK commented 1 year ago

@buzuddha

By closing the terminal the keyboard works again.

Yes, closing the terminal ends the xkeysnail process that you ran in the terminal, so it gets keyboard control back.

This part is technically not a problem, it's been there a long time:

fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).

No one seems to know anything about why xkeysnail has started failing in this way (dead keyboard, no output) on different distros lately. The only solution I've found is switching to keyszer, the xkeysnail fork created by joshgoebel.

Some others have been able to follow the instructions here to get a working Kinto config:

https://github.com/rbreaves/kinto/pull/750#issuecomment-1451170466

buzuddha commented 1 year ago

Thanks RedBearAK. I'm halfway through the keyszer instructions but am stumped.

What does this mean?

"need to drop the two files attached to this PR in your Kinto config folder"

What is a PR? Where might these be attached?

RedBearAK commented 1 year ago

@buzuddha

The page where the comment thread is located is a “Pull Request” that would change 2 files. At the top of the thread you’ll see something that says “Files changed (2)”. Go there and you would see the two files. But then you would have to figure out how to download the raw files.

Instead, I’d recommend grabbing the newer version of my config from a comment further down the thread.

https://github.com/rbreaves/kinto/pull/750#issuecomment-1454752090

But one of the include files in the zip may have two extensions “.py.py” that you may need to fix.

buzuddha commented 1 year ago

Hi @RedBearAK, thanks for the explanation, I'm not so well versed. Ok so I pulled the toshy.zip and put everything in the correct spot. Sidenote, I had to manually load the uinput module for keyszer to start.

This still killed my keyboard. In fact it killed mouse input too! I could see key presses/mouse clicks in the terminal, and see remaps indicated, but nothing happening. The first time I ran it, I realized I didn't have an F16 so had to hard reset. Ack!

(!!)    ####################   Welcome to Toshy!   ####################

(##)    This is a highly customized fork of the config file that powers        
    Kinto.sh, by Ben Reaves (https://kinto.sh)

(##)    All credit for the basis of this goes to Ben Reaves        
    (https://github.com/rbreaves/) and much assistance        
    was provided by Josh Goebel, the developer of the        
    xkeysnail fork "keyszer" (http://github.com/joshgoebel/keyszer)

(CG) User config sees: DISTRO_NAME = None
(CG) User config sees: DESKTOP_ENV = 'gnome'
(--) WATCH: Watching for new devices to hot-plug.
(--) Autodetecting all keyboards (--device not specified)
(+K) Grabbing Compx 2.4G Wireless Receiver (/dev/input/event6)
(+K) Grabbing Compx 2.4G Wireless Receiver Keyboard (/dev/input/event9)
(+K) Grabbing ASUSTeK ROG Strix Flare PNK LTD (/dev/input/event3)
(+K) Grabbing Logitech K400 Plus (/dev/input/event16)
(+K) Grabbing ASUSTeK ROG Strix Flare PNK LTD (/dev/input/event5)
(+K) Grabbing Logitech MX Ergo (/dev/input/event11)
(+K) Grabbing CHERRY DW 9000KB Keyboard (/dev/input/event2)
(--) Ready to process input.

(II) in LEFT_ALT (press)
(DD) on_key LEFT_ALT press
(DD) suspending keys [LAlt<Key.LEFT_ALT>]

(II) in BTN_MOUSE (press)
(DD) on_key BTN_MOUSE press
(OO) press BTN_MOUSE 1679152414.141624

(II) in BTN_MOUSE (release)
(DD) on_key BTN_MOUSE release
(OO) release BTN_MOUSE 1679152414.2041388

(II) in TAB (press)
(DD) on_key TAB press
(DD) resuming keys: [<Key.LEFT_ALT: 56>]
(OO) press LEFT_ALT 1679153208.365005
(OO) press TAB 1679153208.3650525

(II) in TAB (release)
(DD) on_key TAB release
(OO) release TAB 1679153208.4820166
(EE) BAIL OUT: Emergency eject - shutting down.
(-K) Ungrabbing: Compx 2.4G Wireless Receiver (removed)
RedBearAK commented 1 year ago

Sidenote, I had to manually load the uinput module for keyszer to start.

I’m not sure what this means. What exactly was the problem starting keyszer, and what exactly did you do?

I’ve never had much luck witharch distributions, and haven’t been doing any testing on them. There are several Kinto issues reporting strange problems that seem to only occur on Manjaro.

The config doesn’t detect the distro name, but that should just mean no distro-specific keymaps would activate. So that shouldn’t be any problem.

Wondering exactly how you set up your permissions. It’s not recommended as best practice but have you tried running keyszer as root via sudo? You may need to run the xhost command first, to give root access to the X server.

xhost +SI:localuser:root
buzuddha commented 1 year ago

I’m not sure what this means. sudo modprobe uinput

This persisted after reboots.

lsmod | grep uinput
uinput                 20480  0

Anyhow, bummer that arch based distros are having issues. I can't seem to run it as sudo...

$ xhost
access control enabled, only authorized clients can connect
SI:localuser:hugh
SI:localuser:root

# keyszer -w -v -c ~/.config/kinto/toshy.py 
Traceback (most recent call last):
  File "/home/hugh/.local/bin/keyszer", line 5, in <module>
    from keyszer.cli import main
ModuleNotFoundError: No module named 'keyszer'

I get this in the pip install

WARNING: The script keyszer is installed in '/home/hugh/.local/bin' which is not on PATH.  
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

So I had to add ~/.local/bin to the $PATH, but when I run via sudo, I get this error, even though I can see

sudo echo $PATH
stuff:places:otherthings:/home/hugh/.local/bin

is there something about having installed via pip with the --user option that has made this a problem?

RedBearAK commented 1 year ago

Arch tends to be pretty different from the Debian-based (Ubuntu) or Red Hat-based (Fedora) distros most desktop users are on. But Manjaro also seems to have its own special problems sometimes that don't always affect other Arch distros, from what I've seen.

I've never had to do anything to make uinput work, which makes me wonder if the groups and permissions are all set up to make uinput work like it does on distros like Fedora/Ubuntu and similar. You might have better luck asking about that in the keyszer issues. I'm generally very unfamiliar with Arch, because whenever I tried to use it on the machines I have available, it wouldn't boot or had weird issues that I never encountered in other types of distros.

You should probably google up some explanations of how the PATH environment variable works in Linux. But to summarize, the variable tells the shell where to look for "executables", which is the closest thing the Linux platform has to what other platforms call "applications". The environment variable normally has some system-level paths in it (like /usr/bin/), put there by a system-level config file when you open a shell. Then you can add to the path, which you sometimes need to do in order to get binaries in your ~/.local/bin to be accessible without using the full path. As mentioned by the pip installer.

If you do add to the path, you want to include the original path variable contents to avoid losing all the paths that exist:

export PATH="$HOME/.local/bin:$PATH"

This would put your local bin path at the beginning of the entire path string, but retain the existing PATH contents. To make this persistent, you'd put this line at the end of a file like ~/.bashrc in your home folder (most default shells are Bash). In my case, I add this to ~/.zsh since I'm using Zsh as my shell in the terminal. You can close and open a new terminal to make it work, or use source ~/.bashrc to re-run the "rc" file without closing the shell.

You don't generally want to change root's path variable (although if you don't change the "rc" file for root, this won't be persistent, so don't worry about that, it will return to normal once you log out of the shell/terminal). The problem with root not knowing where keyszer is when it's only installed in your local user bin can be easily overcome by just giving it the absolute path:

/home/hugh/.local/bin/keyszer -w -v -c ~/.config/kinto/toshy.py

You can sudo pip install things, but that is generally discouraged and unnecessary unless the package really needs to be available system-wide.

You may want to google some Arch wiki information about uinput and how to set it up and use it, to see if there is something special you need to do to get the right group and group permissions to make it work. All I know is that I've never had to do anything like that on Ubuntu, Mint or Fedora.

buzuddha commented 1 year ago

Ack! Thanks for the very clear explanation!

I think you're probably right about the permissions. I'll take this over to the Arch forum and see if they can help. I'll let you know what I find. If I can get it to work I'll try to put together a little write up.

buzuddha commented 1 year ago

Okay! I was able to get xkeysnail working (but not keyszer) on arch! Will do a fresh install just to confirm the solution was in fact the one I thought it was. Will report back when I've confirmed. May not have time this weekend though. TBD!

Yay! Mac shortcuts, a teams app and MS office in the browser! I can now use this computer as the main driver for work!

TylerBarnes commented 1 year ago

@buzuddha what did you end up doing to get it to work?

TylerBarnes commented 1 year ago

actually looks like I figured out a solution for myself. I got into this mess because I first accidentally ran the installer in wayland and it failed. I then logged out and logged back in with x11 and installed and then ran into all the problems in this issue. I just tried signing back into wayland and running the uninstaller and it failed of course. Then I thought I should try deleting the installer files before running install again in x11. That made it work! I noticed when I ran the installer totally fresh in x11 I had to put my password in halfway through. Previously I had just I deleted the installer files and then I was running uninstall/install to try to fix it and every time it wasn't asking for my pass and it wasn't working after install.

So for anyone else with this issue: try deleting the installer with something like -> sudo rm -rf /home/username/Downloads/kinto-master before you run the install script again.

buzuddha commented 1 year ago

I did thanks to Seth from the Arch forums. Seth is amazing. The main thing was to be sure to log in to gnome via xorg. Then after the install add the following two files:

1) /etc/udev/rules.d/10-permissions.rules

KERNEL=="mouse*|mice|event*",   MODE="0660", GROUP="input"
KERNEL=="ts[0-9]*|uinput",     MODE="0660", GROUP="input"
KERNEL==js[0-9]*,             MODE=0660, GROUP=input
# tty
KERNEL==tty[0-9]*,            MODE=0666
# vchiq
SUBSYSTEM==vchiq,  GROUP=video, MODE=0660

and 2) /etc/udev/rules.d/99-input.rules

SUBSYSTEM==input, GROUP=input, MODE=0660
KERNEL==tty[0-9]*, GROUP=tty, MODE=0660

then also run:

# usermod -aG input <yournamewithoutcarets>

Then reboot. When the xkeysnail dialog comes up, initially it says inactive. If you click the menu and try restart, everything should work.

nmnellis commented 1 year ago

This fixed it for me https://github.com/mooz/xkeysnail/issues/164#issuecomment-1256891488

I upgrade version from 0.3.0 to 0.4.0, the problem was solved.

You can also try to upgrade the version: sudo pip3 install --upgrade xkeysnail

RedBearAK commented 1 year ago

I upgrade version from 0.3.0 to 0.4.0, the problem was solved.

@nmnellis

Just a reminder for everyone having this issue, "upgrading" xkeysnail from 0.3.0 to 0.4.0 removes the patch that allows repeated shortcuts like Cmd+Tab, Tab, Tab to work correctly. Without that patch, you'll only be able to task switch or window switch between the last two apps/windows.