def main(config, repository, show_all=False, save=False, store=None): config.load_config() data = fetch(repository, show_all=show_all) if not save: print(json.dumps(data)) else: package_store = services.packages_store(config, path=store) store_data = package_store.update(data, package_store.load()) package_store.save(store_data) if store is None: local_store = services.packages_store(config, path=config.control.resolve_path("local.repository.json")) store_data = local_store.update(data, local_store.load()) local_store.save(store_data)
def main(config, url=None, save=False): config.load_config() package_store = services.DumpOrSaveWrapper(services.packages_store(config), save=save) repository_store = services.RepositoriesStore(config) new_repositories = [url] if url else [] new_data = repository_store.extract_packages(itertools.chain(config.repositories, new_repositories)) package_store.save(new_data)
def gen(): sys.stderr.write("-- template --\n") store = services.packages_store(config) for data in store.load(): yield ("{data[name]}({data[star]}) -- {data[description]:.60}".format(data=data)) sys.stderr.write("-- alias --\n") store = services.aliases_store(config) for data in store.load(): yield("{data[name]} -> {data[link]}".format(data=data))
def main(config, name): config.load_config() store = services.packages_store(config) store_data = store.load() new_data = store.remove(name, store_data) logger.info("remove package %s from store", name) if len(new_data) != len(store_data): logger.info("%s is removed", name) store.save(new_data)
def selfupdate(config): config.load_config() logger.info("selfupdate") logger.info("updating store=%s", config.store_path) package_store = services.packages_store(config) alias_store = services.aliases_store(config) repository_store = services.RepositoriesStore(config) package_store.save(repository_store.extract_packages(config.repositories)) alias_store.save(repository_store.extract_packages(config.aliases))