anchor.diff:      (mkIf (cfg.vpnclient.enable) {
         systemd.services.vpnclient = {
           description = "SoftEther VPN Client";
  -        after = [ "network-interfaces.target" ];
  -        wantedBy = [ "multi-user.target" ];
  +        after = [ "softether-init.service" ];
  +        wantedBy = [ "network-interfaces.target" ];
           serviceConfig = {
  +          Type = "forking";
             ExecStart = "${pkg}/bin/vpnclient start";
             ExecStop = "${pkg}/bin/vpnclient stop";
  -          Type = "forking";
           };
           preStart = ''
               rm -rf ${cfg.dataDir}/vpnclient/vpnclient
  
positive.code:     (mkIf (cfg.vpnbridge.enable) {
        systemd.services.vpnbridge = {
          description = "SoftEther VPN Bridge";
          after = [ "network-interfaces.target" ];
          wantedBy = [ "multi-user.target" ];
          serviceConfig = {
            ExecStart = "${pkg}/bin/vpnbridge start";
            ExecStop = "${pkg}/bin/vpnbridge stop";
            Type = "forking";
          };
          preStart = ''
              rm -rf ${cfg.dataDir}/vpnbridge/vpnbridge
  
negative.code:             dataDir = cfg.dataDir;
            }))
          ];
        systemd.services."softether-init" = {
          description = "SoftEther VPN services initial task";
          wantedBy = [ "network-interfaces.target" ];
          serviceConfig = {
            Type = "oneshot";
            RemainAfterExit = false;
          };
          script = ''
              for d in vpnserver vpnbridge vpnclient vpncmd; do
                  if ! test -e ${cfg.dataDir}/$d; then
                      ${pkgs.coreutils}/bin/mkdir -m0700 -p ${cfg.dataDir}/$d
  