biome: 1.9.2 -> 1.9.3 (#349335)
[NixPkgs.git] / pkgs / servers / zookeeper / default.nix
blobbf905324e0ac0188cdb98201b5be49c0ea979e60
1 { lib, stdenv, fetchurl, jdk11_headless, makeWrapper, nixosTests, bash, coreutils }:
2 let
3   # Latest supported LTS JDK for Zookeeper 3.9:
4   # https://zookeeper.apache.org/doc/r3.9.2/zookeeperAdmin.html#sc_requiredSoftware
5   jre = jdk11_headless;
6 in
7 stdenv.mkDerivation rec {
8   pname = "zookeeper";
9   version = "3.9.2";
11   src = fetchurl {
12     url = "mirror://apache/zookeeper/${pname}-${version}/apache-${pname}-${version}-bin.tar.gz";
13     hash = "sha512-K1rgLWGKJ8qM1UkkhV1TRCY7fZ3udgGB+dZrr6kjAyTSrTF4aJXwZUyWncONSj0Ad/dMw3a1i1+i+5S+satEXw==";
14   };
16   nativeBuildInputs = [ makeWrapper ];
17   buildInputs = [ jre ];
19   installPhase = ''
20     runHook preInstall
21     mkdir -p $out
22     cp -R conf docs lib $out
23     mkdir -p $out/bin
24     cp -R bin/{zkCli,zkCleanup,zkEnv,zkServer,zkSnapShotToolkit,zkTxnLogToolkit}.sh $out/bin
25     patchShebangs $out/bin
26     substituteInPlace $out/bin/zkServer.sh \
27         --replace-fail /bin/echo ${coreutils}/bin/echo
28     for i in $out/bin/{zkCli,zkCleanup,zkServer,zkSnapShotToolkit,zkTxnLogToolkit}.sh; do
29       wrapProgram $i \
30         --set JAVA_HOME "${jre}" \
31         --prefix PATH : "${bash}/bin"
32     done
33     chmod -x $out/bin/zkEnv.sh
34     runHook postInstall
35   '';
37   passthru = {
38     tests = {
39       nixos = nixosTests.zookeeper;
40     };
41     inherit jre;
42   };
44   meta = with lib; {
45     homepage = "https://zookeeper.apache.org";
46     description = "Apache Zookeeper";
47     changelog = "https://zookeeper.apache.org/doc/r${version}/releasenotes.html";
48     license = licenses.asl20;
49     maintainers = with maintainers; [ nathan-gs pradeepchhetri ztzg ];
50     platforms = platforms.unix;
51     sourceProvenance = with sourceTypes; [ binaryBytecode ];
52   };