Commit 9621339

HPCesia <me@hpcesia.com>
2026-07-11 18:27:52
Fix OBS Studio's config
1 parent 2d4fb1a
Changed files (1)
modules
desktop
modules/desktop/app/obs-studio.nix
@@ -1,20 +1,29 @@
-{den, ...}: {
+{
   den.aspects.desktop.app.obs-studio = {
-    cacheHome = {config, ...}: {
+    persistHome = {config, ...}: {
       directories = [
-        "${config.xdg.stateHome}/obs-studio"
+        "${config.xdg.configHome}/obs-studio"
       ];
     };
 
-    homeManager = {pkgs, ...}: {
-      home.packages = with pkgs; [
-        obs-studio
-      ];
+    nixos = {config, ...}: {
+      # From https://github.com/NixOS/nixpkgs/blob/f8cc9d1b80b6c75fec21ecc549f631c3eed5a5e1/nixos/modules/programs/obs-studio.nix
+      boot = {
+        kernelModules = ["v4l2loopback"];
+        extraModulePackages = [config.boot.kernelPackages.v4l2loopback];
+
+        extraModprobeConfig = ''
+          options v4l2loopback devices=1 video_nr=1 card_label="OBS Cam" exclusive_caps=1
+        '';
+      };
+    };
 
-      xdg.configFile."obs-studio/plugins".source = pkgs.symlinkJoin {
-        name = "obs-studio-plugins";
-        paths = with pkgs.obs-studio-plugins; [
+    homeManager = {pkgs, ...}: {
+      programs.obs-studio = {
+        enable = true;
+        plugins = with pkgs.obs-studio-plugins; [
           input-overlay
+          obs-pipewire-audio-capture
         ];
       };
     };