From 229e5c41df8db960de9d57b247107b6239a60383 Mon Sep 17 00:00:00 2001 From: Vladimír Čunát Date: Wed, 30 Jul 2014 19:19:56 +0200 Subject: lib/licenses.nix: allow choosing license by its shortName Example: license = licenses."GPL-2.0+"; This comes with some performance cost during eval of licenses.nix, but that's probably negligible. --- lib/licenses.nix | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'lib/licenses.nix') diff --git a/lib/licenses.nix b/lib/licenses.nix index 29144264ddd2..ce1d1960c9f9 100644 --- a/lib/licenses.nix +++ b/lib/licenses.nix @@ -4,7 +4,7 @@ let }; in -rec { +let licenses = rec { /* License identifiers from spdx.org where possible. * If you cannot find your license here, then look for a similar license or * add it to this list. The URL mentioned above is a good source for inspiration. @@ -87,7 +87,7 @@ rec { fullName = "Eclipse Public License 1.0"; }; - free = "free"; + free.shortName = "free"; gpl2 = spdx { shortName = "GPL-2.0"; @@ -237,11 +237,11 @@ rec { url = http://www.tcl.tk/software/tcltk/license.html; }; - unfree = "unfree"; + unfree.shortName = "unfree"; - unfreeRedistributable = "unfree-redistributable"; + unfreeRedistributable.shortName = "unfree-redistributable"; - unfreeRedistributableFirmware = "unfree-redistributable-firmware"; + unfreeRedistributableFirmware.shortName = "unfree-redistributable-firmware"; wadalab = { shortName = "wadalab"; @@ -264,5 +264,8 @@ rec { fullName = "Zope Public License 2.1"; }; -} +}; in + # add the same attrmaps, but named by their shortNames (creating e.g. licenses."GPL-2.0+") + with { inherit (import ./attrsets.nix) mapAttrs' nameValuePair; }; + licenses // (mapAttrs' (_: value: nameValuePair value.shortName value) licenses) -- cgit 1.4.1