From 7f7ebe5bf6ecb6fcb3c5d603c8f2e5b927ad0750 Mon Sep 17 00:00:00 2001 From: Franz Pletz Date: Wed, 24 Feb 2016 01:37:40 +0100 Subject: [PATCH] nixpkgs manual: Fix license strings docs The wrong usage of unfree-redistributable fixed in ea242619fb0028f830238a0fa1b19277d14508ff can be explaind by unclear documention, specifically the section in the nixpkgs manual describing generic licenses it is written to use attributes from `stdenv.lib.licenses` but in the list the strings form was documented without quotation marks. This confuses people because the package builds fine locally but failes the tests on travis-ci. --- doc/meta.xml | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/doc/meta.xml b/doc/meta.xml index 5266d83aea68..b1ffd0502b2b 100644 --- a/doc/meta.xml +++ b/doc/meta.xml @@ -258,45 +258,54 @@ a value from stdenv.lib.licenses defined in nixpkgs/lib/licenses.nix, or in-place license description of the same format if the license is -unlikely to be useful in another expression. +unlikely to be useful in another expression. + +Although it's typically better to indicate the specific license, +a few generic options are available: -A few generic options are available, although it's typically better -to indicate the specific license: - free + stdenv.lib.licenses.free, + "free" + Catch-all for free software licenses not listed above. - unfree-redistributable + stdenv.lib.licenses.unfreeRedistributable, + "unfree-redistributable" + Unfree package that can be redistributed in binary - form. That is, it’s legal to redistribute the + form. That is, it’s legal to redistribute the output of the derivation. This means that the package can be included in the Nixpkgs channel. Sometimes proprietary software can only be redistributed - unmodified. Make sure the builder doesn’t actually modify the + unmodified. Make sure the builder doesn’t actually modify the original binaries; otherwise we’re breaking the license. For instance, the NVIDIA X11 drivers can be redistributed unmodified, but our builder applies patchelf to make them - work. Thus, its license is unfree and it + work. Thus, its license is "unfree" and it cannot be included in the Nixpkgs channel. - unfree - Unfree package that cannot be redistributed. You + stdenv.lib.licenses.unfree, + "unfree" + + Unfree package that cannot be redistributed. You can build it yourself, but you cannot redistribute the output of - the derivation. Thus it cannot be included in the Nixpkgs + the derivation. Thus it cannot be included in the Nixpkgs channel. - unfree-redistributable-firmware + stdenv.lib.licenses.unfreeRedistributableFirmware, + "unfree-redistributable-firmware" + This package supplies unfree, redistributable firmware. This is a separate value from unfree-redistributable because not everybody