diff options
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/services/options.nix | 8 | ||||
| -rw-r--r-- | modules/services/system/default.nix | 1 | ||||
| -rw-r--r-- | modules/services/system/tailscale.nix | 15 |
3 files changed, 23 insertions, 1 deletions
diff --git a/modules/services/options.nix b/modules/services/options.nix index cda9299..ddf6f58 100644 --- a/modules/services/options.nix +++ b/modules/services/options.nix @@ -3,7 +3,7 @@ config, ... }: let - inherit (lib) mkEnableOption; + inherit (lib) mkOption mkEnableOption; in { options = { collinux.services = { @@ -11,6 +11,12 @@ in { enable = mkEnableOption "wifi"; iwd.enable = mkEnableOption "lightweight wifi daemon"; networkmanager.enable = mkEnableOption "heavier wifi daemon"; + tailscale = { + enable = mkEnableOption "tailscale"; + authKeyFile = mkOption { + type = "path"; + }; + }; }; audio = { enable = mkEnableOption "pipewire + wireplumber"; diff --git a/modules/services/system/default.nix b/modules/services/system/default.nix index 4c03dfd..b9ae4c7 100644 --- a/modules/services/system/default.nix +++ b/modules/services/system/default.nix @@ -3,5 +3,6 @@ ./networking ./audio.nix ./bluetooth.nix + ./tailscale.nix ]; } diff --git a/modules/services/system/tailscale.nix b/modules/services/system/tailscale.nix new file mode 100644 index 0000000..3fbd691 --- /dev/null +++ b/modules/services/system/tailscale.nix @@ -0,0 +1,15 @@ +{ + config, + pkgs, + lib, + ... +}: let + cfg = config.collinux.services.networking.tailscale; +in + lib.mkIf cfg.enable { + services.tailscale = { + enable = true; + useRoutingFeatures = "both"; + }; + environment.systemPackages = [pkgs.tailscale]; + } |
