为另一个包提供自定义配置文件

我们在工作中使用Ubuntu,我需要对许多系统进行相同的配置更改,以便我打包这些。 我需要做的一个配置更改是将lightdm设置为自动登录。 对于我打包此更改,似乎我需要破坏现有的/etc/lightdm/lightdm.conf并将其替换为我自定义的lightdm.conf。 这似乎是一个坏主意。

我怎样才能以不会导致破损的方式做到这一点,并且与社区其他人的工作方式一致?

这通常是通过创建一个在其维护者脚本中使用dpkg-divert来将旧配置文件移到一边的包来完成的:

  • 在您的preinst中,转移文件。

     dpkg-divert --add --package $your_package_name --rename \ --divert /path/to/file.disabled \ /path/to/file 
  • 在你的postrm中,将文件转移回去。

     dpkg-divert --remove --package $your_package_name --rename \ /path/to/file 

请参阅: http : //www.debian.org/doc/debian-policy/ap-pkg-diversions.html

帮助抽象dpkg-divert一个解决方案是由MIT的Debathena项目创建和维护的config-package-dev软件包。 他们有一个全面的教程 。