49 lines
1.1 KiB
Nix
49 lines
1.1 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchurl,
|
|
makeWrapper,
|
|
jre,
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "flink";
|
|
version = "1.20.0";
|
|
|
|
src = fetchurl {
|
|
url = "mirror://apache/flink/${pname}-${version}/${pname}-${version}-bin-scala_2.12.tgz";
|
|
sha256 = "sha256-cI/VRMz53cDUsZL+A1eXzhbeLCbx12TFWQcwXv4UCvA=";
|
|
};
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
|
|
buildInputs = [ jre ];
|
|
|
|
installPhase = ''
|
|
rm bin/*.bat || true
|
|
|
|
mkdir -p $out/bin $out/opt/flink
|
|
mv * $out/opt/flink/
|
|
makeWrapper $out/opt/flink/bin/flink $out/bin/flink \
|
|
--prefix PATH : ${jre}/bin
|
|
|
|
cat <<EOF >> $out/opt/flink/conf/flink-conf.yaml
|
|
env.java.home: ${jre}
|
|
env.log.dir: /tmp/flink-logs
|
|
EOF
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Distributed stream processing framework";
|
|
mainProgram = "flink";
|
|
homepage = "https://flink.apache.org";
|
|
downloadPage = "https://flink.apache.org/downloads.html";
|
|
license = licenses.asl20;
|
|
sourceProvenance = with sourceTypes; [ binaryBytecode ];
|
|
platforms = platforms.all;
|
|
maintainers = with maintainers; [
|
|
mbode
|
|
autophagy
|
|
];
|
|
};
|
|
}
|