如何使用不稳定的存储库并默认仅安装测试中的软件包(通过 AptConf)?

如何使用不稳定的存储库并默认仅安装测试中的软件包(通过 AptConf)?

我已按照以下说明进行操作debian-handbook.info/browse/stable/apt.html(和那里链接的页面)基本上就是说将以下文本放入/etc/apt/sources.list

# Unstable
deb http://ftp.debian.org/debian unstable main contrib non-free
deb-src http://ftp.debian.org/debian unstable main contrib non-free

# Testing
deb http://ftp.debian.org/debian testing main contrib non-free
deb-src http://ftp.debian.org/debian testing main contrib non-free

# Stable
deb http://ftp.debian.org/debian stable main contrib non-free
deb-src http://ftp.debian.org/debian stable main contrib non-free

# Security updates
deb http://security.debian.org/ stable/updates main contrib non-free
deb http://security.debian.org/ testing/updates main contrib non-free
deb-src http://security.debian.org/ stable/updates main contrib non-free
deb-src http://security.debian.org/ testing/updates main contrib non-free

然后添加APT::Default-Release "testing";/etc/apt/apt.conf.d/local仅下载测试中的包。
好吧,这没有用。
我也尝试添加APT::Default-Release "testing";/etc/apt/apt.conf.d/70debconf按照建议https://wiki.debian.org/AptConfapt dist-upgrade仍然想安装 Unstable 的软件包。

答案1

要从测试安装特定包,您可以执行以下操作:

apt-get install pckg_name/testing

或者

apt-get -t testing install pckg_name

您也可以自己构建软件包,首先您需要安装 apt-listbugsdebhelperdevscriptsbuild-essential

apt-get update
apt-get build-dep pckg_name
apt-get -b source pckg_name
dpkg -i pckg_name

新建一个文件/etc/apt/preferences.d/testing并设置优先级900apt就知道测试包有较高的优先级。

Package: *
Pin: release a=testing
Pin-Priority: 900

然后更新

答案2

我查阅了一些文档,并在 Debian 管理手册中找到了解决方案,第2.7.6节
我的存储库中有测试和不稳定的存储库,并且我用它/etc/apt/sources.list创建了/etc/apt/preferences

Package: *
Pin: release a=unstable
Pin-Priority: 100

在里面。运行apt-cache policy gnome-shell(我使用gnome-shell它作为说明,因为不稳定和测试中提供了不同的版本,分别为 3.20 和 3.18)现在可以正确地将 3.20 和 3.18 显示为可用版本,并将后者显示为候选版本。

我发现最有用的文档:
https://www.debian.org/doc/manuals/debian-reference/ch02.en.html
人 apt_preferences

相关内容