![是否可以淘汰那些不符合现代可用性标准的软件包?](https://linux22.com/image/1048973/%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E6%B7%98%E6%B1%B0%E9%82%A3%E4%BA%9B%E4%B8%8D%E7%AC%A6%E5%90%88%E7%8E%B0%E4%BB%A3%E5%8F%AF%E7%94%A8%E6%80%A7%E6%A0%87%E5%87%86%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%8C%85%EF%BC%9F.png)
Ubuntu 从存储库中弃用和删除软件包的流程是什么?
我经常需要一个用户模式的 FTP 服务器来将文件传输到我的机器,并且不断运行http://packages.ubuntu.com/trusty/pyftpd,它没有命令行界面,没有手册页。我会用http://packages.ubuntu.com/trusty/python-pyftpdlib。现在我必须用 来调用它python -m pyftpdlib
,这不直观而且很麻烦。
答案1
您提到的两个软件包都只是从上游 Debian 存储库同步。
如果其中一个软件包取代了来自 Debian 上游的另一个软件包,那么可能需要联系 Debian 软件包的维护者,并适当处理被取代软件包的弃用和替换。然后,一旦在 Debian 中修复,这些更改就可以同步回 Ubuntu 的开发版本,然后在必要时移植到稳定版本。
答案2
是否可以让 python-ftpdlib 包提供相同的二进制文件?
您的建议在很多方面都是不可取的:
- 两个包提供相同的文件(二进制文件)意味着您不能同时安装它们(或者您需要一个繁琐的 dpkg-alternatives 脚本)。
pyftpd
不是pyftpdlib
所以如果把它们称为同一个东西,会让人感到困惑。为什么不使用一个不同的名字的二进制文件呢/usr/bin/pyftpdlib-server
?- 将某个东西重命名为占用另一个项目的现有名称,会让想要使用该项目的用户感到困惑。
我建议采用以下几种解决方案之一:
- 删除您不想要的任何包并创建您自己的启动器来
/usr/local/bin
加载您想要的库。 - 请愿上游或 Debian 维护者在他们的软件包中包含一个启动器(尽管这将在他们的项目的名称,而不是其他项目的名称)...或者提交补丁来为他们执行此操作。
- 提交您要删除的项目的修复,使其可访问性标准达到您的标准。如果它对您来说更好,那么它可能对每个人都更好。
- 创建一个依赖于 的配套包(称为
pyftpdlib-server
或) ,并仅提供启动器。将其直接提交给 Debian。python-pyftpdlib-server
python-pyftpdlib