From 09a45c845873a888d35a7a1b43b80ff3fc6bdd19 Mon Sep 17 00:00:00 2001 From: misuzu Date: Sun, 28 Aug 2022 18:42:46 +0300 Subject: [PATCH] Add netbird module --- modules/module-list.nix | 1 + modules/services/netbird.nix | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 modules/services/netbird.nix diff --git a/modules/module-list.nix b/modules/module-list.nix index 57b0bf8..b56ba67 100644 --- a/modules/module-list.nix +++ b/modules/module-list.nix @@ -53,6 +53,7 @@ ./services/mail/offlineimap.nix ./services/mopidy.nix ./services/monitoring/telegraf.nix + ./services/netbird.nix ./services/nix-daemon.nix ./services/nix-gc ./services/ofborg diff --git a/modules/services/netbird.nix b/modules/services/netbird.nix new file mode 100644 index 0000000..5bc8ebd --- /dev/null +++ b/modules/services/netbird.nix @@ -0,0 +1,35 @@ +{ config, lib, pkgs, ... }: +with lib; +let + cfg = config.services.netbird; +in +{ + options.services.netbird = { + enable = mkEnableOption "Netbird daemon"; + package = mkOption { + type = types.package; + default = pkgs.netbird; + defaultText = literalExpression "pkgs.netbird"; + description = "The package to use for netbird"; + }; + }; + config = mkIf cfg.enable { + environment.systemPackages = [ cfg.package ]; + launchd.daemons.netbird = { + script = '' + mkdir -p /var/run/netbird /var/lib/netbird + exec ${cfg.package}/bin/netbird service run + ''; + serviceConfig = { + EnvironmentVariables = { + NB_CONFIG = "/var/lib/netbird/config.json"; + NB_LOG_FILE = "console"; + }; + KeepAlive = true; + RunAtLoad = true; + StandardOutPath = "/var/log/netbird.out.log"; + StandardErrorPath = "/var/log/netbird.err.log"; + }; + }; + }; +}