29 lines
681 B
Nix

{
pkgs ? import <nixpkgs> {},
version ? "3.5.3",
hash ? "sha256-JMlDvaNRC/qEnD6uEts32kh9IEU2/wgHTsHz3Z3fq0M=",
jre ? pkgs.jre,
...
}:
pkgs.stdenv.mkDerivation {
pname = "antlr";
inherit version;
dontUnpack = true;
src = pkgs.fetchurl {
url = "https://github.com/antlr/website-antlr3/blob/gh-pages/download/antlr-${version}-complete.jar";
inherit hash;
};
installPhase = ''
mkdir -p $out/share/java
cp $src $out/share/java/antlr-${version}-complete.jar
mkdir $out/bin
cat > $out/bin/antlr <<EOF
#!/bin/sh
exec ${jre}/bin/java -jar $out/share/java/antlr-${version}-complete.jar "$@"
EOF
chmod +x $out/bin/antlr
'';
}