at 25.11-pre 702 B view raw
1{ 2 config, 3 lib, 4 pkgs, 5 ... 6}: 7 8let 9 inherit (lib) 10 mkEnableOption 11 mkIf 12 mkMerge 13 ; 14 15 cfg = config.hardware.coral; 16in 17 18{ 19 options.hardware.coral = { 20 usb.enable = mkEnableOption "Coral USB support"; 21 pcie.enable = mkEnableOption "Coral PCIe support"; 22 }; 23 24 config = mkMerge [ 25 (mkIf (cfg.usb.enable || cfg.pcie.enable) { 26 users.groups.coral = { }; 27 }) 28 (mkIf cfg.usb.enable { 29 services.udev.packages = with pkgs; [ libedgetpu ]; 30 }) 31 (mkIf cfg.pcie.enable { 32 boot.extraModulePackages = with config.boot.kernelPackages; [ gasket ]; 33 services.udev.extraRules = '' 34 SUBSYSTEM=="apex",MODE="0660",GROUP="coral" 35 ''; 36 }) 37 ]; 38}