fluffychat: 1.22.1 -> 1.23.0 (#364091)
[NixPkgs.git] / pkgs / by-name / en / engage / package.nix
blob1f05fdd5f990a6a9f5ae0c73a1dc62c87d750f2e
2   lib,
3   installShellFiles,
4   rustPlatform,
5   fetchFromGitLab,
6   stdenv,
7 }:
9 let
10   pname = "engage";
11   version = "0.2.0";
13 rustPlatform.buildRustPackage {
14   inherit pname version;
16   src = fetchFromGitLab {
17     domain = "gitlab.computer.surgery";
18     owner = "charles";
19     repo = "engage";
20     rev = "v${version}";
21     hash = "sha256-niXh63xTpXSp9Wqwfi8hUBKJSClOUSvB+TPCTaqHfZk=";
22   };
24   cargoHash = "sha256-CKe0nb5JHi5+1UlVOl01Q3qSXQLlpEBdat/IzRKfaz0=";
26   nativeBuildInputs = [
27     installShellFiles
28   ];
30   postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) (
31     "installShellCompletion --cmd engage "
32     + builtins.concatStringsSep " " (
33       builtins.map (shell: "--${shell} <($out/bin/engage completions ${shell})") [
34         "bash"
35         "fish"
36         "zsh"
37       ]
38     )
39   );
41   meta = {
42     description = "Task runner with DAG-based parallelism";
43     mainProgram = "engage";
44     homepage = "https://gitlab.computer.surgery/charles/engage";
45     changelog = "https://gitlab.computer.surgery/charles/engage/-/blob/v${version}/CHANGELOG.md";
46     license = with lib.licenses; [
47       asl20
48       mit
49     ];
50     maintainers = with lib.maintainers; [ CobaltCause ];
51   };