summary refs log tree commit diff
path: root/lib/lists.nix
diff options
context:
space:
mode:
Diffstat (limited to 'lib/lists.nix')
-rw-r--r--lib/lists.nix10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/lists.nix b/lib/lists.nix
index 566ee89c95bc..d57c4893daa8 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -223,4 +223,14 @@ rec {
 
   crossLists = f: foldl (fs: args: concatMap (f: map f args) fs) [f];
 
+  # Remove duplicate elements from the list
+  unique = list:
+    if list == [] then
+      []
+    else
+      let
+        x = head list;
+        xs = unique (drop 1 list);
+      in [x] ++ remove x xs;
+
 }