lol
1{ buildGoModule, fetchFromGitHub, installShellFiles, lib }:
2
3buildGoModule rec {
4 pname = "dapr-cli";
5 version = "1.12.0";
6
7 src = fetchFromGitHub {
8 owner = "dapr";
9 repo = "cli";
10 rev = "v${version}";
11 sha256 = "sha256-G2n6VGP3ncuZ9siXojr4gx0VacIkKSt4OSQo3ZOecr0=";
12 };
13
14 vendorHash = "sha256-/sdW1cDFpOMkXN4RXJQB1PpDbyNmTEOo9OrK5A7cRGQ=";
15
16 proxyVendor = true;
17
18 nativeBuildInputs = [ installShellFiles ];
19
20 subPackages = [ "." ];
21
22 preCheck = ''
23 export HOME=$(mktemp -d)
24 '';
25
26 ldflags = [
27 "-X main.version=${version}"
28 "-X main.apiVersion=1.0"
29 "-X github.com/dapr/cli/pkg/standalone.gitcommit=${src.rev}"
30 "-X github.com/dapr/cli/pkg/standalone.gitversion=${version}"
31 ];
32
33 postInstall = ''
34 mv $out/bin/cli $out/bin/dapr
35
36 installShellCompletion --cmd dapr \
37 --bash <($out/bin/dapr completion bash) \
38 --zsh <($out/bin/dapr completion zsh)
39 '';
40
41 meta = with lib; {
42 description = "A CLI for managing Dapr, the distributed application runtime";
43 homepage = "https://dapr.io";
44 license = licenses.asl20;
45 maintainers = with maintainers; [ joshvanl lucperkins ];
46 mainProgram = "dapr";
47 };
48}