最近我添加了一个非官方的第三方回购协议到我的 Fedora 23 安装。
基本上我对此存储库提供的软件包感兴趣,simplescreenrecorder
因为它在官方 fedora 存储库或 RPMFusion 中不可用。
我想以这样的方式设置第 3 方存储库,即仅simplescreenrecorder
安装/更新该软件包及其依赖项,而不是其他任何内容。
我尝试将
includepkgs=simplescreenrecorder*
和 添加includ=simplescreenrecorder*
到/etc/yum.repos.d/FZUG.repo
文件中,但dnf
似乎忽略了它们。
我该怎么做才能使这项工作成功?
答案1
假设您已按照您提供的链接中的步骤添加了新的存储库,那么您可以将它们默认设置为“禁用”:
dnf config-manager --set-disabled fzug-free
dnf config-manager --set-disabled fzug-nonfree
现在,当您进行任何安装/更新时,dnf 将不会安装这些存储库中的任何内容。为了安装simplescreenrecorder
,只需执行以下操作:
dnf install --enablerepo=fzug-* simplescreenrecorder
这将仅安装必需的内容simplescreenrecorder
,并保持 fzug 存储库对任何其他dnf
命令禁用。除非您启用它们或--enablerepo=fzug-*
再次使用该参数,否则不会安装“fzug”软件包。如果稍后您想要更新simplescreenrecorder
到较新的版本及其依赖项(如果需要),则显式升级它:
dnf upgrade --enablerepo=fzug-* simplescreenrecorder
答案2
include=simplescreenrecorder*
在/etc/yum.repos.d/FZUG.repo
(来自官方文档)应该给你你想要的。但是,如果您没有启用源,则需要将其附加到适当的启用存储库,因此附加到 和[fzug-free]
。[fzug-nonfree]
您还应该运行dnf update --refresh
以确保重新加载缓存。
编辑:根据文档,这应该可以工作,但它不适用于当前的 DNF 1.1.5,因为错误#1055910。include
/ options的整个行为exclude
很奇怪。我正在考虑一些解决方法,但到目前为止没有成功。留下这篇信息丰富的帖子,也许有人会有更聪明的想法。