gpt4 book ai didi

debian-packaging - 来自 deb postinst 中的 Apt-get 命令

转载 作者:行者123 更新时间:2023-12-04 20:10:08 24 4
gpt4 key购买 nike

我有一个我创建的 deb 包。从 postinst 脚本,我想运行:

apt-get update

该软件包通过在/etc/apt/apt.conf.d/中放置一个文件来为 apt 系统添加一个代理。我想强制 apt 系统执行相当于“apt-get update”的操作。但是,我不能直接从 postinst 运行该命令,因为 apt lock 文件已由正在安装此软件包的 dpkg 放置!是否有一些 debconf 工具/命令可以做到这一点?

作为奖励,我希望能够从 preinst/postinst 中删除一个包:
apt-get remove popularitycontest

注意 - 这个包是用于一个内部项目的 - 不是一个将被释放到野外或提交给 Debian 的 deb。

最佳答案

无法从包脚本(preinst、postinst、prerm、postrm...)中调用 APT 命令(apt-get、aptitude..)。

启用 so 会引发很多问题,尤其是对于包安装的依赖关系和顺序。

已经使用了各种解决方法,或者通过使用适当的包(预)依赖项,或者通过为您的用户提供易于使用的工具(如模块助手和其他工具)。

在您的情况下,您的软件包可能会与流行性竞赛冲突以卸载它。另外,如果你的用户有“你的”包,这意味着他们已经在他们的sources.list中添加了一个条目,所以他们可以添加另一个!

关于debian-packaging - 来自 deb postinst 中的 Apt-get 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18599599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com