nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 fetchFromGitHub,
4 buildGoModule,
5 installShellFiles,
6}:
7
8buildGoModule rec {
9 pname = "circleci-cli";
10 version = "0.1.34038";
11
12 src = fetchFromGitHub {
13 owner = "CircleCI-Public";
14 repo = "circleci-cli";
15 rev = "v${version}";
16 sha256 = "sha256-kEhAiTcWY+xXX5jFgJZtle0CEwqRT2BHDEM8iSUFRh4=";
17 };
18
19 vendorHash = "sha256-QMSciB81khHhjd/4Km1YYyTiEFDF75AcNGsmZTLLO5Q=";
20
21 nativeBuildInputs = [ installShellFiles ];
22
23 doCheck = false;
24
25 ldflags = [
26 "-s"
27 "-w"
28 "-X github.com/CircleCI-Public/circleci-cli/version.Version=${version}"
29 "-X github.com/CircleCI-Public/circleci-cli/version.Commit=${src.rev}"
30 "-X github.com/CircleCI-Public/circleci-cli/version.packageManager=nix"
31 ];
32
33 postInstall = ''
34 mv $out/bin/circleci-cli $out/bin/circleci
35
36 installShellCompletion --cmd circleci \
37 --bash <(HOME=$TMPDIR $out/bin/circleci completion bash --skip-update-check) \
38 --zsh <(HOME=$TMPDIR $out/bin/circleci completion zsh --skip-update-check)
39 '';
40
41 meta = {
42 # Box blurb edited from the AUR package circleci-cli
43 description = ''
44 Command to enable you to reproduce the CircleCI environment locally and
45 run jobs as if they were running on the hosted CirleCI application.
46 '';
47 maintainers = with lib.maintainers; [ synthetica ];
48 mainProgram = "circleci";
49 license = lib.licenses.mit;
50 homepage = "https://circleci.com/";
51 };
52}