/etc/portage/make.conf
/etc/portage/repos.conf 指定当前系统使用的存储库的位置和设置。它可以是单个文件,也可以是一个或有多个 .conf 文件的目录。它指的是 Gentoo 存储库 以及系统上使用的附加 ebuild 存储库。
If /etc/portage/repos.conf/gentoo.conf does not exist, defaults from /usr/share/portage/config/repos.conf will be used, (unless /etc/portage/repos.conf is a file with a valid "[gentoo]" section, as used to be the default). If some necessary settings, such as sync-uri are omitted from /etc/portage/repos.conf/gentoo.conf, values from /usr/share/portage/config/repos.conf will be used. Some values, such as priority, will be automatically added by Portage even if they are not present in any configuration file.
eselect-repository is a handy tool for configuring repositories without editing /etc/portage/repos.conf by hand.
See the /etc/portage/repos.conf section in man 5 portage for detailed information about the format and parameters of repos.conf.
Manage repositories
Add, disable, or remove ebuild repositories using eselect repository, which also provides other functionality.
It is also possible to add a repository by manually creating files in /etc/portage/repos.conf, see the appropriate section of the Handbook (other reference).
Files in /etc/portage/repos.conf can be edited with a text editor to change the configuration options for an ebuild repository.
List repositories
要显示所有配置了 portage 的软件库,请运行 portageq:
user $
portageq repos_config /
[DEFAULT] auto-sync = yes main-repo = gentoo strict-misc-digests = true sync-allow-hardlinks = true sync-rcu = false [brother-overlay] auto-sync = yes location = /var/db/repos/brother-overlay masters = gentoo strict-misc-digests = true sync-allow-hardlinks = true sync-rcu = false sync-type = git sync-uri = https://github.com/gentoo-mirror/brother-overlay.git [gentoo] auto-sync = yes location = /var/db/repos/gentoo masters = priority = -1000 strict-misc-digests = true sync-allow-hardlinks = true sync-openpgp-key-path = /usr/share/openpgp-keys/gentoo-release.asc sync-openpgp-key-refresh-retry-count = 40 sync-openpgp-key-refresh-retry-delay-exp-base = 2 sync-openpgp-key-refresh-retry-delay-max = 60 sync-openpgp-key-refresh-retry-delay-mult = 4 sync-openpgp-key-refresh-retry-overall-timeout = 1200 sync-openpgp-keyserver = hkps://keys.gentoo.org sync-rcu = false sync-type = rsync sync-uri = rsync://rsync.gentoo.org/gentoo-portage sync-rsync-verify-max-age = 24 sync-rsync-extra-opts = sync-rsync-verify-jobs = 1 sync-rsync-verify-metamanifest = yes [local] auto-sync = no location = /var/db/repos/local masters = gentoo strict-misc-digests = true sync-allow-hardlinks = true sync-rcu = false
Ebuild repository priority
To set the priority of a certain repository, manually edit the relevant repos.conf section and set priority =
to the desired value. The higher the set value, the higher the priority. For example:
# created by eselect-repo
[guru]
location = /var/db/repos/guru
sync-type = git
sync-uri = https://github.com/gentoo-mirror/guru.git
priority = 100
Repositories that do not have a priority explicitly set, default to 0
- except the Gentoo ebuild repository, which defaults to to a value of -1000
.
Alternative sync protocols
See the gentoo.conf article for examples on how to sync the ::gentoo ebuild repository using alternatives to the traditional rsync protocol (such as via git or websync).
参考
- Gentoo 手册中的验证的Gentoo软件仓库快照
- Project:Portage/验证存储库 — describes different methods used to ensure authenticity of the Gentoo ebuild repository.
- 关于Portage同步系统的概述
- Layman 文章中的 Layman - 使用'repos.conf' 方法
- Overlays 用户指南
- 存储库格式 — A quick reference to Gentoo ebuild repository (overlay) format.
- 软件仓库镜像和持续集成
- 在 Portageq 文章中的 查询软件仓库信息
- 使用Gentoo的git存储库作为源
- 屏蔽已安装但不安全的 ebuild 仓库
- Eselect/存储库 — 一个 eselect 模块,用来针对第三方仓库来操控 /etc/portage/repos.conf (又称为 overlay)。
- Portage安全 — aims to answer the question "How can I dispel doubts regarding the security of the Gentoo ebuild repository on a system?"