summaryrefslogtreecommitdiff
path: root/modules/vpn.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/vpn.nix')
-rw-r--r--modules/vpn.nix20
1 files changed, 20 insertions, 0 deletions
diff --git a/modules/vpn.nix b/modules/vpn.nix
new file mode 100644
index 0000000..5b5cf09
--- /dev/null
+++ b/modules/vpn.nix
@@ -0,0 +1,20 @@
+{config, pkgs, lib, ...}:
+let
+ desktop = config.addons.desktop;
+ cfg = config.addons.vpn;
+ opt-mullvad = config.addons.vpn.mullvad;
+in
+{
+ options.addons.vpn = {
+ mullvad.enable = lib.mkEnableOption "Enable mullvad vpn";
+ };
+
+ config = lib.mkMerge [
+ ({ services.mullvad-vpn.enable = opt-mullvad.enable; })
+ (lib.mkIf desktop.enable (lib.mkMerge [
+ (lib.mkIf opt-mullvad.enable {
+ services.mullvad-vpn.package = pkgs.mullvad-vpn;
+ })
+ ]))
+ ];
+}