为了自动安装 .deb,我需要在使用新配置文件安装包之前设置 DPkg::Options

为了自动安装 .deb,我需要在使用新配置文件安装包之前设置 DPkg::Options

我有一个自定义 Debian 软件包,它创建了一个触摸屏校准文件,并将部署用于自动更新。如果用户更改了校准文件,我想保留它,因此我的新版本软件包已将此文件声明为“conffile”。

问题是,升级到我的新版本的软件包后,会出现一个“conffile”对话框

Configuration file `/etc/penmount/penmount.dat'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
  What would you like to do about it ?  Your options are:
  Y or I  : install the package maintainer's version
  N or O  : keep your currently-installed version
  D     : show the differences between the versions
  Z     : start a shell to examine the situation
The default action is to keep your current version.
*** bash.bashrc (Y/I/N/O/D/Z) [default=N] ? 

我可以通过创建包含以下内容的 /etc/apt/apt.conf/local 文件来自动回答这个问题:

Dpkg::Options {
   "--force-confdef";
   "--force-confold";
}

我的方法是创建这个本地包并将其与另一个包一起安装,然后使用 Pre-Depends 在使用 conffile 升级包之前安装这个包。

但是,当我执行 dist-upgrade 时,两个包都安装好了,但上面的对话框会暂停安装。如果我先安装设置 Dpkg 选项的包,然后再安装我的“conffile”包,问题就会自动处理。

如何将现有的配置文件标记为conffile并一次性自动更新?

相关内容