如何告诉 aptitude 自动安装缺少的软件包而不是删除软件包来满足依赖关系?

如何告诉 aptitude 自动安装缺少的软件包而不是删除软件包来满足依赖关系?

我正在使用 live-build 通过 Skype 创建 Live CD。在构建过程中,我运行以下脚本:

# Download the Skype package suitable for Squeeze
wget --continue -O skype-install.deb \
    http://download.skype.com/linux/skype-debian_4.0.0.7-1_i386.deb
# Install the package.
dpkg -i --force-architecture --no-debsig skype-install.deb || true
# Fix missing dependencies
aptitude -f install

问题是aptitude -f install建议删除 Skype 而不是安装缺少的库。我必须以交互方式告诉它更喜欢第二种解决方案。我可以在命令行上以某种方式告诉我吗?理想情况下,我想在无人值守的情况下运行它

aptitude -y --some-flag-to-ensure-no-removals -f install

答案1

也许可以使用 aptitude 的--safe-resolver选项来做你想做的事。引用 aptitude 0.6.8.2 的手册页:

该解析器尝试保留尽可能多的选择;它永远不会删除包或安装包的默认候选版本以外的版本。

要在全局范围内执行此操作,请设置Aptitude::Always-Use-Safe-Resolvertrue.

相关内容