Commit c387a33b authored by zach's avatar zach
Browse files

extism-cli: 0.1.0 -> 0.3.8

parent b8f0396b
Loading
Loading
Loading
Loading
+23 −17
Original line number Diff line number Diff line
{ lib, stdenvNoCC, fetchFromGitHub, python3, makeBinaryWrapper }:

stdenvNoCC.mkDerivation rec {
{
  lib
, buildGoModule
, fetchFromGitHub
, installShellFiles
}:

buildGoModule rec {
  pname = "extism-cli";
  version = "0.1.0";
  version = "0.3.8";

  src = fetchFromGitHub {
    owner = "extism";
    repo = "cli";
    rev = "97935786166e82154266b82410028482800e6061";
    sha256 = "sha256-LRzXuZQt5h3exw43UXUwLVIhveYVFw/SQ2YtHI9ZnWc=";
    rev = "refs/tags/v${version}";
    hash = "sha256-StMipPMLSQzrhWv0yoKkNiuHMRW7QIhmVZ/M27WDWrM=";
  };

  buildInputs = [ python3 ];
  nativeBuildInputs = [ makeBinaryWrapper ];
  modRoot = "./extism";

  installPhase = ''
    runHook preInstall
  vendorHash = "sha256-sSKiwYT5EP0FQJbhgv9ZFDwwwvIJ66yMULbj529AZwY=";

    install -D -m 755 ./extism_cli/__init__.py "$out/bin/extism"
  nativeBuildInputs = [ installShellFiles ];

    # The extism cli tries by default to install a library and header into /usr/local which does not work on NixOS.
    # Pass a reasonable writable directory which can still be overwritten with another --prefix argument.
    wrapProgram "$out/bin/extism" \
      --add-flags '--prefix $HOME/.local'
  doCheck = false; # Tests require network access

    runHook postInstall
  postInstall = ''
    local INSTALL="$out/bin/extism"
    installShellCompletion --cmd extism \
      --bash <($out/bin/containerlab completion bash) \
      --fish <($out/bin/containerlab completion fish) \
      --zsh <($out/bin/containerlab completion zsh)
  '';

  meta = with lib; {
    description = "The extism CLI is used to manage Extism installations";
    homepage = "https://github.com/extism/cli";
    license = licenses.bsd3;
    maintainers = with maintainers; [ ];
    maintainers = with maintainers; [ zshipko ];
    mainProgram = "extism";
    platforms = platforms.all;
  };
}