summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--lib/attrsets.nix5
-rw-r--r--lib/lists.nix2
2 files changed, 4 insertions, 3 deletions
diff --git a/lib/attrsets.nix b/lib/attrsets.nix
index 19218cfe8ec..dca39cf79ff 100644
--- a/lib/attrsets.nix
+++ b/lib/attrsets.nix
@@ -195,8 +195,9 @@ rec {
           { x = "foo"; y = "bar"; }
        => { x = "x-foo"; y = "y-bar"; }
   */
-  mapAttrs = f: set:
-    listToAttrs (map (attr: { name = attr; value = f attr set.${attr}; }) (attrNames set));
+  mapAttrs = builtins.mapAttrs or
+    (f: set:
+      listToAttrs (map (attr: { name = attr; value = f attr set.${attr}; }) (attrNames set)));
 
 
   /* Like `mapAttrs', but allows the name of each attribute to be
diff --git a/lib/lists.nix b/lib/lists.nix
index 194e1c200ec..231c2317c0c 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -101,7 +101,7 @@ rec {
        concatMap (x: [x] ++ ["z"]) ["a" "b"]
        => [ "a" "z" "b" "z" ]
   */
-  concatMap = f: list: concatLists (map f list);
+  concatMap = builtins.concatMap or (f: list: concatLists (map f list));
 
   /* Flatten the argument into a single list; that is, nested lists are
      spliced into the top-level lists.