diff options
Diffstat (limited to 'nixpkgs/pkgs/tools/misc/zoxide')
-rw-r--r-- | nixpkgs/pkgs/tools/misc/zoxide/default.nix | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/misc/zoxide/default.nix b/nixpkgs/pkgs/tools/misc/zoxide/default.nix new file mode 100644 index 000000000000..091730f7c1e6 --- /dev/null +++ b/nixpkgs/pkgs/tools/misc/zoxide/default.nix @@ -0,0 +1,49 @@ +{ lib +, stdenv +, fetchFromGitHub +, rustPlatform +, withFzf ? true +, fzf +, installShellFiles +, libiconv +}: + +rustPlatform.buildRustPackage rec { + pname = "zoxide"; + version = "0.9.4"; + + src = fetchFromGitHub { + owner = "ajeetdsouza"; + repo = "zoxide"; + rev = "refs/tags/v${version}"; + hash = "sha256-Yp7uLoFEDkb0TztcDCeAkt+EHQRt56ncPqkBtd/zzzI="; + }; + + nativeBuildInputs = [ installShellFiles ]; + + buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; + + postPatch = lib.optionalString withFzf '' + substituteInPlace src/util.rs \ + --replace '"fzf"' '"${fzf}/bin/fzf"' + ''; + + cargoHash = "sha256-t6GVoMBCD0s36GhtqJu9Z2bwwq5P+beEObG+gSC+QUw="; + + postInstall = '' + installManPage man/man*/* + installShellCompletion --cmd zoxide \ + --bash contrib/completions/zoxide.bash \ + --fish contrib/completions/zoxide.fish \ + --zsh contrib/completions/_zoxide + ''; + + meta = with lib; { + description = "A fast cd command that learns your habits"; + homepage = "https://github.com/ajeetdsouza/zoxide"; + changelog = "https://github.com/ajeetdsouza/zoxide/blob/v${version}/CHANGELOG.md"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ ysndr cole-h SuperSandro2000 ]; + mainProgram = "zoxide"; + }; +} |