2009-12-10 13 views
8

Ich versuche, Lizenzinformationen von deinstallierten deb-Paketen zu erhalten.
dpkg --info <package-name>.deb gibt diese Information nicht.
Gibt es irgendeinen Befehl in Ubuntu, der diese Information gibt?
(In rpm Welt rpm -qpi gibt diese Info)Lizenzinformationen eines Deb-Pakets

+0

Siehe auch in der Nähe von Duplikat http://StackOverflow.com/Questions/35044841/How-To-List-all-installed-packages-Licences-in-ubuntu/ – tripleee

Antwort

10

Es gibt keinen einfachen Befehl, den ich kenne. Sie können etwas wie folgt tun:

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

Dies druckt die Datei auf Standardausgabe.

Bearbeiten Hmm, das klingt schwer. Nach einem schnellen Durchsicht der apt-Cache auf meinem Debian-System, fand ich einige Sätze, die nützlich sein könnten:

  • „GNU General Public License“
  • „der Copyright-Hinweis und diese Genehmigung“, um sicherzustellen, Sie auspacken Linien erste
  • /usr/share/common-licenses/*

    Dies scheint in der Nähe von einer Standard-Lizenz zu sein, das Sie erhalten, aber vorsichtig sein, da oft die Verpackung unter einer Common-Lizenz ist, aber das Packgut sind unter einer separaten Läuse nse.

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

jedoch einige Pakete (ImageMagick) haben einfach eine Lizenz Freiform in der Copyright-Datei, die nicht wirklich an eine Wertpapier Lizenz nicht entspricht, mit der Ausnahme, dass jemand es DFSG-genehmigt.

-Update 2012: Dies beginnt sich zu ändern, als die debian/copyright Datei is now required to be machine-interpretable, so dass Sie nach vorne in die Zukunft aussehen.

+1

die Copyright-Datei hat kein Standardformat (dh Lizenzname, Lizenztext), wodurch es schwierig wird, diese Informationen zu extrahieren. Besonders, wenn ich das für Hunderte von Paketen machen möchte. –

+2

Hmmm..ich denke, eine narrensichere Lösung existiert dann nicht. –

+2

Update 2015: Viele Pakete [haben noch nicht auf maschinenlesbare Lizenzdateien umgestellt] (http://stackoverflow.com/a/35052572/260122). Der einzige Online-Dienst, der nach Lizenzmetadaten sucht, ist der Link "Copyright-Datei" auf der Paketseite auf https://packages.debian.org/. – clacke

Verwandte Themen