pkgcore.ebuild.overlays module¶
Support for Gentoo’s published list of ebuild repositories.
repositories.xml maps a repository name to the URIs it can be synced from.
This module fetches and caches that list, and writes repos.conf entries for the
repos picked out of it, which is what pmaint sync --import is built on.
- class pkgcore.ebuild.overlays.RemoteRepo(name: str, homepage: str, sources: tuple[tuple[str, str], ...])[source]¶
Bases:
objectA repository as described by the remote list.
- exception pkgcore.ebuild.overlays.RemoteRepoError(msg, verbosity=None)[source]¶
Bases:
PkgcoreUserExceptionFailure while using the remote repository list.
- pkgcore.ebuild.overlays.add_repos_conf_entry(path: str, name: str, location: str, sync_type: str, sync_uri: str) str[source]¶
Declare a repo under a repos.conf path, returning the file written to.
A repos.conf directory gets a file per repo so that dropping the repo later is a matter of dropping its file.
- pkgcore.ebuild.overlays.configured_repos(path: str) dict[str, dict[str, str]][source]¶
Every repo declared under a repos.conf path, keyed by name.
Locations are resolved the way
PortageConfigresolves them, so that they can be compared against one another.
- pkgcore.ebuild.overlays.remote_repos() dict[str, RemoteRepo][source]¶
Every repo in the remote list, keyed by name.
- pkgcore.ebuild.overlays.repo_masters(location: str) tuple[str, ...][source]¶
Repos that the one at a given location inherits from.
- pkgcore.ebuild.overlays.repos_base(configured: dict[str, dict[str, str]]) str[source]¶
Where a new repo belongs, going by the repos already being synced.
That’s /var/db/repos on an ordinary install, but pkgcore’s stub config keeps repos under the user cache instead, and an import should follow whichever is in use rather than scatter repos across both.