diff options
Diffstat (limited to 'nixpkgs/pkgs/tools/misc/broot')
-rw-r--r-- | nixpkgs/pkgs/tools/misc/broot/default.nix | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/misc/broot/default.nix b/nixpkgs/pkgs/tools/misc/broot/default.nix new file mode 100644 index 000000000000..b7e2fb00a140 --- /dev/null +++ b/nixpkgs/pkgs/tools/misc/broot/default.nix @@ -0,0 +1,40 @@ +{ stdenv, rustPlatform, fetchFromGitHub, coreutils, libiconv, Security, installShellFiles }: + +rustPlatform.buildRustPackage rec { + pname = "broot"; + version = "0.13.4"; + + src = fetchFromGitHub { + owner = "Canop"; + repo = pname; + rev = "v${version}"; + sha256 = "0xd7vsybv6w5llvb85g6bx6r33lr0ki077rwzdvwb9c8w64fvs2h"; + }; + + cargoSha256 = "16qad0m2vygwrbz40ww0mb0ba5wn2wna1n78bc8nxh60x0qiigi9"; + + nativeBuildInputs = [ installShellFiles ]; + + buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ]; + + postPatch = '' + substituteInPlace src/verb_store.rs --replace '"/bin/' '"${coreutils}/bin/' + ''; + + postInstall = '' + # install shell completion files + OUT_DIR=target/release/build/broot-*/out + + installShellCompletion --bash $OUT_DIR/{br,broot}.bash + installShellCompletion --fish $OUT_DIR/{br,broot}.fish + installShellCompletion --zsh $OUT_DIR/{_br,_broot} + ''; + + meta = with stdenv.lib; { + description = "An interactive tree view, a fuzzy search, a balanced BFS descent and customizable commands"; + homepage = "https://dystroy.org/broot/"; + maintainers = with maintainers; [ magnetophon ]; + license = with licenses; [ mit ]; + platforms = platforms.all; + }; +} |