nixos/dhcpd: Convert to systemd from upstart
This commit is contained in:
parent
24368beed8
commit
b3ddcfabd9
@ -115,22 +115,32 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
jobs.dhcpd =
|
systemd.services.dhcpd =
|
||||||
{ description = "DHCP server";
|
{ description = "DHCP server";
|
||||||
|
|
||||||
startOn = "started network-interfaces";
|
wantedBy = [ "multi-user.target" ];
|
||||||
stopOn = "stopping network-interfaces";
|
|
||||||
|
|
||||||
script =
|
path = [ pkgs.dhcp ];
|
||||||
|
|
||||||
|
preStart =
|
||||||
''
|
''
|
||||||
mkdir -m 755 -p ${stateDir}
|
mkdir -m 755 -p ${stateDir}
|
||||||
|
|
||||||
touch ${stateDir}/dhcpd.leases
|
touch ${stateDir}/dhcpd.leases
|
||||||
|
|
||||||
exec ${pkgs.dhcp}/sbin/dhcpd -f --no-pid -cf ${configFile} \
|
mkdir -m 755 -p /run/dhcpd
|
||||||
-lf ${stateDir}/dhcpd.leases -user dhcpd -group nogroup \
|
chown dhcpd /run/dhcpd
|
||||||
${toString cfg.interfaces}
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
serviceConfig =
|
||||||
|
{ ExecStart = "@${pkgs.dhcp}/sbin/dhcpd dhcpd"
|
||||||
|
+ " -pf /run/dhcpd/dhcpd.pid -cf ${configFile}"
|
||||||
|
+ " -lf ${stateDir}/dhcpd.leases -user dhcpd -group nogroup"
|
||||||
|
+ " ${toString cfg.interfaces}";
|
||||||
|
Restart = "always";
|
||||||
|
Type = "forking";
|
||||||
|
PIDFile = "/run/dhcpd/dhcpd.pid";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user