12

我正在尝试获取已卸载的 deb 包的许可证信息。
dpkg --info <package-name>.deb不提供该信息。
ubuntu 中是否有任何命令可以提供此信息?
(在 rpm 世界中 rpm -qpi 提供该信息)

4

1 回答 1

11

我知道没有简单的命令。你可以这样做:

dpkg-deb --fsys-tarfile foo.deb |tar -xvO ./usr/share/doc/foo/copyright

这会将文件打印到标准输出。

编辑嗯,这听起来很难。在快速浏览了我的 Debian 系统上的 apt 缓存后,我发现了一些可能有用的短语:

  • “GNU 通用公共许可证”
  • “上述版权声明和此许可声明”,确保您先解开行
  • " /usr/share/common-licenses/*"

    这似乎最接近您将获得的标准许可证,但要小心,因为通常包装是在一个通用许可证下,但包内容是在一个单独的许可证下。

  • ^License: MPL-1.1 | GPL-2+ | Apache-2.0

然而,一些软件包(ImageMagick)只是在版权文件中有一个自由格式的许可证,它并不真正符合任何库存许可证,除非有人认为它是 DFSG 批准的。

2012 年更新:这开始发生变化,因为debian/copyright文件现在需要是机器可解释的,因此您可以期待将来。

于 2009-12-10T23:16:11.563 回答