support different repositories