diff --git a/nixos/hosts/Tibo-NixDesk/default.nix b/nixos/hosts/Tibo-NixDesk/default.nix index fe71d29..9373483 100644 --- a/nixos/hosts/Tibo-NixDesk/default.nix +++ b/nixos/hosts/Tibo-NixDesk/default.nix @@ -20,6 +20,7 @@ networking = { networkmanager.enable = true; openconnect-sso.enable = true; + openvpn.enable = true; }; nix = { diff --git a/nixos/modules/networking/default.nix b/nixos/modules/networking/default.nix index 5a46d2c..94bb711 100644 --- a/nixos/modules/networking/default.nix +++ b/nixos/modules/networking/default.nix @@ -2,5 +2,6 @@ imports = [ ./networkmanager ./openconnect-sso + ./openvpn ]; } diff --git a/nixos/modules/networking/openvpn/default.nix b/nixos/modules/networking/openvpn/default.nix new file mode 100644 index 0000000..f646537 --- /dev/null +++ b/nixos/modules/networking/openvpn/default.nix @@ -0,0 +1,14 @@ +{ config, lib, ... }: + +let + cfg = config.sisyphus.networking.openvpn; +in { + options.sisyphus.networking.openvpn.enable = lib.mkEnableOption "OpenVPN client"; + + config = lib.mkIf cfg.enable { + programs.openvpn3.enable = true; + + # https://github.com/NixOS/nixpkgs/issues/379074 + services.resolved.enable = true; + }; +}