summaryrefslogtreecommitdiff
path: root/modules/root
diff options
context:
space:
mode:
authorTim Keller <tjk@tjkeller.xyz>2025-07-11 13:06:28 -0500
committerTim Keller <tjk@tjkeller.xyz>2025-07-11 13:06:28 -0500
commitff4ae2aec2f9999005487a4bbb25cbb67cbde3ea (patch)
tree5ada419ee5e65339ea70755a5207840ae5ce2e7f /modules/root
parent470531af44ebb4b7ca1194df0c0f8cc17794b9f1 (diff)
downloadnixos-decklink.tar.xz
nixos-decklink.zip
update derivation and decklink moddecklink
Diffstat (limited to 'modules/root')
-rw-r--r--modules/root/decklink.nix42
1 files changed, 9 insertions, 33 deletions
diff --git a/modules/root/decklink.nix b/modules/root/decklink.nix
index d88fbfa..035bd63 100644
--- a/modules/root/decklink.nix
+++ b/modules/root/decklink.nix
@@ -1,9 +1,16 @@
-{ lib, pkgs, ... }: {
+{ config, lib, pkgs, ... }: {
options = {
decklink.enable = lib.mkEnableOption "enables decklink support";
};
config = {
+ assertions = [
+ {
+ assertion = config.nixpkgs.config.allowUnfree or false;
+ message = "Must allow unfree pkgs to use the decklink module";
+ }
+ ];
+
# Kernel modules
hardware.decklink.enable = true;
@@ -12,43 +19,12 @@
# Enable decklinkSupport flag globally for all packages that support it (e.g. obs)
nixpkgs.overlays = [
- #(final: prev: { decklinkSupport = true; })
+ (final: prev: { decklinkSupport = true; })
(final: prev: {
blackmagic-desktop-video = (pkgs.callPackage ./software/derivations/blackmagic-desktop-video-gui/generic.nix {}).override({
desktopVideoFull = true;
});
})
];
-
- services.udev.extraRules = ''
- ACTION=="add", KERNEL=="blackmagic/dv[0-9]*", MODE="0666", RUN+="${pkgs.blackmagic-desktop-video}/bin/DesktopVideoNotifier add /dev/%k"
- ACTION=="remove", KERNEL=="blackmagic/dv[0-9]*", RUN+="${pkgs.blackmagic-desktop-video}/bin/DesktopVideoNotifier del /dev/%k"
- ACTION=="add", KERNEL=="blackmagic/ttydv[0-9]*", SYMLINK+="blackmagic/serial%n", MODE="0666"
-
-
- ACTION=="add", KERNEL=="blackmagic/io[0-9]*", MODE="0666", RUN+="${pkgs.blackmagic-desktop-video}/bin/DesktopVideoNotifier add /dev/%k"
- ACTION=="remove", KERNEL=="blackmagic/io[0-9]*", RUN+="${pkgs.blackmagic-desktop-video}/bin/DesktopVideoNotifier del /dev/%k"
- ACTION=="add", KERNEL=="blackmagic/ttyio[0-9]*", MODE="0666"
-
-
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bd90", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bd97", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bd98", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bda1", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bda9", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bdab", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bdaa", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bdbf", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bdcc", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bdd1", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bdda", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bddb", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bddc", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bdf5", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="bdff", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="be07", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="be13", MODE="0666"
- SUBSYSTEM=="usb", ATTRS{idVendor}=="1edb", ATTRS{idProduct}=="be14", MODE="0666"
- '';
};
}