информация о лицензии пакета deb
Вопрос
Я пытаюсь получить лицензионную информацию об удаленных пакетах deb.
dpkg --info <package-name>.deb
не дает такой информации.
Есть ли какая-нибудь команда в ubuntu, которая предоставит эту информацию?
(В мире rpm rpm -qpi предоставляет эту информацию)
Решение
Насколько я знаю, нет простой команды.Вы можете сделать что-то вроде этого:
dpkg-deb --fsys-tarfile foo.deb |tar -xvO ./usr/share/doc/foo/copyright
При этом файл выводится в стандартный формат вывода.
Редактировать Хм, звучит сложно.После быстрого изучения кэша apt в моей системе Debian я нашел несколько фраз, которые могут быть полезны:
- "Общая общественная лицензия GNU"
- "вышеуказанное уведомление об авторских правах и это уведомление о разрешении", убедившись, что вы сначала развернули строки
"
/usr/share/common-licenses/*
"Это, кажется, самое близкое к стандартной лицензии, которую вы получите, но будьте осторожны, так как часто упаковка находится под общей лицензией, но содержимое пакета находится под отдельной лицензией.
^License: MPL-1.1 | GPL-2+ | Apache-2.0
Однако некоторые пакеты (ImageMagick) просто имеют лицензию свободной формы в файле авторских прав, которая на самом деле не соответствует ни одной стандартной лицензии, за исключением того, что кто-то счел ее одобренной DFSG.
Обновление 2012:Это начинает меняться, поскольку debian/copyright
файл теперь требуется, чтобы он был поддающимся машинной интерпретации, так что вы можете рассчитывать на это в будущем.