summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/misc/fd/default.nix28
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 30 insertions, 0 deletions
diff --git a/pkgs/tools/misc/fd/default.nix b/pkgs/tools/misc/fd/default.nix
new file mode 100644
index 0000000000000..763ca668d1815
--- /dev/null
+++ b/pkgs/tools/misc/fd/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  name = "fd-${version}";
+  version = "2.0.0";
+
+  src = fetchFromGitHub {
+    owner = "sharkdp";
+    repo = "fd";
+    rev = "v${version}";
+    sha256 = "1xs4y9zf5m0ykl95787jv98xg0a60gkcyyh7kg7qg4xrcgf4qz4j";
+  };
+
+  depsSha256 = "1hxf3j4584jgpwrwykx6yil6q6ka9l81qvx6zrbprdxk3pslp049";
+
+  meta = {
+    description = "A simple, fast and user-friendly alternative to find";
+    longDescription = ''
+      `fd` is a simple, fast and user-friendly alternative to `find`.
+
+      While it does not seek to mirror all of `find`'s powerful functionality,
+      it provides sensible (opinionated) defaults for 80% of the use cases.
+    '';
+    homepage = "https://github.com/sharkdp/fd";
+    license = stdenv.lib.licenses.mit;
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 05ff56aef28d6..75c52aa433e5a 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1011,6 +1011,8 @@ with pkgs;
     buildInputs = old.buildInputs ++ [phantomjs2];
   });
 
+  fd = callPackage ../tools/misc/fd { };
+
   filebench = callPackage ../tools/misc/filebench { };
 
   fsmon = callPackage ../tools/misc/fsmon { };