I am going to ship a FreeBSD system to a customer and this customer wants me to install a kind of a limited desktop system. My problem is now that even a quite tiny set of functionality drags in tons of dependencies, and in order to be save with the various license requirements, I wanted to provide a list consisting of the installed software packages and the respective licences to my customer. For this the following sqlite3(1) looked quite promising:
Unfortunately, there are a lot of ports without any license information, and among these is a lot of X11 stuff and the most prominent one is Firefox 59.
Perhaps I can cycle through the ports directories of the installed packages, execute
I would be glad to hear about more ideas, on how to deal with the situation.
sqlite3 -line /var/db/pkg/local.sqlite 'SELECT packages.origin AS Portname,packages.version AS Version,licenses.name AS License FROM packages LEFT JOIN pkg_licenses ON packages.id = pkg_licenses.package_id LEFT JOIN licenses ON pkg_licenses.license_id = licenses.id ORDER BY licenses.id ASC;'
Code:
Portname = databases/db5
version = 5.3.28_6
License =
Portname = x11/libXau
version = 1.0.8_3
License =
Portname = textproc/libxml2
version = 2.9.7
License =
Portname = devel/libpthread-stubs
version = 0.4
License =
Portname = x11/kbproto
version = 1.0.7
License =
Portname = x11/xextproto
version = 7.3.0
License =
Portname = x11/fixesproto
version = 5.0
License =
Portname = x11/libICE
version = 1.0.9_1,1
License =
...
...
...
Portname = www/firefox
version = 59.0,1
License =
...
...
...
Portname = graphics/argyllcms
Version = 1.9.2_2
License = AGPLv3
Portname = multimedia/libquvi-scripts09
Version = 0.9.20131130_1
License = AGPLv3
Portname = multimedia/libquvi09
Version = 0.9.4_3
License = AGPLv3
Portname = databases/postgresql10-client
Version = 10.3
License = PostgreSQL
Portname = databases/postgresql10-contrib
Version = 10.3
License = PostgreSQL
Portname = databases/postgresql10-docs
Version = 10.3
License = PostgreSQL
Portname = databases/postgresql10-server
Version = 10.3
License = PostgreSQL
Portname = graphics/imlib2
Version = 1.5.0,2
License = imlib2
Portname = x11-fonts/webfonts
Version = 0.30_13
License = EULA
Portname = net/openldap24-client
Version = 2.4.45
License = OPENLDAP
Portname = dns/py-dnspython
Version = 1.15.0
License = ISCL
Portname = devel/boehm-gc
Version = 7.6.2
License = BDWGC
Portname = www/w3m
Version = 0.5.3.20180125_1
License = w3m
Perhaps I can cycle through the ports directories of the installed packages, execute
make extract
and then try to pick out the LICENSE file.I would be glad to hear about more ideas, on how to deal with the situation.