summary refs log tree commit diff
path: root/pkgs/lib
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2013-06-05 12:36:16 +0200
committerVladimír Čunát <vcunat@gmail.com>2013-06-05 12:59:47 +0200
commit7af694700c4032e9addc9784c2afab09a148ff8c (patch)
tree7e5534dfc853b244a980ed8c3aab1e9ea6989435 /pkgs/lib
parent0bed8c15e3d68832f9f6380744375e7efb870d21 (diff)
parent6cacb34fec15df3b1a98061b12528e48df0b940b (diff)
downloadnixlib-7af694700c4032e9addc9784c2afab09a148ff8c.tar
nixlib-7af694700c4032e9addc9784c2afab09a148ff8c.tar.gz
nixlib-7af694700c4032e9addc9784c2afab09a148ff8c.tar.bz2
nixlib-7af694700c4032e9addc9784c2afab09a148ff8c.tar.lz
nixlib-7af694700c4032e9addc9784c2afab09a148ff8c.tar.xz
nixlib-7af694700c4032e9addc9784c2afab09a148ff8c.tar.zst
nixlib-7af694700c4032e9addc9784c2afab09a148ff8c.zip
Merge branch 'master' into x-updates
Silently merged badly the firefox 20/21 things. I got that, hopefully
there aren't more (my nixos-rebuild dry-run finds no more errors).
Diffstat (limited to 'pkgs/lib')
-rw-r--r--pkgs/lib/licenses.nix16
-rw-r--r--pkgs/lib/options.nix13
2 files changed, 24 insertions, 5 deletions
diff --git a/pkgs/lib/licenses.nix b/pkgs/lib/licenses.nix
index fee430a40674..385993a320e4 100644
--- a/pkgs/lib/licenses.nix
+++ b/pkgs/lib/licenses.nix
@@ -4,6 +4,18 @@
    * add it to this list. The URL mentioned above is a good source for inspiration.
    */
 
+  agpl3 = {
+    shortName = "AGPLv3";
+    fullName = "GNU Affero General Public License version 3 only";
+    url = https://www.gnu.org/licenses/agpl.html;
+  };
+
+  agpl3Plus = {
+    shortName = "AGPLv3+";
+    fullName = "GNU Affero General Public License version 3 or later";
+    url = https://www.gnu.org/licenses/agpl.html;
+  };
+
   asl20 = {
     shortName = "ASL2.0";
     fullName = "Apache Software License 2.0";
@@ -19,13 +31,13 @@
   bsd2 = {
     shortName = "BSD-2";
     fullName = "BSD license (2 clause)";
-    url = http://www.freebsd.org/copyright/freebsd-license.html;
+    url = http://opensource.org/licenses/BSD-2-Clause;
   };
 
   bsd3 = {
     shortName = "BSD-3";
     fullName = "BSD license (3 clause)";
-    url = http://www.opensource.org/licenses/bsd-license.php;
+    url = http://opensource.org/licenses/BSD-3-Clause;
   };
 
   bsdOriginal = {
diff --git a/pkgs/lib/options.nix b/pkgs/lib/options.nix
index 59bda41a623f..4e9390470709 100644
--- a/pkgs/lib/options.nix
+++ b/pkgs/lib/options.nix
@@ -90,10 +90,17 @@ rec {
             # Evaluate sub-modules.
             subModuleMerge = path: vals:
               lib.fix (args:
-                let result = recurseInto path (optionConfig vals args); in {
-                  inherit (result) config options;
+                let
+                  result = recurseInto path (optionConfig vals args);
                   name = lib.removePrefix (opt.name + ".") path;
-                }
+                  extraArgs = opt.extraArgs or {};
+                  individualExtraArgs = opt.individualExtraArgs or {};
+                in {
+                  inherit (result) config options;
+                  inherit name;
+                } //
+                  (opt.extraArgs or {}) //
+                  (if hasAttr name individualExtraArgs then getAttr name individualExtraArgs else {})
               );
 
             # Add _options in sub-modules to make it viewable from other