mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2025-12-12 11:36:20 +00:00
refactor: make the whole thing more generic
This commit is contained in:
22
modules/nixos/hardware/virtual-camera.nix
Normal file
22
modules/nixos/hardware/virtual-camera.nix
Normal file
@@ -0,0 +1,22 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
with lib;
|
||||
|
||||
let cfg = config.hardware.virtual-camera;
|
||||
|
||||
in {
|
||||
options.hardware.virtual-camera = {
|
||||
enable = mkEnableOption "Enable the virtual camera";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
boot = {
|
||||
# Virtual Camera/Mic
|
||||
kernelModules = [ "v4l2loopback" "snd-aloop" "sg" ];
|
||||
extraModulePackages = with config.boot.kernelPackages;
|
||||
[ v4l2loopback.out ];
|
||||
extraModprobeConfig = ''
|
||||
options v4l2loopback exclusive_caps=1 card_label="Virtual Camera"
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user