1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 installShellFiles,
6}:
7
8buildGoModule rec {
9 pname = "extism-cli";
10 version = "1.6.3";
11
12 src = fetchFromGitHub {
13 owner = "extism";
14 repo = "cli";
15 tag = "v${version}";
16 hash = "sha256-ioH2s9546/i12jCmE/4km9YqLhiHkj6WLBwmNAAZFUA=";
17 };
18
19 vendorHash = "sha256-51/fzq2j55GHmEx2twb0DSi0AmBS4DbViZzo1c5Xn1M=";
20
21 nativeBuildInputs = [ installShellFiles ];
22
23 subPackages = [ "./extism" ];
24
25 doCheck = false; # Tests require network access
26
27 postInstall = ''
28 local INSTALL="$out/bin/extism"
29 installShellCompletion --cmd extism \
30 --bash <($out/bin/extism completion bash) \
31 --fish <($out/bin/extism completion fish) \
32 --zsh <($out/bin/extism completion zsh)
33 '';
34
35 meta = with lib; {
36 description = "Extism CLI is used to manage Extism installations";
37 homepage = "https://github.com/extism/cli";
38 license = licenses.bsd3;
39 maintainers = with maintainers; [ zshipko ];
40 mainProgram = "extism";
41 platforms = platforms.all;
42 };
43}