old
1{
2 den.aspects.desktop.app.obs-studio = {
3 persistHome = {config, ...}: {
4 directories = [
5 "${config.xdg.configHome}/obs-studio"
6 ];
7 };
8
9 nixos = {config, ...}: {
10 # From https://github.com/NixOS/nixpkgs/blob/f8cc9d1b80b6c75fec21ecc549f631c3eed5a5e1/nixos/modules/programs/obs-studio.nix
11 boot = {
12 kernelModules = ["v4l2loopback"];
13 extraModulePackages = [config.boot.kernelPackages.v4l2loopback];
14
15 extraModprobeConfig = ''
16 options v4l2loopback devices=1 video_nr=1 card_label="OBS Cam" exclusive_caps=1
17 '';
18 };
19 };
20
21 homeManager = {pkgs, ...}: {
22 programs.obs-studio = {
23 enable = true;
24 plugins = with pkgs.obs-studio-plugins; [
25 input-overlay
26 obs-pipewire-audio-capture
27 obs-vkcapture
28 obs-backgroundremoval
29 ];
30 };
31 };
32 };
33
34 den.aspects.desktop.app.obs-studio.themes = {
35 catppuccin = {
36 homeManager = {pkgs, ...}: let
37 catppuccin-obs = pkgs.fetchFromGitHub {
38 owner = "catppuccin";
39 repo = "obs";
40 rev = "054a297d303a5bac4f1652a13b17d78a13201c0e";
41 hash = "sha256-zFg7dgxLIK3K1KpLdEgphH2JpdMwVTovr+oKiAqdLEE=";
42 };
43 in {
44 xdg.configFile."obs-studio/themes".source = "${catppuccin-obs}/themes";
45 };
46 };
47 };
48}