Skip to content

Doesn't work on Hyprland #56

@mr-scrpt

Description

@mr-scrpt

Hi. Thanks for your tool, but I have not been able to get it to work. I am using Arch Linux + Hyprland.
I ran the command mentioned in the documentation for Arch, during the installation process I got either errors or warnings, but the installation process completed and I can even invoke hint both from the terminal and from the keyboard shortcut I added

bind = SUPER, O, exec, hints
bind = SUPER, Y, exec, hints --mode scroll

The layout with letters appears on the screen as intended, but when I click the letters nothing happens, also the layout seems to be shifted down, in the screenshot I made a red stroke, you can see that the layout even overlaps the window from the bottom. Maybe this displacement is equal to the height of the waybar

Image

Next, I tried these steps from docs


Hints comes with a daemon used to perform mouse actions. Without starting the daemon, you won't be able to perform mouse actions. The daemon creates custom uniput devices so your user will need to have the proper permissions to read and write to those devices. The guide below shows you how to do that.

Add your user to the input group:

sudo usermod -a -G input $USER

Create a udev rule to allow users in the input group to read and write uinput devices by creating a file: /etc/udev/rules.d/80-hints.rules with the following:

KERNEL=="uinput", GROUP="input", MODE:="0660"

Then reboot.
Enable and Start hintsd

Enable the hitsd service so that it starts on boot and start the service for the current session:

systemctl --user daemon-reload
systemctl --user enable hintsd
systemctl --user start hintsd

You can check the status of the service with:

systemctl --user status hintsd

But I get these errors

❯ systemctl --user status hintsd
× hintsd.service - Hints daemon
     Loaded: loaded (/home/mr/.config/systemd/user/hintsd.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Sun 2025-05-04 19:03:38 EEST; 6s ago
   Duration: 114ms
 Invocation: afbd318cb358447cae1a74e1c4415670
    Process: 2872 ExecStart=/home/mr/.local/bin/hintsd (code=exited, status=1/FAILURE)
   Main PID: 2872 (code=exited, status=1/FAILURE)

May 04 19:03:38 workstation systemd[756]: hintsd.service: Scheduled restart job, restart counter is at 5.
May 04 19:03:38 workstation systemd[756]: hintsd.service: Start request repeated too quickly.
May 04 19:03:38 workstation systemd[756]: hintsd.service: Failed with result 'exit-code'.
May 04 19:03:38 workstation systemd[756]: Failed to start Hints daemon.

And here are the following

❯ hintsd
Traceback (most recent call last):
  File "/home/mr/.local/bin/hintsd", line 8, in <module>
    sys.exit(main())
             ~~~~^^
  File "/home/mr/.local/share/pipx/venvs/hints/lib/python3.13/site-packages/hints/mouse_service.py", line 294, in main
    MouseService().run()
    ~~~~~~~~~~~~^^
  File "/home/mr/.local/share/pipx/venvs/hints/lib/python3.13/site-packages/hints/mouse_service.py", line 232, in __init__
    self.mouse = Mouse(self.screen.get_width(), self.screen.get_height())
                 ~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/mr/.local/share/pipx/venvs/hints/lib/python3.13/site-packages/hints/mouse_service.py", line 48, in __init__
    self.relative_mouse = UInput(
                          ~~~~~~^
        {
        ^
    ...<8 lines>...
        name="Hints relative mouse",
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/mr/.local/share/pipx/venvs/hints/lib/python3.13/site-packages/evdev/uinput.py", line 152, in __init__
    self._verify()
    ~~~~~~~~~~~~^^
  File "/home/mr/.local/share/pipx/venvs/hints/lib/python3.13/site-packages/evdev/uinput.py", line 285, in _verify
    raise UInputError(msg.format(self.devnode))
evdev.uinput.UInputError: "/dev/uinput" cannot be opened for writing

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions