Add udev module

This commit is contained in:
Jakob Lechner 2025-09-09 12:38:14 +02:00
parent 3b2fd03f48
commit 9e0374b9d0
9 changed files with 23 additions and 42 deletions

View file

@ -52,7 +52,6 @@
sway.enable = true;
};
workstation.enable = true;
sdr.enable = true;
libvirt.enable = true;
autologin.enable = true;
autologin.username = "jalr";

View file

@ -65,7 +65,6 @@
sway.enable = true;
};
workstation.enable = true;
sdr.enable = true;
libvirt.enable = true;
autologin = {
enable = true;

View file

@ -19,7 +19,6 @@
./bluetooth.nix
./bootloader
./debug.nix
./dji-goggles.nix
./dns.nix
./esphome
./fish.nix
@ -43,12 +42,11 @@
./podman.nix
./printers
./remarkable.nix
./sdr.nix
./sshd.nix
./steelseries-nova-pro.nix
./sudo.nix
./sway.nix
./udmx.nix
./udev.nix
./uefi.nix
./unfree.nix
./upgrade-diff.nix

View file

@ -1,6 +0,0 @@
{
services.udev.extraRules = ''
# DJI Goggles
SUBSYSTEM=="usb", ATTR{idVendor}=="2ca3", ATTR{idProduct}=="001f", MODE="0660", GROUP="plugdev"
'';
}

View file

@ -3,7 +3,6 @@
{
imports = [
./hl3172cdw.nix
./p-touch_p700.nix
];
config = lib.mkIf config.jalr.gui.enable {
# install virtual pdf printer

View file

@ -1,5 +0,0 @@
{
services.udev.extraRules = ''
SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="04f9", ATTR{idProduct}=="2061", OWNER="root", GROUP="users", MODE="660"
'';
}

View file

@ -1,19 +0,0 @@
{ config, lib, pkgs, ... }:
let
cfg = config.jalr;
in
{
options.jalr = {
sdr = {
enable = pkgs.lib.mkEnableOption "Enable software defined radio";
};
};
config = lib.mkIf cfg.sdr.enable {
services.udev.extraRules = ''
# rad10
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="cc15", GROUP="users", MODE="0660"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="6089", GROUP="users", MODE="0660"
'';
};
}

22
modules/udev.nix Normal file
View file

@ -0,0 +1,22 @@
let
usbDeviceRules = [
# rad10
{ vendor = "1d50"; product = "cc15"; group = "users"; mode = "0660"; }
{ vendor = "1d50"; product = "6089"; group = "users"; mode = "0660"; }
# DJI Goggles
{ vendor = "2ca3"; product = "001f"; group = "plugdev"; mode = "0660"; }
# uDMX
{ vendor = "16c0"; product = "05dc"; group = "users"; mode = "0660"; }
# Brother P-touch P700
{ vendor = "04f9"; product = "2061"; group = "users"; mode = "0660"; }
];
mkUsbRule = rule:
''SUBSYSTEM=="usb", ATTR{idVendor}=="${rule.vendor}", ATTR{idProduct}=="${rule.product}", GROUP="${rule.group}", MODE="${rule.mode}"'';
in
{
services.udev.extraRules = builtins.concatStringsSep "\n" (map mkUsbRule usbDeviceRules);
}

View file

@ -1,6 +0,0 @@
{
services.udev.extraRules = ''
# uDMX
SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="05dc", GROUP="users", MODE="0660"
'';
}