at 24.11-pre 750 B view raw
1{ config, pkgs, lib, ... }: 2 3let 4 cfg = config.programs.alvr; 5in 6{ 7 options = { 8 programs.alvr = { 9 enable = lib.mkEnableOption "ALVR, the VR desktop streamer"; 10 11 package = lib.mkPackageOption pkgs "alvr" { }; 12 13 openFirewall = lib.mkOption { 14 type = lib.types.bool; 15 default = false; 16 description = '' 17 Whether to open the default ports in the firewall for the ALVR server. 18 ''; 19 }; 20 }; 21 }; 22 23 config = lib.mkIf cfg.enable { 24 environment.systemPackages = [ cfg.package ]; 25 26 networking.firewall = lib.mkIf cfg.openFirewall { 27 allowedTCPPorts = [ 9943 9944 ]; 28 allowedUDPPorts = [ 9943 9944 ]; 29 }; 30 }; 31 32 meta.maintainers = with lib.maintainers; [ passivelemon ]; 33}