[BRLTTY] udev rules

Dave Mielke Dave at mielke.cc
Wed May 18 18:36:14 EDT 2022


[quoted lines by Samuel Thibault on 2022/05/18 at 17:59 +0200]

>There is just one detail: usb-generic.rules has
>
>ENV{PRODUCT}=="403/6001/*", ATTR{manufacturer}=="Hedo Reha Technik GmbH", ENV{BRLTTY_BRAILLE_DRIVER}="hd", GOTO="brltty_usb_run"
>ENV{PRODUCT}=="403/6001/*", ATTR{manufacturer}=="Tivomatic Oy", ENV{BRLTTY_BRAILLE_DRIVER}="at", GOTO="brltty_usb_run"
>
>but these are not actually generic thanks to the manufacturer filtering
>(AIUI these manufacturers' purpose is/was only to produce Braille
>devices)

Yes. There's also another, more hidden, one:

   ENV{PRODUCT}=="1a86/7523/*", ATTRS{idVendor}=="1a40", ATTRS{idProduct}=="0101", ENV{BRLTTY_BRAILLE_DRIVER}="bm", GOTO="brltty_usb_run"

This one is specifying the identity of an internal hub, so it filters on the combination of the internal hub and the braille device beyond that hub.

The problem is that only udev gives us this degree of flexibility. The other mechanisms we support (appstream, Windows .inf, Android, Linux hotplug, etc) don't. The code that implements generic versus nongeneric is in common code. The mechanism-specific code only "knows" how to write rules, make comments, etc.

-- 
I believe the Bible to be the very Word of God: http://Mielke.cc/bible/
Dave Mielke            | 2213 Fox Crescent | WebHome: http://Mielke.cc/
EMail: Dave at Mielke.cc  | Ottawa, Ontario   | Twitter: @Dave_Mielke
Phone: +1 613 726 0014 | Canada  K2A 1H7   |


More information about the BRLTTY mailing list