summaryrefslogtreecommitdiffstats
path: root/nixos
diff options
context:
space:
mode:
authorAaron Andersen <aaron@fosslib.net>2020-10-08 19:17:19 -0400
committerAaron Andersen <aaron@fosslib.net>2020-10-12 12:17:11 -0400
commitf4ff303c3b8697f8084ae4c12e3edfb6f3534cca (patch)
treef8b72f97716dce784a9881b0f72c9c23b9d0ea4b /nixos
parent4d15ce5d15700a1c9c80cabf45772396e5e68970 (diff)
nixos/dnsdist: use upstream systemd unit
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/networking/dnsdist.nix23
1 files changed, 8 insertions, 15 deletions
diff --git a/nixos/modules/services/networking/dnsdist.nix b/nixos/modules/services/networking/dnsdist.nix
index 8249da69bc1a..c48835e73612 100644
--- a/nixos/modules/services/networking/dnsdist.nix
+++ b/nixos/modules/services/networking/dnsdist.nix
@@ -7,7 +7,7 @@ let
configFile = pkgs.writeText "dndist.conf" ''
setLocal('${cfg.listenAddress}:${toString cfg.listenPort}')
${cfg.extraConfig}
- '';
+ '';
in {
options = {
services.dnsdist = {
@@ -35,25 +35,18 @@ in {
};
};
- config = mkIf config.services.dnsdist.enable {
+ config = mkIf cfg.enable {
+ systemd.packages = [ pkgs.dnsdist ];
+
systemd.services.dnsdist = {
- description = "dnsdist load balancer";
wantedBy = [ "multi-user.target" ];
- after = ["network.target"];
serviceConfig = {
- Restart="on-failure";
- RestartSec="1";
DynamicUser = true;
- StartLimitInterval="0";
- PrivateDevices=true;
- AmbientCapabilities="CAP_NET_BIND_SERVICE";
- CapabilityBoundingSet="CAP_NET_BIND_SERVICE";
- ExecStart = "${pkgs.dnsdist}/bin/dnsdist --supervised --disable-syslog --config ${configFile}";
- ProtectHome=true;
- RestrictAddressFamilies="AF_UNIX AF_INET AF_INET6";
- LimitNOFILE="16384";
- TasksMax="8192";
+
+ # upstream overrides for better nixos compatibility
+ ExecStartPre = [ "" "${pkgs.dnsdist}/bin/dnsdist --check-config --config ${configFile}" ];
+ ExecStart = [ "" "${pkgs.dnsdist}/bin/dnsdist --supervised --disable-syslog --config ${configFile}" ];
};
};
};