nixos/twingate: init module

This commit is contained in:
Oleksandr Chupryna 2022-11-04 13:36:45 +01:00
parent 3abe0af96b
commit acf17b3b4b
2 changed files with 29 additions and 0 deletions

View file

@ -965,6 +965,7 @@
./services/networking/tox-node.nix
./services/networking/toxvpn.nix
./services/networking/tvheadend.nix
./services/networking/twingate.nix
./services/networking/ucarp.nix
./services/networking/unbound.nix
./services/networking/unifi.nix

View file

@ -0,0 +1,28 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.twingate;
in {
options.services.twingate = {
enable = mkEnableOption (lib.mdDoc "Twingate Client daemon");
};
config = mkIf cfg.enable {
networking.firewall.checkReversePath = lib.mkDefault false;
networking.networkmanager.enable = true;
environment.systemPackages = [ pkgs.twingate ]; # for the CLI
systemd.packages = [ pkgs.twingate ];
systemd.services.twingate.preStart = ''
cp -r -n ${pkgs.twingate}/etc/twingate/. /etc/twingate/
'';
systemd.services.twingate.wantedBy = [ "multi-user.target" ];
};
}