distro/keyrings: extraction works

This commit is contained in:
InsanePrawn 2023-04-17 21:57:42 +02:00
parent c576dc8a51
commit 38b23de9ad
5 changed files with 34 additions and 22 deletions

View file

@ -49,6 +49,15 @@ class Distro(Generic[RepoType]):
results.update(repo.packages)
return results
def find_package(self, name: str) -> Optional[BinaryPackageType]:
for repo in self.repos.values():
if not repo.scanned:
repo.scan()
p = repo.packages.get(name, None)
if p:
return p
return None
def repos_config_snippet(self, extra_repos: Mapping[str, RepoInfo] = {}) -> str:
extras: list[Repo] = [
Repo(name, url_template=info.url_template, arch=self.arch, options=info.options, scan=False) for name, info in extra_repos.items()