From b37f09f519bf309c6424308d1c33176ad9d29aeb Mon Sep 17 00:00:00 2001 From: Antoine Viallon Date: Thu, 1 Feb 2024 23:16:48 +0100 Subject: [PATCH] [Network] add option to enable many types of VPN support to NetworkManager --- network.nix | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/network.nix b/network.nix index ae76690..2b20747 100644 --- a/network.nix +++ b/network.nix @@ -24,6 +24,7 @@ in description = "Set network DNS"; type = types.enum [ "systemd-resolved" "dnsmasq" "unbound" "none" "default" ]; }; + vpnSupport = mkEnableOption "VPN support of many kinds in NetworkManager" // { default = desktopCfg.enable; }; }; config = mkIf cfg.enable { @@ -58,9 +59,16 @@ in networking.networkmanager = { wifi.backend = mkDefault "iwd"; dns = mkDefault cfg.dns; - plugins = with pkgs; concatLists [ - (optional (cfg.dns == "dnsmasq") dnsmasq) - ]; + plugins = with pkgs; [] + ++ optional (cfg.dns == "dnsmasq") dnsmasq + ++ optionals cfg.vpnSupport [ + networkmanager_strongswan + networkmanager-openvpn + networkmanager-openconnect + networkmanager-sstp + networkmanager-l2tp + ] + ; }; networking.wireless.enable = (cfg.backend != "NetworkManager"); networking.wireless.iwd.enable = true;