2013-08-02 43 views
3

我想从二进制文件创建一个deb包,但是我有版权文件的问题。 如果我把一个名为版权文件Debian文件夹里面抱怨的两件事情:deb包中的版权文件 - 如何

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

如果我把它/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 

回答

2

显然,在Ubuntu软件中心“未知”的问题不是一个问题,不能得到解决目前来说。 从ubuntu列表中,Feb'13线程:

您的版权文件看起来很完美。不幸的是,软件中心 仍然没有实际解析版权文件以收集该信息。它似乎使用“许可证:开放源代码”或 Ubuntu主要和宇宙中的所有内容,“Proprietary”用于限制事物,而 “Unknown”用于其他任何内容。有关于 问题在这里开放的bug报告:

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

他们开始在发行工作在七月

2

如果你建立一个使用低级别工具,如dpkg-deb一个包,你应该有一个Debian软件包的内部有很好的了解。

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

OTOH,将usual way建立包是使用高层工具,即dpkg-buildpackage,它采用了debian/目录,其中有一个类似的名字,以DEBIAN/但真的是完全不同的东西(注意大/小写拼写)。

dpkg-buildpackage(如debhelpercdbs或任何你选择或更确切地说它的底层工具)将debian/changelog文件安装到/usr/share/doc/<packagename>/。 如果您坚持使用低级别工具,那么您不能将您的更改日志放入DEBIAN/,而是放入/usr/share/doc/myproj/

顺便说一句,你应该使用它的final version描述的DEP5格式,也表明你没有这样使用

Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ 
+0

但是从我所看到的dpkg-buildpackage非常适合那些打算包使用make构建,我想创建一个来自二进制文件的包 – hithwen

+0

'dpkg-buildpackage'对构建包的'make'一无所知。 (实际上,它在内部使用'make'来处理'debian/rules'文件,但这完全独立于(不)在包构建过程中创建任何文件)。例如许多软件包仅包含脚本,因此不需要编译,可以使用“源文件”*。仍然使用'dpkg-buildpackage'来组装软件包。 –