summary refs log tree commit diff
path: root/pkgs/lib
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2013-04-04 21:43:11 +0200
committerVladimír Čunát <vcunat@gmail.com>2013-04-04 21:43:40 +0200
commiteb2e46aab26600484bfabb3c242bdd069279bdb1 (patch)
tree18ec0523bfcd0967f8eef326756f96dc0075789a /pkgs/lib
parent16f45507619b4c4012bb7958fba09eb3bdc5ac87 (diff)
parent22d4472d2744639ccd880f015bb3147cf5222f07 (diff)
downloadnixpkgs-eb2e46aab26600484bfabb3c242bdd069279bdb1.tar
nixpkgs-eb2e46aab26600484bfabb3c242bdd069279bdb1.tar.gz
nixpkgs-eb2e46aab26600484bfabb3c242bdd069279bdb1.tar.bz2
nixpkgs-eb2e46aab26600484bfabb3c242bdd069279bdb1.tar.lz
nixpkgs-eb2e46aab26600484bfabb3c242bdd069279bdb1.tar.xz
nixpkgs-eb2e46aab26600484bfabb3c242bdd069279bdb1.tar.zst
nixpkgs-eb2e46aab26600484bfabb3c242bdd069279bdb1.zip
Merge branch 'master' into x-updates
Conflicts:
	pkgs/applications/graphics/rawtherapee/default.nix
	pkgs/applications/misc/blender/default.nix
	pkgs/applications/networking/browsers/chromium/sources.nix
	pkgs/os-specific/linux/kernel/linux-3.9.nix
	pkgs/top-level/all-packages.nix
Diffstat (limited to 'pkgs/lib')
-rw-r--r--pkgs/lib/customisation.nix17
-rw-r--r--pkgs/lib/licenses.nix42
-rw-r--r--pkgs/lib/lists.nix4
-rw-r--r--pkgs/lib/maintainers.nix1
4 files changed, 44 insertions, 20 deletions
diff --git a/pkgs/lib/customisation.nix b/pkgs/lib/customisation.nix
index 18cec3209f9..a35b44e9f6e 100644
--- a/pkgs/lib/customisation.nix
+++ b/pkgs/lib/customisation.nix
@@ -99,4 +99,21 @@ rec {
     let f = if builtins.isFunction fn then fn else import fn; in
     makeOverridable f ((builtins.intersectAttrs (builtins.functionArgs f) autoArgs) // args);
 
+  /* Add attributes to each output of a derivation without changing the derivation itself */
+  addPassthru = drv: passthru:
+    let
+      outputs = drv.outputs or [ "out" ];
+
+      commonAttrs = drv // (builtins.listToAttrs outputsList) //
+        ({ all = map (x: x.value) outputsList; }) // passthru;
+
+      outputToAttrListElement = outputName:
+        { name = outputName;
+          value = commonAttrs // {
+            inherit (builtins.getAttr outputName drv) outPath drvPath type outputName;
+          };
+        };
+
+      outputsList = map outputToAttrListElement outputs;
+  in builtins.getAttr drv.outputName commonAttrs;
 }
diff --git a/pkgs/lib/licenses.nix b/pkgs/lib/licenses.nix
index e1743bddf69..634a20e720a 100644
--- a/pkgs/lib/licenses.nix
+++ b/pkgs/lib/licenses.nix
@@ -9,7 +9,7 @@
     fullName = "Apache Software License 2.0";
     url = http://www.apache.org/licenses/LICENSE-2.0;
   };
-  
+
   boost = {
     shortName = "boost";
     fullName = "Boost Software License";
@@ -57,13 +57,13 @@
     fullName = "GNU General Public License version 2 only";
     url = http://www.gnu.org/licenses/old-licenses/gpl-2.0.html;
   };
-    
+
   gpl2Oss = {
     shortName = "GPLv2+OSS";
     fullName = "GNU General Public License version 2 only (with OSI approved licenses linking exception)";
     url = http://www.mysql.com/about/legal/licensing/foss-exception;
   };
-  
+
   gpl2Plus = {
     shortName = "GPLv2+";
     fullName = "GNU General Public License version 2 or later";
@@ -75,7 +75,7 @@
     fullName = "GNU General Public License version 3 only";
     url = http://www.fsf.org/licensing/licenses/gpl.html;
   };
