about summary refs log tree commit diff
path: root/doc/stdenv
diff options
context:
space:
mode:
authorAdam Joseph <adam@westernsemico.com>2022-03-28 20:51:34 -0700
committerAlexander Foremny <aforemny@posteo.de>2022-05-30 16:27:34 +0800
commit81bc106e080e56e2c85466ea7d4ecf38bc99149c (patch)
tree1365f3a05374025cd24cedff7ea3547eebbd49fd /doc/stdenv
parent9d0784829a1dabe24b186c976502a6642f99997c (diff)
meta.sourceProvenance documentation: clarify it is unaffected by changes to meta.license
This commit clarifies that the meaning of the `meta.sourceProvenance`
field is independent of and unaffected by the value of the
`meta.license` field.  This is based on the intent of the RFC author
as expressed here:

  https://github.com/NixOS/nixpkgs/pull/161098#issuecomment-1081270201

This clarification is added for two reasons:

1. If in the future there should be some disagreement about what
   `sourceProvenance` to assign to a package, this may help resolve
   the disagreement.  Any interpretation of `sourceProvenance` which
   is influenced by the `meta.license` is clearly an incorrect
   interpretation.

2. If it should turn out that it is impossible to disentangle
   `sourceProvenance` from `meta.license`, this would indicate the
   need for changes to the `sourceProvenance` scheme.  That change
   might be as simple as replacing the sentence added by this commit
   with some other sentence explaining how the two fields influence
   each other.

This commit implements the recommendation made in the paragraph of
this comments which begins with "Please say this explicitly...":

  https://github.com/NixOS/nixpkgs/pull/161098#issuecomment-1081309089
Diffstat (limited to 'doc/stdenv')
-rw-r--r--doc/stdenv/meta.chapter.md2
1 files changed, 2 insertions, 0 deletions
diff --git a/doc/stdenv/meta.chapter.md b/doc/stdenv/meta.chapter.md
index 2b99a8abf5544..475006b1259b6 100644
--- a/doc/stdenv/meta.chapter.md
+++ b/doc/stdenv/meta.chapter.md
@@ -260,6 +260,8 @@ Adding this information helps users who have needs related to build transparency
 
 The presence of a particular `sourceType` in a package's `meta.sourceProvenance` list indicates that the package contains some components falling into that category, though the *absence* of that `sourceType` does not *guarantee* the absence of that category of `sourceType` in the package's contents. A package with no `meta.sourceProvenance` set implies it has no *known* `sourceType`s other than `fromSource`.
 
+The meaning of the `meta.sourceProvenance` attribute does not depend on the value of the `meta.license` attribute.
+
 ### `lib.sourceTypes.fromSource` {#lib.sourceTypes.fromSource}
 
 Package elements which are produced by a nixpkgs derivation which builds them from source code.