如何获取所有类型的反向包依赖项:非 Ubuntu 发行版的反向依赖项

gog*_*lla 8 rpm debian dependencies package-management deb

我想找到某个包的所有可能的反向依赖(不需要递归反向依赖)p,也就是说,我想找到所有依赖于p. 这应包括对p的源包的反向依赖以及反向构建依赖。

如果我理解正确的话,有 4 种类型的反向依赖关系:

  1. r 取决于 p
  2. r 取决于源包 p
  3. 建筑r需要p
  4. 构建r需要源包p

我想找到所有这些。

对于 Debian,有apt-rdepends -r手册上说:

 apt-rdepends cannot do reverse build-dependencies.
Run Code Online (Sandbox Code Playgroud)

对于 Ubuntu,有reverse-depends,这似乎让我做我想做的事,但它似乎是特定于 Ubuntu 的,正如手册页所述

提供者:ubuntu-dev-tools_0.153_all

是否有类似反向依赖的工具适用于非 Ubuntu 发行版,尤其是那些使用debrpm包的发行版?

Ste*_*itt 13

在 Debian 及其衍生版本中,有六种类型的依赖项:

  • 预先依赖
  • 要看
  • 推荐
  • 建议
  • 构建依赖
  • 构建依赖于

这些中的每一个都给出了相应的反向依赖关系。要列出它们,您可以使用grep-dctrl

grep-dctrl -FBuild-Depends mypackage -w -sPackage /var/lib/apt/lists/*Sources
Run Code Online (Sandbox Code Playgroud)

将列出构建依赖的所有包mypackage mypackage非递归反向构建依赖。