anchor.diff:            WorkingDirectory = cfg.dataDir;
             User = user;
             Group = group;
  -          PermissionsStartOnly = true; # preStart needs to run with root permissions
  +          PermissionsStartOnly = true;
           };
         };
  -
  -  };
  -
  +    })
  +    {
  +      meta.maintainers = with lib.maintainers; [ arobyn ];
  +    }
  +  ];
   }
  
positive.code: in
  
  {
    
    ###### interface
  
    options = {
  
      services.teamspeak3 = {
  
        enable = mkOption {
          type = types.bool;
          default = false;
  
negative.code: 
    ###### implementation
  
    config = mkMerge [
      (mkIf cfg.enable {
        users.users.teamspeak = {
          description = "Teamspeak3 voice communication server daemon";
          group = group;
          uid = config.ids.uids.teamspeak;
          home = cfg.dataDir;
          createHome = true;
        };
  
        users.groups.teamspeak = {
          gid = config.ids.gids.teamspeak;
        };
  
        systemd.services.teamspeak3-server = {
          description = "Teamspeak3 voice communication server daemon";
          after = [ "network.target" ];
          wantedBy = [ "multi-user.target" ];
  
          preStart = ''
            mkdir -p ${cfg.logPath}
            chown ${user}:${group} ${cfg.logPath}
          '';
  
          serviceConfig = {
            ExecStart = ''
              ${ts3}/bin/ts3server \
                dbsqlpath=${ts3}/lib/teamspeak/sql/ logpath=${cfg.logPath} \
                voice_ip=${cfg.voiceIP} default_voice_port=${toString cfg.defaultVoicePort} \
  