nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 buildGoModule,
5 fetchFromGitHub,
6 installShellFiles,
7}:
8
9buildGoModule rec {
10 pname = "arkade";
11 version = "0.11.69";
12
13 src = fetchFromGitHub {
14 owner = "alexellis";
15 repo = "arkade";
16 tag = version;
17 hash = "sha256-aTgW7zYaY8R4fgfQEg2IKC0+199ZLyLPFEQhKmRqFys=";
18 };
19
20 env.CGO_ENABLED = 0;
21
22 nativeBuildInputs = [ installShellFiles ];
23
24 vendorHash = null;
25
26 # Exclude pkg/get: tests downloading of binaries which fail when sandbox=true
27 subPackages = [
28 "."
29 "cmd"
30 "pkg/apps"
31 "pkg/archive"
32 "pkg/config"
33 "pkg/env"
34 "pkg/helm"
35 "pkg/k8s"
36 "pkg/types"
37 ];
38
39 ldflags = [
40 "-s"
41 "-w"
42 "-X github.com/alexellis/arkade/pkg.GitCommit=ref/tags/${version}"
43 "-X github.com/alexellis/arkade/pkg.Version=${version}"
44 ];
45
46 postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
47 installShellCompletion --cmd arkade \
48 --bash <($out/bin/arkade completion bash) \
49 --zsh <($out/bin/arkade completion zsh) \
50 --fish <($out/bin/arkade completion fish)
51 '';
52
53 meta = {
54 homepage = "https://github.com/alexellis/arkade";
55 description = "Open Source Kubernetes Marketplace";
56 mainProgram = "arkade";
57 license = lib.licenses.mit;
58 maintainers = with lib.maintainers; [
59 welteki
60 techknowlogick
61 qjoly
62 ];
63 };
64}