diff --git a/nixos/modules/programs/localsend.nix b/nixos/modules/programs/localsend.nix index 47f54246a40f..a4580057ba4b 100644 --- a/nixos/modules/programs/localsend.nix +++ b/nixos/modules/programs/localsend.nix @@ -12,14 +12,19 @@ in options.programs.localsend = { enable = lib.mkEnableOption "localsend, an open source cross-platform alternative to AirDrop"; - openFirewall = lib.mkEnableOption "opening the firewall port ${toString firewallPort} for receiving files" // { - default = true; - }; + package = lib.mkPackageOption pkgs "localsend" { }; + + openFirewall = + lib.mkEnableOption "opening the firewall port ${toString firewallPort} for receiving files" + // { + default = true; + }; }; config = lib.mkIf cfg.enable { - environment.systemPackages = [ pkgs.localsend ]; + environment.systemPackages = [ cfg.package ]; networking.firewall.allowedTCPPorts = lib.optionals cfg.openFirewall [ firewallPort ]; + networking.firewall.allowedUDPPorts = lib.optionals cfg.openFirewall [ firewallPort ]; }; meta.maintainers = with lib.maintainers; [ pandapip1 ]; diff --git a/nixos/tests/localsend.nix b/nixos/tests/localsend.nix index 8c0a6ac68190..551b6dd73ce8 100644 --- a/nixos/tests/localsend.nix +++ b/nixos/tests/localsend.nix @@ -16,6 +16,7 @@ import ./make-test-python.nix ( machine.wait_for_open_port(53317) machine.wait_for_window("LocalSend", 10) machine.succeed("netstat --listening --program --tcp | grep -P 'tcp.*53317.*localsend'") + machine.succeed("netstat --listening --program --udp | grep -P 'udp.*53317.*localsend'") ''; } )