Merge pull request #8639 from sjmackenzie/zerotierone

zerotier-one: service add

Changed files
+33
nixos
modules
services
networking
+1
nixos/modules/module-list.nix
···
./services/networking/wicd.nix
./services/networking/wpa_supplicant.nix
./services/networking/xinetd.nix
+
./services/networking/zerotierone.nix
./services/networking/znc.nix
./services/printing/cupsd.nix
./services/scheduling/atd.nix
+32
nixos/modules/services/networking/zerotierone.nix
···
+
{ config, lib, pkgs, ... }:
+
+
with lib;
+
+
let
+
cfg = config.services.zerotierone;
+
in
+
{
+
options.services.zerotierone.enable = mkEnableOption "ZeroTierOne";
+
+
config = mkIf cfg.enable {
+
systemd.services.zerotierone = {
+
description = "ZeroTierOne";
+
path = [ pkgs.zerotierone ];
+
after = [ "network.target" ];
+
wantedBy = [ "multi-user.target" ];
+
preStart =
+
''
+
mkdir -p /var/lib/zerotier-one
+
chmod 700 /var/lib/zerotier-one
+
chown -R root:root /var/lib/zerotier-one
+
'';
+
serviceConfig = {
+
Type = "forking";
+
User = "root";
+
PIDFile = "/var/lib/zerotier-one/zerotier-one.pid";
+
ExecStart = "${pkgs.zerotierone}/bin/zerotier-one -d";
+
};
+
};
+
environment.systemPackages = [ pkgs.zerotierone ];
+
};
+
}