为来自一个源的数据文件创build多个Debian软件包

我有一堆dictd词典程序的字典文件。 每个字典有2个文件(一个dict.dz和一个.index文件),总共有8个字典。

字典的安装非常简单,这是我目前在我的脚本中的:

install -o root -g root -m 644 /path/to/dictd_dictionaries/* /usr/share/dictd /usr/sbin/dictdconfig --write service dictd restart 

现在我想将这些文件打包成.deb包,每个字典包含一个.deb包。 我真的很想有一个源.deb包,然后创build所有单独的包,而不是必须创build和维护8个单独的包(可能会随着时间的推移增长的数字)。

但是我不明白debian / packagename.dirs文件如何与debian / rules文件中的内容相关联。 我尝试下载并查看freedict的源代码包,这与我想要做的非常类似,但是它的规则文件非常复杂。

您可以使用dh-make软件包并指定“多个二进制”。 这有点像创建骨架debian /目录的向导。

例如

 # dh_make --packagename=skeleton_1.0 perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = "en_GB:en", LC_ALL = (unset), LANG = "en_GB.UTF-8" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C"). Type of package: single binary, indep binary, multiple binary, library, kernel module, kernel patch or cdbs? [s/i/m/l/k/n/b] 

在这个时候键入“m”将会设置它,这样一个源码包就会生成几个包。

在dh_make向导完成设置之后,您需要维护debian / [packagename] .dirs和debian / [packagename] .install,以便打包程序知道哪些文件将放在哪个.deb文件中。

例如
skeleton.dirs

 usr/bin 

skeleton.install

 usr/bin/skeleton*