nixos/home/programs/obs-studio/default.nix
Torjus Håkestad 2bece06f10
Some checks are pending
pre-commit / pre-commit (push) Waiting to run
Add workaround for onnxruntime with cuda
2024-07-16 01:36:08 +02:00

38 lines
1.2 KiB
Nix

{ pkgs, lib, osConfig, ... }:
let
withCuda = if (osConfig.system.name == "gunter") then true else false;
onnxruntime-gpu = (pkgs.onnxruntime.override {
cudaSupport = withCuda;
}).overrideAttrs (old: {
# TODO: Remove when fixed in nixpkgs
# https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/development/libraries/onnxruntime/default.nix#L154
buildInputs = old.buildInputs ++ [ pkgs.cudaPackages.nccl ];
});
obs-backgrounremoval-gpu = ((pkgs.obs-studio-plugins.obs-backgroundremoval.override {
onnxruntime = onnxruntime-gpu;
}).overrideAttrs (old: {
version = "1.1.14-beta";
src = pkgs.fetchFromGitHub {
owner = "occ-ai";
repo = "obs-backgroundremoval";
rev = "94be8c35fe077be93a6f5ef347a802295a36dddd";
hash = "sha256-qnxDNeTWQYiRMqT6jNp8GC8ef6aaAAY+OXAak54dVc8=";
};
cmakeFlags =
if withCuda then
(lib.lists.remove "-DDISABLE_ONNXRUNTIME_GPU=ON" old.cmakeFlags)
else old.cmakeFlags;
}));
in
{
programs.obs-studio = {
enable = true;
plugins = with pkgs.obs-studio-plugins; [
obs-pipewire-audio-capture
obs-shaderfilter
] ++ [ obs-backgrounremoval-gpu ];
};
}