gr-base/package.nix

41 lines
802 B
Nix
Raw Normal View History

2025-08-02 00:07:09 +07:00
{ pkgs, target, name }:
pkgs.stdenv.mkDerivation rec {
pname = name;
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
'';
buildPhase = ''
runHook preBuild
export DENORT_BIN="$TMPDIR/denort/denort"
deno compile --output app main.ts --target=${target}
runHook postBuild
'';
installPhase = ''
mkdir -p $out/bin
cp app $out/bin/${name}
'';
}