我有一个用于 Django 系统的 .deb 安装程序,我需要向安装该软件的人询问一些问题。我可以看到一些方法来做到这一点,我想知道什么是 Debian 软件包的最佳实践。
现在通常,debconf 将是显而易见的解决方案。但是在这种情况下,我想每次都问这个问题,而不是让 Debian 记住它们并将它们应用于每次后续升级。其原因与问题的性质有关。具体来说,问题是“您现在要应用数据库迁移吗?” 和“你想建立一个演示数据库吗?”
现在,这些都可以在安装后手动完成,但到目前为止的经验表明,这一步很容易忘记,所以我想提示一下。我会自动执行迁移步骤,除了我们偶尔需要从其他机器迁移数据库,并且在应用迁移之前更容易完成。“演示数据库”问题通常仅在首次安装时使用,因此取决于迁移情况。但是,我们不希望 Debian 记住该选择并每次都应用它,因为它可能会损坏现有的、正在使用的数据库。
所以我想知道正统的 Debian 式方法可能是什么。我可以使用 postinst 脚本中的 shell 提示符,但如果有更好的方法,我会尽快这样做。我应该补充一点,我知道“再问一次”,但这似乎只能作为一个全局设置,我会尽快为这个包做这个。
最后一件事:这是一个内部系统,永远不会托管在公共存储库上,所以我不会过度担心无人值守安装或非 bash 安装环境等考虑因素。
这已经困扰了我几个星期了。感激地收到任何帮助。