From 1e4f343ccbf4742073c4c07a48e3e49c61ab6470 Mon Sep 17 00:00:00 2001 From: Frantisek Bohacek Date: Tue, 5 Dec 2023 14:46:39 +0100 Subject: [PATCH] feat: add trezor udev rules TODO: put this to a derivation instead of extraRules --- hosts/configuration.nix | 1 + hosts/laptop-phobos/default.nix | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/hosts/configuration.nix b/hosts/configuration.nix index d96aeda..8def0c0 100644 --- a/hosts/configuration.nix +++ b/hosts/configuration.nix @@ -25,6 +25,7 @@ hardware.pulseaudio.enable = false; + users.groups.plugdev.members = [ "${user}" ]; users.users.${user} = { # System User isNormalUser = true; extraGroups = [ "wheel" "video" "audio" "camera" "networkmanager" "lp" "scanner" "kvm" "libvirtd" "plex" "podman" ]; diff --git a/hosts/laptop-phobos/default.nix b/hosts/laptop-phobos/default.nix index 54fd2fb..c4b8b3b 100644 --- a/hosts/laptop-phobos/default.nix +++ b/hosts/laptop-phobos/default.nix @@ -92,6 +92,26 @@ # auto-cpufreq.enable = true; logind.lidSwitch = "suspend"; # suspend on lid close + udev.extraRules = '' + # Trezor: The Original Hardware Wallet + # https://trezor.io/ + # + # Put this file into /etc/udev/rules.d + # + # If you are creating a distribution package, + # put this into /usr/lib/udev/rules.d or /lib/udev/rules.d + # depending on your distribution + + # Trezor + SUBSYSTEM=="usb", ATTR{idVendor}=="534c", ATTR{idProduct}=="0001", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl", SYMLINK+="trezor%n" + KERNEL=="hidraw*", ATTRS{idVendor}=="534c", ATTRS{idProduct}=="0001", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl" + + # Trezor v2 + SUBSYSTEM=="usb", ATTR{idVendor}=="1209", ATTR{idProduct}=="53c0", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl", SYMLINK+="trezor%n" + SUBSYSTEM=="usb", ATTR{idVendor}=="1209", ATTR{idProduct}=="53c1", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl", SYMLINK+="trezor%n" + KERNEL=="hidraw*", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="53c1", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl" + ''; + xserver.libinput = { enable = true; touchpad = { -- 2.48.1