softether: improve service dependencies

Changed files
+9 -7
nixos
modules
services
networking
+9 -7
nixos/modules/services/networking/softether.nix
···
];
systemd.services."softether-init" = {
description = "SoftEther VPN services initial task";
-
wantedBy = [ "network-interfaces.target" ];
serviceConfig = {
Type = "oneshot";
RemainAfterExit = false;
···
(mkIf (cfg.vpnserver.enable) {
systemd.services.vpnserver = {
description = "SoftEther VPN Server";
-
after = [ "softether-init.service" ];
-
wantedBy = [ "network-interfaces.target" ];
+
after = [ "softether-init.service" "network.target" ];
+
wants = [ "softether-init.service" ];
+
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "forking";
ExecStart = "${pkg}/bin/vpnserver start";
···
(mkIf (cfg.vpnbridge.enable) {
systemd.services.vpnbridge = {
description = "SoftEther VPN Bridge";
-
after = [ "softether-init.service" ];
-
wantedBy = [ "network-interfaces.target" ];
+
after = [ "softether-init.service" "network.target" ];
+
wants = [ "softether-init.service" ];
+
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "forking";
ExecStart = "${pkg}/bin/vpnbridge start";
···
(mkIf (cfg.vpnclient.enable) {
systemd.services.vpnclient = {
description = "SoftEther VPN Client";
-
after = [ "softether-init.service" ];
-
wantedBy = [ "network-interfaces.target" ];
+
after = [ "softether-init.service" "network.target" ];
+
wants = [ "softether-init.service" ];
+
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "forking";
ExecStart = "${pkg}/bin/vpnclient start";