diff options
Diffstat (limited to 'pkgs/os-specific/linux/trezor-udev-rules/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/trezor-udev-rules/default.nix | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/trezor-udev-rules/default.nix b/pkgs/os-specific/linux/trezor-udev-rules/default.nix new file mode 100644 index 00000000000..c2be8137376 --- /dev/null +++ b/pkgs/os-specific/linux/trezor-udev-rules/default.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + pname = "trezor-udev-rules"; + version = "unstable-2019-07-17"; + + udevRules = fetchurl { + # let's pin the latest commit in the repo which touched the udev rules file + url = "https://raw.githubusercontent.com/trezor/trezor-firmware/68a3094b0a8e36b588b1bcb58c34a2c9eafc0dca/common/udev/51-trezor.rules"; + sha256 = "0vlxif89nsqpbnbz1vwfgpl1zayzmq87gw1snskn0qns6x2rpczk"; + }; + + dontUnpack = true; + + installPhase = '' + cp ${udevRules} 51-trezor.rules + mkdir -p $out/lib/udev/rules.d + # we use trezord group, not plugdev + # we don't need the udev-acl tag + substituteInPlace 51-trezor.rules \ + --replace 'GROUP="plugdev"' 'GROUP="trezord"' \ + --replace ', TAG+="udev-acl"' "" + cp 51-trezor.rules $out/lib/udev/rules.d/51-trezor.rules + ''; + + meta = with stdenv.lib; { + description = "Udev rules for Trezor"; + license = licenses.gpl3; + maintainers = with maintainers; [ prusnak ]; + platforms = platforms.linux; + homepage = "https://github.com/trezor/trezor-firmware/tree/master/common/udev"; + }; +} |