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