at 23.11-pre 626 B view raw
1{ config, lib, pkgs, ... }: 2 3with lib; 4 5let 6 cfg = config.services.twingate; 7 8in { 9 10 options.services.twingate = { 11 enable = mkEnableOption (lib.mdDoc "Twingate Client daemon"); 12 }; 13 14 config = mkIf cfg.enable { 15 16 networking.firewall.checkReversePath = lib.mkDefault false; 17 networking.networkmanager.enable = true; 18 19 environment.systemPackages = [ pkgs.twingate ]; # for the CLI 20 systemd.packages = [ pkgs.twingate ]; 21 22 systemd.services.twingate.preStart = '' 23 cp -r -n ${pkgs.twingate}/etc/twingate/. /etc/twingate/ 24 ''; 25 26 systemd.services.twingate.wantedBy = [ "multi-user.target" ]; 27 }; 28}