nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenvNoCC,
4 fetchurl,
5}:
6
7stdenvNoCC.mkDerivation (finalAttrs: {
8 pname = "zbctl";
9 version = "8.4.19";
10
11 src =
12 if stdenvNoCC.hostPlatform.system == "x86_64-darwin" then
13 fetchurl {
14 url = "https://github.com/camunda/zeebe/releases/download/${finalAttrs.version}/zbctl.darwin";
15 hash = "sha256-RuZX9TWuXBxxegLw0La0l9/6zh96V/2trJvZUoCvTKk=";
16 }
17 else if stdenvNoCC.hostPlatform.system == "x86_64-linux" then
18 fetchurl {
19 url = "https://github.com/camunda/zeebe/releases/download/${finalAttrs.version}/zbctl";
20 hash = "sha256-NTJqmcOzpOzHjrtOHBU2J3u0f7sESBeZMbb8kx3zR38=";
21 }
22 else
23 throw "Unsupported platform ${stdenvNoCC.hostPlatform.system}";
24
25 dontUnpack = true;
26 dontConfigure = true;
27 dontBuild = true;
28
29 installPhase = ''
30 runHook preInstall
31
32 install -Dm755 $src $out/bin/zbctl
33
34 runHook postInstall
35 '';
36
37 meta = {
38 description = "Command line interface to interact with Camunda 8 and Zeebe";
39 homepage = "https://docs.camunda.io/docs/apis-clients/cli-client/";
40 downloadPage = "https://github.com/camunda/zeebe/releases";
41 changelog = "https://github.com/camunda/zeebe/releases/tag/${finalAttrs.version}";
42 sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
43 license = lib.licenses.asl20;
44 platforms = [
45 "x86_64-darwin"
46 "x86_64-linux"
47 ];
48 maintainers = with lib.maintainers; [ thetallestjj ];
49 longDescription = ''
50 A command line interface for Camunda Platform 8 designed to create and read resources inside a Zeebe broker.
51 It can be used for regular development and maintenance tasks such as:
52 * Deploying processes
53 * Creating process instances and job workers
54 * Activating, completing, or failing jobs
55 * Updating variables and retries
56 * Viewing cluster status
57 '';
58 mainProgram = "zbctl";
59 };
60})