Hi Sean! On Wed, Aug 16, 2017 at 05:56:25PM +0100, Sean Young wrote: > I've found a shorter way of doing this. That's a really clever trick of dealing with the RUN/$id issue, I like it a lot! > ---- > From: Sean Young <sean@xxxxxxxx> > Date: Wed, 16 Aug 2017 17:41:53 +0100 > Subject: [PATCH] keytable: ensure the udev rule fires on creation of the input > device > > The rc device is created before the input device, so if ir-keytable runs > too early the input device does not exist yet. > > Ensure that rule fires on creation of a rc device's input device. > > Note that this also prevents udev from starting ir-keytable on an > transmit only device, which has no input device. > > Note that $id in RUN will not work, since that is expanded after all the > rules are matched, at which point the the parent might have been changed > by another match in another rule. The argument to $env{key} is expanded > immediately. > > Signed-off-by: Sean Young <sean@xxxxxxxx> Tested-by: Matthias Reichl <hias@xxxxxxxxx> so long & thanks for the fix, Hias > --- > utils/keytable/70-infrared.rules | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/utils/keytable/70-infrared.rules b/utils/keytable/70-infrared.rules > index afffd951..41ca2089 100644 > --- a/utils/keytable/70-infrared.rules > +++ b/utils/keytable/70-infrared.rules > @@ -1,4 +1,4 @@ > # Automatically load the proper keymaps after the Remote Controller device > # creation. The keycode tables rules should be at /etc/rc_maps.cfg > > -ACTION=="add", SUBSYSTEM=="rc", RUN+="/usr/bin/ir-keytable -a /etc/rc_maps.cfg -s $name" > +ACTION=="add", SUBSYSTEM=="input", SUBSYSTEMS=="rc", KERNEL=="event*", ENV{.rc_sysdev}="$id", RUN+="/usr/bin/ir-keytable -a /etc/rc_maps.cfg -s $env{.rc_sysdev}" > -- > 2.13.5 >