FAQ
配好之后为何 emerge 不使用二进制包,仍然编译?
二进制包只有在 profile 和 USE 都匹配时才会被采用,不匹配的话 portage 也不报错,直接就编译源码了。
可以使用 emerge -pv 查看,只有前缀是 [binary] 才是走了二进制包。
为什么要用 binrepos.conf,不能直接设 PORTAGE_BINHOST?
因为 PORTAGE_BINHOST 产生的是隐式仓库,没法单独设置 verify-signature。
如果你为了装这里的包关掉验签,官方 binhost 的验签也会被一起关掉。
OpenRC 和 systemd 都能使用吗?
能。仓库按 CPU 基线切分,不按 init 系统切,这也是官方 binhost 的做法。
清单里 187 个包只有 3 个的 IUSE 含 systemd,其余产物两边一致。
二进制包会不会在我的 CPU 上跑不起来?
不会。构建都在容器里进行,CFLAGS 是通用的,不带 -march=native。
这一点必须在构建端保证——portage 接受二进制包时并不比较 CFLAGS。
怎么确认装的东西没被修改?
签名内嵌在每个 gpkg 包里(image.tar.xz.sig),和官方 binhost 一样。
配置里的 binpkg-request-signature 会让 portage 拒绝任何验签不过的包。
二进制包实际是从哪里下载的?
索引在 mirrors.gentoozh.org,而包本身是放在 GitHub Release,请求会被 302 过去。
如何停用?
直接删掉 /etc/portage/binrepos.conf/gentoo-zh.conf 即可,已经安装的包不会受到影响。
都收录了哪些包?
仅收录 gentoo-zh/overlay 自己的包,且许可证允许再分发。而带 RESTRICT=bindist 的一律不发。
清单见 gentoo-zh/binhost。