about summary refs log tree commit diff stats
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--modules/nixos/sils/default.nix1
-rw-r--r--modules/nixos/sils/roles.nix1
-rw-r--r--modules/nixos/sils/tor.nix23
3 files changed, 25 insertions, 0 deletions
diff --git a/modules/nixos/sils/default.nix b/modules/nixos/sils/default.nix
index 24de0b9..bd9acee 100644
--- a/modules/nixos/sils/default.nix
+++ b/modules/nixos/sils/default.nix
@@ -26,5 +26,6 @@
     ./sudo.nix
     ./sway.nix
     ./theming
+    ./tor.nix
   ];
 }
diff --git a/modules/nixos/sils/roles.nix b/modules/nixos/sils/roles.nix
index e4a2c82..fd14269 100644
--- a/modules/nixos/sils/roles.nix
+++ b/modules/nixos/sils/roles.nix
@@ -29,6 +29,7 @@ in {
       sound.enable = lib.mkDefault true;
       sway.enable = lib.mkDefault false;
       theming.enable = lib.mkDefault true;
+      tor.enable = lib.mkDefault true;
     }
     else if roleCmp "laptop-light"
     then {
diff --git a/modules/nixos/sils/tor.nix b/modules/nixos/sils/tor.nix
new file mode 100644
index 0000000..01fdc1f
--- /dev/null
+++ b/modules/nixos/sils/tor.nix
@@ -0,0 +1,23 @@
+{
+  config,
+  pkgs,
+  lib,
+  ...
+}: let
+  cfg = config.sils.tor;
+in {
+  options.sils.tor.enable = lib.mkEnableOption "tor";
+  config = lib.mkIf cfg.enable {
+    services = {
+      tor = {
+        enable = true;
+        torsocks.enable = true;
+        client.enable = true;
+      };
+      snowflake-proxy = {
+        enable = true;
+        capacity = 5;
+      };
+    };
+  };
+}