diff --git a/pkgs/servers/confluent/default.nix b/pkgs/servers/confluent/default.nix new file mode 100644 index 00000000000..dd42f38f62a --- /dev/null +++ b/pkgs/servers/confluent/default.nix @@ -0,0 +1,49 @@ +{ stdenv, lib, fetchurl, jre, makeWrapper, bash, gnused }: + +with lib; + +let + confluentVersion = "4.1.1"; + scalaVersion = "2.11"; + sha256 = "e00eb4c6c7445ad7a43c9cd237778d1cd184322aebf5ff64a8e9806ba2cc27aa"; +in stdenv.mkDerivation rec { + name = "confluent-${version}"; + version = "${confluentVersion}-${scalaVersion}"; + + src = fetchurl { + url = "http://packages.confluent.io/archive/${versions.majorMinor confluentVersion}/confluent-oss-${version}.tar.gz"; + inherit sha256; + }; + + buildInputs = [ jre makeWrapper bash ]; + + installPhase = '' + mkdir -p $out + cp -R bin etc share src $out + rm -rf $out/bin/windows + + patchShebangs $out/bin + + # allow us the specify logging directory using env + substituteInPlace $out/bin/kafka-run-class \ + --replace 'LOG_DIR="$base_dir/logs"' 'LOG_DIR="$KAFKA_LOG_DIR"' + + substituteInPlace $out/bin/ksql-run-class \ + --replace 'LOG_DIR="$base_dir/logs"' 'LOG_DIR="$KAFKA_LOG_DIR"' + + for p in $out/bin\/*; do + wrapProgram $p \ + --set JAVA_HOME "${jre}" \ + --set KAFKA_LOG_DIR "/tmp/apache-kafka-logs" \ + --prefix PATH : "${bash}/bin:${gnused}/bin" + done + ''; + + meta = with stdenv.lib; { + homepage = https://www.confluent.io/; + description = "Confluent platform"; + license = licenses.asl20; + maintainers = [ maintainers.offline ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a1f806f8af8..99f883fa03c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7970,6 +7970,8 @@ with pkgs; corundum = callPackage ../development/tools/corundum { }; + confluent = callPackage ../servers/confluent {}; + ctags = callPackage ../development/tools/misc/ctags { }; ctagsWrapped = callPackage ../development/tools/misc/ctags/wrapped.nix {};