-  
+
   gpl3Plus = {
     shortName = "GPLv3+";
     fullName = "GNU General Public License version 3 or later";
@@ -111,66 +111,66 @@
     fullName = "libtiff license";
     url = https://fedoraproject.org/wiki/Licensing/libtiff;
   };
-  
+
   lgpl2 = {
     shortName = "LGPLv2";
     fullName = "GNU Library General Public License version 2";
     url = http://www.gnu.org/licenses/old-licenses/lgpl-2.0.html;
   };
-  
+
   lgpl2Plus = {
     shortName = "LGPLv2+";
     fullName = "GNU Library General Public License version 2 or later";
     url = http://www.gnu.org/licenses/old-licenses/lgpl-2.0.html;
   };
-  
+
   lgpl21 = {
     shortName = "LGPLv2.1";
     fullName = "GNU Lesser General Public License version 2.1 only";
     url = http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html;
   };
-  
+
   lgpl21Plus = {
     shortName = "LGPLv2.1+";
     fullName = "GNU Lesser General Public License version 2.1 or later";
     url = http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html;
   };
-  
+
   lgpl3 = {
     shortName = "LGPLv3";
     fullName = "GNU Lesser General Public License version 3 only";
     url = http://www.fsf.org/licensing/licenses/lgpl.html;
   };
-  
+
   lgpl3Plus = {
     shortName = "LGPLv3+";
     fullName = "GNU Lesser General Public License version 3 or later";
     url = http://www.fsf.org/licensing/licenses/lgpl.html;
   };
-  
+
   mit = {
     shortName = "MIT";
     fullName = "MIT/X11 license";
     url = http://www.opensource.org/licenses/mit-license.php;
   };
-  
+
   mpl11 = {
     shortName = "MPL1.1";
     fullName = "Mozilla Public License version 1.1";
     url = http://www.mozilla.org/MPL/MPL-1.1.html;
   };
-  
+
   openssl = {
     shortName = "openssl";
     fullName = "OpenSSL license";
     url = http://www.openssl.org/source/license.html;
   };
-  
+
   publicDomain = {
     shortName = "Public Domain";
     fullname = "Public Domain";
   };
-  
+
   psfl = {
     shortName = "PSFL";
     fullName = "Python Software Foundation License";
@@ -187,7 +187,17 @@
     fullName = "Tcl/Tk license";
     url = http://www.tcl.tk/software/tcltk/license.html;
   };
-  
+
+  unfree = {
+    shortName = "unfree";
+    fullName = "unfree non-redistributable license";
+  };
+
+  unfreeRedistributable = {
+    shortName = "unfree-redistributable";
+    fullName = "unfree redistributable license";
+  };
+
   zlib = {
     shortName = "zlib";
     fullName = "zlib license";
diff --git a/pkgs/lib/lists.nix b/pkgs/lib/lists.nix
index 0916355568c..3c01b165fc1 100644
--- a/pkgs/lib/lists.nix
+++ b/pkgs/lib/lists.nix
@@ -92,10 +92,6 @@ rec {
   remove = e: filter (x: x != e);
 
   
-  # Given two lists, removes all elements of the first list from the second list
-  removeList = l: filter (x: elem x l);
-
-
   # Return true if `list' has an element `x'.
   elem =
     builtins.elem or
diff --git a/pkgs/lib/maintainers.nix b/pkgs/lib/maintainers.nix
index a2e8b50c10e..4c47ee85f47 100644
--- a/pkgs/lib/maintainers.nix
+++ b/pkgs/lib/maintainers.nix
@@ -26,6 +26,7 @@
   ludo = "Ludovic Courtès <ludo@gnu.org>";
   marcweber = "Marc Weber <marco-oweber@gmx.de>";
   mornfall = "Petr Ročkai <me@mornfall.net>";
+  the-kenny = "Moritz Ulrich <moritz@tarn-vedra.de>";
   neznalek = "Vladimír Čunát <vcunat@gmail.com>";
   orbitz = "Malcolm Matalka <mmatalka@gmail.com>";
   page = "Carles Pagès <page@cubata.homelinux.net>";