{ lib
, makeWrapper
, symlinkJoin
, d2-unwrapped
, d2plugin-tala
, withTala ? false
}:

symlinkJoin {
  name = "d2";
  paths = [ d2-unwrapped ] ++ lib.optional withTala [ d2plugin-tala ];
  buildInputs = [ makeWrapper ];
  postBuild = ''
    wrapProgram $out/bin/d2 \
      --prefix PATH : "$out/bin"
  '';
}