{ system, stdenv, lib, fetchurl, installShellFiles }:

let
  version = "0.3.3";
  fileName = "tala-v${version}-linux-amd64.tar.gz";
in
stdenv.mkDerivation {
  pname = "d2plugin-tala";
  inherit version;

  src = fetchurl {
    url = "https://github.com/terrastruct/TALA/releases/download/v${version}/${fileName}";
    sha256 = "sha256-9UJ10aOo5fEKhVZgnl0Y+seYhncKC4P0MPxWtWnaVBo=";
  };

  nativeBuildInputs = [ installShellFiles ];

  phases = [ "unpackPhase" "installPhase" ];

  unpackPhase = "tar --strip-component=1 -xf $src";

  installPhase = ''
    mkdir -p $out/bin
    install -Dm555 bin/d2plugin-tala $out/bin
    installManPage man/d2plugin-tala.1
    installManPage man/tala.1
  '';

  meta = with lib; {
    description = "A diagram layout engine designed specifically for software architecture diagrams";
    homepage = "https://terrastruct.com/tala";
    license = licenses.unfree;
  };
}