{ pkgs, target }: pkgs.stdenv.mkDerivation rec { pname = "hjq"; version = "0.1.0"; src = ./.; __noChroot = true; dontStrip = true; denort = pkgs.fetchurl { url = "https://dl.deno.land/release/v${pkgs.deno.version}/denort-${target}.zip"; hash = "sha256-J2LfvHPbJvcOpbQOd6EmGxHDciez7tG10etK4bqQhLI="; }; nativeBuildInputs = with pkgs; [ deno unzip ]; configurePhase = '' export DENO_DIR=./.deno_cache; mkdir -p $TMPDIR/denort pushd $TMPDIR/denort unzip ${denort} chmod +x denort popd deno cache --reload main.ts ''; buildPhase = '' runHook preBuild export DENORT_BIN="$TMPDIR/denort/denort" deno compile --target=${target} --cached-only --output app main.ts runHook postBuild ''; installPhase = '' mkdir -p $out/bin cp app $out/bin/${pname} ''; }