anchor.diff:  
     config = mkIf cfg.enable {
   
  -    users.extraUsers = singleton
  +    users.extraUsers = mkIf (cfg.user == null) [
         { name = cfg.user;
           description = "AMule daemon";
  -      };
  +      } ];
   
       jobs.amuled =
         { description = "AMule daemon";
  
positive.code:       };
  
        dataDir = mkOption {
          default = ''/home/${cfg.user}/'';
          description = ''
            The directory holding configuration, incoming and temporary files.
          '';
        };
  
        user = mkOption {
          default = "amule";
          description = ''
            The user the AMule daemon should run as.
          '';
  
negative.code: 
          preStart = ''
              mkdir -p ${cfg.dataDir}
              chown ${user} ${cfg.dataDir}
          '';
  
          exec = ''
              ${pkgs.su}/bin/su -s ${pkgs.stdenv.shell} ${user} \
                  -c 'HOME="${cfg.dataDir}" ${pkgs.amuleDaemon}/bin/amuled'
          '';
        };
  
    };
    
  }
  