about summary refs log tree commit diff
path: root/pkgs/tools/misc/hyperfine/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/misc/hyperfine/default.nix')
-rw-r--r--pkgs/tools/misc/hyperfine/default.nix11
1 files changed, 10 insertions, 1 deletions
diff --git a/pkgs/tools/misc/hyperfine/default.nix b/pkgs/tools/misc/hyperfine/default.nix
index 5e2b654f4f98..b51ca76b12c9 100644
--- a/pkgs/tools/misc/hyperfine/default.nix
+++ b/pkgs/tools/misc/hyperfine/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, rustPlatform
+{ stdenv, fetchFromGitHub, rustPlatform, installShellFiles
 , Security
 }:
 
@@ -15,8 +15,17 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "06scvp7x1yixdadarsm461hbc256spx4aqhmjjn72x7hxn22h9cg";
 
+  nativeBuildInputs = [ installShellFiles ];
   buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
 
+  postInstall = ''
+    installManPage doc/hyperfine.1
+
+    installShellCompletion \
+      $releaseDir/build/hyperfine-*/out/hyperfine.{bash,fish} \
+      --zsh $releaseDir/build/hyperfine-*/out/_hyperfine
+  '';
+
   meta = with stdenv.lib; {
     description = "Command-line benchmarking tool";
     homepage    = "https://github.com/sharkdp/hyperfine";