.hive/modules/derivations/antlrworks.nix

30 lines
761 B
Nix

{
pkgs ? import <nixpkgs> {},
version ? "1.5.2",
hash ? "sha256-Yy9x7cSQrRpk+Flt9+H7gdogUS4WR2q2fqdVXQgvd7Y=",
jre ? pkgs.jre,
...
}:
pkgs.stdenv.mkDerivation {
pname = "antlrworks";
inherit version;
dontUnpack = true;
src = pkgs.fetchurl {
url = "https://github.com/antlr/website-antlr3/raw/refs/heads/gh-pages/download/antlrworks-${version}-complete.jar";
inherit hash;
};
installPhase = ''
mkdir -p $out/share/java
cp $src $out/share/java/antlrworks-${version}-complete.jar
mkdir $out/bin
cat > $out/bin/antlrworks <<EOF
#!/usr/bin/env sh
export CLASSPATH=$out/share/java/antlrworks-${version}-complete.jar:$CLASSPATH
${jre}/bin/java org.antlr.Tool
EOF
chmod +x $out/bin/antlrworks
'';
}