Closed mr-c closed 6 years ago
In order to be more compliant with Conda packages I propose the following approach:
LABEL License = BSD LABEL License_file = LICENSE
With this approach, we will use the definition from https://spdx.org/licenses/ and also reference to the proper file as https://conda.io/docs/user-guide/tasks/build-packages/define-metadata.html .
@ypriverol please note that license_file is used in Conda to copy over the license file into the package as for a few licenses you need to distribute it with your package. So a container also needs to include this file.
Thanks @bgruening for your feedback. Then, what you are suggesting is that we do not only include the path, but we also copy the actual license close to the recipe.?
BTW, in order to make this more complement, I also suggest doing what conda suggested for recipes metadata variables name. Instead of calling License
, it should be license
and for composed variables use the _
like: license_file
. What do you think @mr-c @bgruening @prvst @osallou
I think it just need to be in the container, not here on github.
Then one build system should import this information into the container? I guess conda is retrieving internally this information from the source? . How about the source that is not in github, do you have an example.
If you have a GPL licensed software the licence file needs to be in the tarball, no matter where the tarball is. So license_file
is just copying this file from the unpacked tarball into the package.
Dockerfile should download the license if not already in downloaded content, and license_file should point to license location. However, depending on container it is of little use if there is no way to read the license (no shell access or editor in container).
However i agree with the license/license_file, i suggested it to a pull request yesterday. License type should appear in a clear way, no need to look at licende file (unless user wish it or license has special terms).
Olivier
Le sam. 14 oct. 2017 12:11, Yasset Perez-Riverol notifications@github.com a écrit :
Then one build system should import this information into the container? I guess conda is retrieving internally this information from the source? . How about the source that is not in github, do you have an example.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/BioContainers/specs/issues/82#issuecomment-336625207, or mute the thread https://github.com/notifications/unsubscribe-auth/AA-gYtqk6vNtUZJHA2pkyR7SHIh5f5aYks5ssIjVgaJpZM4PyRm2 .
As per http://label-schema.org/rc1/ best practices, I suggest
LABEL pro.biocontainers.license BSD
This syntax is indeed suggested for lavels in containers but not applied to current other labels. Could be however suggested new syntax.
Le sam. 14 oct. 2017 14:24, Michael R. Crusoe notifications@github.com a écrit :
As per http://label-schema.org/rc1/ best practices, I suggest
LABEL pro.biocontainers.license BSD
— You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/BioContainers/specs/issues/82#issuecomment-336631698, or mute the thread https://github.com/notifications/unsubscribe-auth/AA-gYsmZ5YG2mT6jaH4DetHA7HMlgwoLks5ssKfugaJpZM4PyRm2 .
@ypriverol , @mr-c
merge defines license label only, we should also specify optional license_file tag to give license file location in container (if license specifies that it should be delivered with software). I think that if license is not spdx, license should contain only a "generic/basic" description and license_file refering to a file in container or next to Dockerfile in biocontainers (indeed a software url may not be valid anymore in the future).
Example
If spdx:
license: SPDX:MIT
depending on license
license_file: /opt/mysoft/GNU_GPL.txt
If not spdx:
license: "kinda special academic only at night"
license_file: "http:/github.com/biocontainers/mysoftware/version/LICENSE.txt"
or license_file: "/opt/mysoft/LICENSE.txt"
https://spdx.org/licenses/ https://spdx.org/specifications