如果我想安装一个包及其 Suggests 依赖项,我运行:
$ sudo apt-get --install-suggests install <package name>
但是,如果<package name>
已安装,并且未安装所有 Suggests 依赖项,则“什么也不会发生”...那些剩余的依赖项仍处于卸载状态。除了编写代码之外,还有其他解决方案吗?
答案1
您可以使用 的高级搜索功能来完成此操作aptitude
。以下将安装建议的软件包network-manager
:
aptitude install '~Rsuggests:^network-manager$'
来自 aptitude HTML 文档:
?reverse-depType(pattern), ~R[depType:]pattern
depType 可以是“provides”,也可以是 ?broken-depType 文档中给出的依赖类型之一。如果 depType 不存在,则默认为 dependent。
如果 depType 为“provides”,则匹配名称由包版本匹配模式提供的包。否则,匹配包版本匹配模式声明 depType 类型依赖项的包。
答案2
不太标准的解决方案:
$ wajig installsuggested network-manager
使用信息:
$ wajig installsuggested --help
usage: wajig installsuggested [-h] [-r | -R] [-y] [-n] [-d DIST] [-s | -t]
package
Install a package and its Suggests dependencies
positional arguments:
package
optional arguments:
-h, --help show this help message and exit
-r, --recommends install Recommend dependencies (Debian default)
-R, --norecommends do not install Recommend dependencies
-y, --yes skip 'Yes/No' confirmation prompts; use with care!
-n, --noauth do not authenticate packages before installation
-d DIST, --dist DIST specify a distribution to use (e.g. testing or
experimental)
-s, --simulate simulate command execution
-t, --teach display commands to be executed, before actual
execution