Skip to content

Add explicit license information #3

Description

@SomeoneSerge

Currently (2023-03-14) the json manifests simply say "license": "CUDA Toolkit". On the first read, I thought that it "obviously" refers to the CUDA Toolkit's EULA whose existence precedes NVIDIA's redist packages. This leaves the following questions still open:

  1. How does a user or distribution maintainer resolve the "license": "CUDA Toolkit" stanza into an actual license text?

  2. The redistributable packages include extra paths like e.g. pkg-config/cudart-11.7.pc that are not explicitly white-listed by the EULA text

  3. The nvidia_driver redistributable package contains nvidia_driver-linux-x86_64-530.30.02-archive/lib32/libcuda.so.530.30.02 which, under the EULA text, may only be redistributed when derived from an NGC docker container image and distributed as a part of a docker image

  4. The EULA's text only explicitly allows redistribution of...

    variations of these files that have version number or architecture specific information embedded in the file name -

    ...but not, for instance, in the ELF header, as would be required for some Linux distributions.

  5. More of a rhetorical question: license-wise, what is the difference between the cudatoolkit's .run file and the "redistributable" packages?

A resolution might involve all or a subset of the following:

  1. Permissions and restrictions are distributed in machine-readable form together with the json manifests
  2. License text is distributed together with the packages: cf. e.g. cuda_cudart/LICENSE.txt
  3. The license string is replaced with a dictionary { name :: String, url :: String } where url refer to a downloadable file with the license text and name be a stabilized name, from which permissions and restrictions could be inferred
  4. Redistribution of the redistributable components of CUDA Toolkit is explicitly permitted by the linked license text
  5. Usage of patchelf prior to redistribution is explicitly permitted by the linked license texts
  6. Redistribution of the user-space cuda driver (libcuda.so) from nvidia_driver be explicitly permitted. For instance,
    1. jq .nvidia_driver.license redistrib_12.1.0.json links to a license that allows to ship the contents of nvidia_driver-linux-x86_64-530.30.02-archive.tar.xz with an application.
    2. The clarifications about docker images are dropped
  7. Licenses explicitly allow to patch paths in pkg-config files

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions