views:

147

answers:

1

I am trying to get license information of uninstalled deb packages.
dpkg --info <package-name>.deb does not give that information.
Is there any command in ubuntu which will give this info?
(In rpm world rpm -qpi gives that info)

+1  A: 

There's no simple command that I know of. You can do something like this:

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

This prints the file to standard output.

Edit Hmm, that sounds hard. After a quick perusal of the apt cache on my Debian system, I found some phrases that might be useful:

  • "GNU General Public License"
  • "the above copyright notice and this permission notice", making sure you unwrap lines first
  • "/usr/share/common-licenses/*"

    This seems to be the closest to a standard license you'll get, but be careful since often the packaging is under a common-license, but the package contents are under a separate license.

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

However, some packages (ImageMagick) simply have a free-form license in the copyright file that doesn't really conform to any stock license, except that someone considered it DFSG-approved.

jleedev
the copyright file does not have a standard format (i.e license name, license text) which makes it hard to extract that info. Specially if I want to do this for hundreds of packages.
aj
Hmmm..I guess a foolproof solution does not exist then.
aj