anchor.diff:        };
   
         home = mkOption {
  -        type = types.path;
  +        type = passwdEntry types.path;
           default = "/var/empty";
           description = "The user's home directory.";
         };
  
positive.code:       };
  
        description = mkOption {
          type = types.str;
          default = "";
          example = "Alice Q. User";
          description = ''
  
negative.code: let
    ids = config.ids;
    cfg = config.users;
  
    isPasswdCompatible = str: !(hasInfix ":" str || hasInfix "\n" str);
    passwdEntry = type: lib.types.addCheck type isPasswdCompatible // {
      name = "passwdEntry ${type.name}";
      description = "${type.description}, not containing newlines or colons";
    };
  
    # Check whether a password hash will allow login.
    allowsLogin = hash:
  