Nixpkgs: running a command in udev rule does not work

Created on 28 May 2015  路  1Comment  路  Source: NixOS/nixpkgs

Trying to run echo within a udev rule like this:

services.udev.extraRules = ''
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="0eef", ATTRS{idProduct}=="0001", RUN+="busybox echo 1040 > /sys/bus/hid/devices/0003\:0EEF\:0001.*/quirks"
    '';

tells me echo is called in udev rules but not installed by udev :(

What can I do?

I tried to use busybox but without success:

services.udev.extraRules = ''
   SUBSYSTEMS=="usb", ATTRS{idVendor}=="0eef", ATTRS{idProduct}=="0001", RUN+="busybox echo 1040 > /sys/bus/hid/devices/0003\:0EEF\:0001.*/quirks"
  services.udev.path = [ pkgs.busybox ];

Most helpful comment

The solution is to use pkgs.stdenv.shell :)

RUN+="${pkgs.stdenv.shell} -c 'echo 1040 > /sys/bus/hid/devices/0003\:0EEF\:0001.*/quirks'"

>All comments

The solution is to use pkgs.stdenv.shell :)

RUN+="${pkgs.stdenv.shell} -c 'echo 1040 > /sys/bus/hid/devices/0003\:0EEF\:0001.*/quirks'"
Was this page helpful?
0 / 5 - 0 ratings

Related issues

yawnt picture yawnt  路  3Comments

vaibhavsagar picture vaibhavsagar  路  3Comments

ob7 picture ob7  路  3Comments

domenkozar picture domenkozar  路  3Comments

grahamc picture grahamc  路  3Comments