depot/pkgs/by-name/en/engage/package.nix
Luke Granger-Brown 57725ef3ec Squashed 'third_party/nixpkgs/' content from commit 76612b17c0ce
git-subtree-dir: third_party/nixpkgs
git-subtree-split: 76612b17c0ce71689921ca12d9ffdc9c23ce40b2
2024-11-10 23:59:47 +00:00

51 lines
1.2 KiB
Nix

{ lib
, installShellFiles
, rustPlatform
, fetchFromGitLab
, stdenv
}:
let
pname = "engage";
version = "0.2.0";
in
rustPlatform.buildRustPackage {
inherit pname version;
src = fetchFromGitLab {
domain = "gitlab.computer.surgery";
owner = "charles";
repo = "engage";
rev = "v${version}";
hash = "sha256-niXh63xTpXSp9Wqwfi8hUBKJSClOUSvB+TPCTaqHfZk=";
};
cargoHash = "sha256-CKe0nb5JHi5+1UlVOl01Q3qSXQLlpEBdat/IzRKfaz0=";
nativeBuildInputs = [
installShellFiles
];
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) (
"installShellCompletion --cmd engage "
+ builtins.concatStringsSep
" "
(builtins.map
(shell: "--${shell} <($out/bin/engage completions ${shell})")
[
"bash"
"fish"
"zsh"
]
)
);
meta = {
description = "Task runner with DAG-based parallelism";
mainProgram = "engage";
homepage = "https://gitlab.computer.surgery/charles/engage";
changelog = "https://gitlab.computer.surgery/charles/engage/-/blob/v${version}/CHANGELOG.md";
license = with lib.licenses; [ asl20 mit ];
maintainers = with lib.maintainers; [ CobaltCause ];
};
}