1
0
mirror of https://github.com/systemd/systemd.git synced 2025-03-11 20:58:27 +03:00
systemd/rules.d/60-persistent-hidraw.rules
Nick Rosbrook 2aa1a265bc udev: add input/by-{id,path} symlinks for hidraw devices
Take some of the same rule structure from 60-persistent-input.rules, and
apply it to hidraw devices in 60-persistent-hidraw.rules.

Since one of the motivations for this is being able to easily reference
FIDO tokens, add a special case when ID_FIDO_TOKEN==1, and add 'fido'
to the symlink.
2025-01-27 18:57:13 +00:00

27 lines
1.2 KiB
Plaintext

# do not edit this file, it will be overwritten on update
ACTION=="remove", GOTO="persistent_hidraw_end"
SUBSYSTEM!="hidraw", GOTO="persistent_hidraw_end"
KERNEL!="hidraw*", GOTO="persistent_hidraw_end"
SUBSYSTEMS=="usb", ENV{ID_BUS}=="", IMPORT{builtin}="usb_id"
SUBSYSTEMS=="usb", IMPORT{builtin}="path_id"
ENV{ID_BUS}=="", GOTO="persistent_hidraw_bus_end"
# by-id links
ATTRS{bInterfaceNumber}=="|00", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-hidraw"
ATTRS{bInterfaceNumber}=="?*", ATTRS{bInterfaceNumber}!="00", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-if$attr{bInterfaceNumber}-hidraw"
# add a more readable 'fido' link for devices with ID_FIDO_TOKEN==1
ENV{ID_FIDO_TOKEN}=="?*", ATTRS{bInterfaceNumber}=="|00", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-fido"
ENV{ID_FIDO_TOKEN}=="?*", ATTRS{bInterfaceNumber}=="?*", ATTRS{bInterfaceNumber}!="00", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-if$attr{bInterfaceNumber}-fido"
LABEL="persistent_hidraw_bus_end"
# by-path
ENV{ID_PATH}=="?*", SYMLINK+="input/by-path/$env{ID_PATH}-hidraw"
ENV{ID_PATH_WITH_USB_REVISION}=="?*", SYMLINK+="input/by-path/$env{ID_PATH_WITH_USB_REVISION}-hidraw"
LABEL="persistent_hidraw_end"