Sté*_*ane 9 apt dpkg add-apt-repository deb
作为将部署到 Ubuntu 12.04 设备的自定义(内部).deb 文件的一部分,我需要添加几个 PPA 存储库,运行 apt-get update,然后从这些 PPA 安装软件包。
这可以在我的 .deb 文件中的 .preinst 或 .postinst 脚本中完成吗?
我认为当安装我的.deb文件(sudo dpkg -i testing.deb
),一些锁或机制可能存在这会阻止我调用某些命令,如add-apt-repository
,apt-get update
和apt-get install
。
这是一个正确的假设吗?
小智 7
你是对的。维护者脚本不应该对 apt 或 dpkg 状态进行任何更改,除了在安装包时所做的更改。
/etc/apt/sources.list.d
但是,将文件安装到中很好。大多数具有“安装此包以将 APT 存储库 X 添加到您的系统”之类的角色的包只是这样做(而不是调用add-apt-repository
)。将用于签署回购协议的 GPG 公钥删除也很常见/etc/apt/trusted.gpg.d
。
如果你想让用户为你的软件执行额外的安装步骤变得简单,你可能只想发布一个脚本来完成这项工作,并告诉用户手动运行脚本。
但是,如果您真的,真的想自动调用apt-get update
orapt-get install
等,并且您不介意您的软件包在 Debian 或 Ubuntu 中完全不可接受,并且您的用户对软件包的这种行为感到满意,那么您也许可以一些在/etc/cron.d
该检查任何现有的或容易的dpkg锁,如果没有持有,执行不再次执行这些步骤你额外的安装步骤和整理。我不推荐这种方法。
归档时间: |
|
查看次数: |
2881 次 |
最近记录: |