Merge pull request #92348 from jtojnar/explicit-only-gpl

licenses: Make single-version-only GPL explicit

authored by Jan Tojnar and committed by GitHub fb7507d0 0ae51edb

+27 -15
+3 -3
doc/stdenv/meta.xml
··· 155 <itemizedlist> 156 <listitem> 157 <para> 158 - Single license referenced by attribute (preferred) <literal>stdenv.lib.licenses.gpl3</literal>. 159 </para> 160 </listitem> 161 <listitem> 162 <para> 163 - Single license referenced by its attribute shortName (frowned upon) <literal>"gpl3"</literal>. 164 </para> 165 </listitem> 166 <listitem> 167 <para> 168 - Single license referenced by its attribute spdxId (frowned upon) <literal>"GPL-3.0"</literal>. 169 </para> 170 </listitem> 171 <listitem>
··· 155 <itemizedlist> 156 <listitem> 157 <para> 158 + Single license referenced by attribute (preferred) <literal>stdenv.lib.licenses.gpl3Only</literal>. 159 </para> 160 </listitem> 161 <listitem> 162 <para> 163 + Single license referenced by its attribute shortName (frowned upon) <literal>"gpl3Only"</literal>. 164 </para> 165 </listitem> 166 <listitem> 167 <para> 168 + Single license referenced by its attribute spdxId (frowned upon) <literal>"GPL-3.0-only"</literal>. 169 </para> 170 </listitem> 171 <listitem>
+2 -2
doc/using/configuration.xml
··· 162 </programlisting> 163 </para> 164 <para> 165 - The following example configuration blacklists the <literal>gpl3</literal> and <literal>agpl3</literal> licenses: 166 <programlisting> 167 { 168 - blacklistedLicenses = with stdenv.lib.licenses; [ agpl3 gpl3 ]; 169 } 170 </programlisting> 171 </para>
··· 162 </programlisting> 163 </para> 164 <para> 165 + The following example configuration blacklists the <literal>gpl3Only</literal> and <literal>agpl3Only</literal> licenses: 166 <programlisting> 167 { 168 + blacklistedLicenses = with stdenv.lib.licenses; [ agpl3Only gpl3Only ]; 169 } 170 </programlisting> 171 </para>
+22 -10
lib/licenses.nix
··· 28 fullName = "Academic Free License v3.0"; 29 }; 30 31 - agpl3 = spdx { 32 spdxId = "AGPL-3.0-only"; 33 fullName = "GNU Affero General Public License v3.0 only"; 34 }; ··· 281 fullName = "European Union Public License 1.2"; 282 }; 283 284 - fdl11 = spdx { 285 spdxId = "GFDL-1.1-only"; 286 fullName = "GNU Free Documentation License v1.1 only"; 287 }; 288 289 - fdl12 = spdx { 290 spdxId = "GFDL-1.2-only"; 291 fullName = "GNU Free Documentation License v1.2 only"; 292 }; ··· 296 fullName = "GNU Free Documentation License v1.2 or later"; 297 }; 298 299 - fdl13 = spdx { 300 spdxId = "GFDL-1.3-only"; 301 fullName = "GNU Free Documentation License v1.3 only"; 302 }; ··· 327 free = false; 328 }; 329 330 - gpl1 = spdx { 331 spdxId = "GPL-1.0-only"; 332 fullName = "GNU General Public License v1.0 only"; 333 }; ··· 337 fullName = "GNU General Public License v1.0 or later"; 338 }; 339 340 - gpl2 = spdx { 341 spdxId = "GPL-2.0-only"; 342 fullName = "GNU General Public License v2.0 only"; 343 }; ··· 362 fullName = "GNU General Public License v2.0 or later"; 363 }; 364 365 - gpl3 = spdx { 366 spdxId = "GPL-3.0-only"; 367 fullName = "GNU General Public License v3.0 only"; 368 }; ··· 437 fullName = "JasPer License"; 438 }; 439 440 - lgpl2 = spdx { 441 spdxId = "LGPL-2.0-only"; 442 fullName = "GNU Library General Public License v2 only"; 443 }; ··· 447 fullName = "GNU Library General Public License v2 or later"; 448 }; 449 450 - lgpl21 = spdx { 451 spdxId = "LGPL-2.1-only"; 452 fullName = "GNU Lesser General Public License v2.1 only"; 453 }; ··· 457 fullName = "GNU Lesser General Public License v2.1 or later"; 458 }; 459 460 - lgpl3 = spdx { 461 spdxId = "LGPL-3.0-only"; 462 fullName = "GNU Lesser General Public License v3.0 only"; 463 }; ··· 782 spdxId = "ZPL-2.1"; 783 fullName = "Zope Public License 2.1"; 784 }; 785 }
··· 28 fullName = "Academic Free License v3.0"; 29 }; 30 31 + agpl3Only = spdx { 32 spdxId = "AGPL-3.0-only"; 33 fullName = "GNU Affero General Public License v3.0 only"; 34 }; ··· 281 fullName = "European Union Public License 1.2"; 282 }; 283 284 + fdl11Only = spdx { 285 spdxId = "GFDL-1.1-only"; 286 fullName = "GNU Free Documentation License v1.1 only"; 287 }; 288 289 + fdl12Only = spdx { 290 spdxId = "GFDL-1.2-only"; 291 fullName = "GNU Free Documentation License v1.2 only"; 292 }; ··· 296 fullName = "GNU Free Documentation License v1.2 or later"; 297 }; 298 299 + fdl13Only = spdx { 300 spdxId = "GFDL-1.3-only"; 301 fullName = "GNU Free Documentation License v1.3 only"; 302 }; ··· 327 free = false; 328 }; 329 330 + gpl1Only = spdx { 331 spdxId = "GPL-1.0-only"; 332 fullName = "GNU General Public License v1.0 only"; 333 }; ··· 337 fullName = "GNU General Public License v1.0 or later"; 338 }; 339 340 + gpl2Only = spdx { 341 spdxId = "GPL-2.0-only"; 342 fullName = "GNU General Public License v2.0 only"; 343 }; ··· 362 fullName = "GNU General Public License v2.0 or later"; 363 }; 364 365 + gpl3Only = spdx { 366 spdxId = "GPL-3.0-only"; 367 fullName = "GNU General Public License v3.0 only"; 368 }; ··· 437 fullName = "JasPer License"; 438 }; 439 440 + lgpl2Only = spdx { 441 spdxId = "LGPL-2.0-only"; 442 fullName = "GNU Library General Public License v2 only"; 443 }; ··· 447 fullName = "GNU Library General Public License v2 or later"; 448 }; 449 450 + lgpl21Only = spdx { 451 spdxId = "LGPL-2.1-only"; 452 fullName = "GNU Lesser General Public License v2.1 only"; 453 }; ··· 457 fullName = "GNU Lesser General Public License v2.1 or later"; 458 }; 459 460 + lgpl3Only = spdx { 461 spdxId = "LGPL-3.0-only"; 462 fullName = "GNU Lesser General Public License v3.0 only"; 463 }; ··· 782 spdxId = "ZPL-2.1"; 783 fullName = "Zope Public License 2.1"; 784 }; 785 + } // { 786 + # TODO: remove legacy aliases 787 + agpl3 = lib.licenses.agpl3Only; 788 + fdl11 = lib.licenses.fdl11Only; 789 + fdl12 = lib.licenses.fdl12Only; 790 + fdl13 = lib.licenses.fdl13Only; 791 + gpl1 = lib.licenses.gpl1Only; 792 + gpl2 = lib.licenses.gpl2Only; 793 + gpl3 = lib.licenses.gpl3Only; 794 + lgpl2 = lib.licenses.lgpl2Only; 795 + lgpl21 = lib.licenses.lgpl21Only; 796 + lgpl3 = lib.licenses.lgpl3Only; 797 }