![Ubuntu - 安装非最新软件包作为依赖项](https://linux22.com/image/790219/Ubuntu%20-%20%E5%AE%89%E8%A3%85%E9%9D%9E%E6%9C%80%E6%96%B0%E8%BD%AF%E4%BB%B6%E5%8C%85%E4%BD%9C%E4%B8%BA%E4%BE%9D%E8%B5%96%E9%A1%B9.png)
我正在尝试使用 FPM 构建一个 debian 包。这个包,我们称之为包 A,有一个自定义依赖项,包 B。假设包 A.1 依赖于包 B.1。如果将 B.2 添加到存储库,包 A.1 将无法安装(“未满足的依赖项”),因为操作系统想要安装 B.2。
有没有办法在安装包 A.1 时强制 Ubuntu 安装包 B.1,即使 B.2 存在于 repo 中?
背景:软件包 A 实际上是我们的产品,它是一个 ruby on rails 应用程序。软件包 B 是 Ruby 的一个特定版本,因为 Ubuntu 上的 Ruby 版本往往落后。如果我们指定要与软件一起安装的 ruby 软件包的确切版本,它会运行良好……直到我们构建一个较新版本的 ruby 并将其放在存储库中。安装太新的 Ruby 版本会破坏应用程序。