4

我正在尝试从二进制文件创建一个 deb 包,但版权文件有问题。如果我在 DEBIAN 文件夹中放置一个名为 copyright 的文件,它会抱怨两件事:

  • 缺少版权
  • 未知控制文件版权

如果我把它放在下面/usr/share/doc或者/usr/share/doc/mypackage它根本没有抱怨,但无论如何,当我打开生成的 debian 包时,Ubuntu 软件中心会显示许可证:未知

使用:ubuntu raring

执行fakeroot dpkg-deb -z8 -Zgzip --build myproj

版权文件如下:

Format: http://dep.debian.net/deps/dep5
Upstream-Name: myproj
Source:


Files: *
Copyright: 2013 myproj. All rights reserved.
License: Limited Use Software License Agreement
 License Text Here
4

2 回答 2

4

如果您使用像这样的低级工具构建包,dpkg-deb您应该对 debian 包的内部结构有很好的了解。

DEBIAN/- 文件夹实际上用于控制文件,例如软件包的描述control文件,以及各种安装前/安装后脚本(例如postinst)。

otoh,构建包的常用方法是使用高级工具,即dpkg-buildpackage,它使用一个debian/目录,该目录具有相似的名称DEBIAN/但实际上完全不同(注意大写/小写拼写)。

dpkg-buildpackage(或者更确切地说,它是基础工具,如debhelpercdbs或您选择的任何东西)会将debian/changelog文件安装到/usr/share/doc/<packagename>/. 如果你坚持使用低级工具,那么你一定不能把你的 changelogDEBIAN/放到/usr/share/doc/myproj/.

顺便说一句,您应该使用其最终版本中描述的 DEP5 格式,并表明您这样做是使用

Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
于 2013-08-04T14:14:28.203 回答
3

显然 Ubuntu 软件中心中的“未知”问题不是问题,目前无法解决。来自 ubuntu 列表,Feb'13 线程:

您的版权文件看起来很完美。不幸的是,软件中心实际上仍然没有解析版权文件来收集这些信息。它似乎使用“许可证:开源”或 Ubuntu main 和 Universe 中的所有内容,“专有”用于受限内容,“未知”用于其他所有内容。这里有一个关于这个问题的开放错误报告:

https://bugs.launchpad.net/ubuntu/+source/software-center/+bug/435183

他们在 7 月开始研究这个问题

于 2013-08-19T11:40:30.050 回答