depot/third_party/nixpkgs/pkgs/by-name/pr/preserves-tools/package.nix

35 lines
1,004 B
Nix

{
lib,
stdenv,
rustPlatform,
fetchCrate,
installShellFiles,
}:
rustPlatform.buildRustPackage rec {
pname = "preserves-tools";
version = "4.996.1";
src = fetchCrate {
inherit pname version;
hash = "sha256-Uyh5mXCypX3TDxxJtnTe6lBoVI8aqdG56ywn7htDGUY=";
};
cargoHash = "sha256-rDo/jA4b+GV90SKM82JcGTX1pcAQUeBrLvGwU/geGOw=";
nativeBuildInputs = [ installShellFiles ];
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
installShellCompletion --cmd preserves-tool \
--bash <($out/bin/preserves-tool completions bash) \
--fish <($out/bin/preserves-tool completions fish) \
--zsh <($out/bin/preserves-tool completions zsh)
'';
meta = {
description = "Command-line utilities for working with Preserves documents";
homepage = "https://preserves.dev/doc/preserves-tool.html";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ ehmry ];
mainProgram = "preserves-tool";
};
}