python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / tools / misc / logstash / 6.x.nix
blob4de78cf4cbd7449426873ec705a8a2f29508b84b
1 { elk6Version
2 , enableUnfree ? true
3 , lib, stdenv
4 , fetchurl
5 , makeWrapper
6 , nixosTests
7 , jre
8 }:
10 with lib;
12 let this = stdenv.mkDerivation rec {
13   version = elk6Version;
14   pname = "logstash${optionalString (!enableUnfree) "-oss"}";
16   src = fetchurl {
17     url = "https://artifacts.elastic.co/downloads/logstash/${pname}-${version}.tar.gz";
18     sha256 =
19       if enableUnfree
20       then "0hij1byw5b3xmk3vshr9p7gxwbjrywr7ylps05ydc2dmnz8q2a79"
21       else "1fa236pvhj7spys54nqi3k64rwzf6zi6gaccmqg4p4sh92jzsybv";
22   };
24   dontBuild         = true;
25   dontPatchELF      = true;
26   dontStrip         = true;
27   dontPatchShebangs = true;
29   nativeBuildInputs = [
30     makeWrapper
31   ];
33   buildInputs = [
34     jre
35   ];
37   installPhase = ''
38     runHook preInstall
39     mkdir -p $out
40     cp -r {Gemfile*,modules,vendor,lib,bin,config,data,logstash-core,logstash-core-plugin-api} $out
42     patchShebangs $out/bin/logstash
43     patchShebangs $out/bin/logstash-plugin
45     wrapProgram $out/bin/logstash \
46        --set JAVA_HOME "${jre}"
48     wrapProgram $out/bin/logstash-plugin \
49        --set JAVA_HOME "${jre}"
50     runHook postInstall
51   '';
53   meta = with lib; {
54     description = "A data pipeline that helps you process logs and other event data from a variety of systems";
55     homepage    = "https://www.elastic.co/products/logstash";
56     sourceProvenance = with sourceTypes; [
57       fromSource
58       binaryBytecode  # source bundles dependencies as jars
59       binaryNativeCode  # bundled jruby includes native code
60     ];
61     license     = if enableUnfree then licenses.elastic else licenses.asl20;
62     platforms   = platforms.unix;
63     maintainers = with maintainers; [ wjlroe offline basvandijk ];
64   };
65   passthru.tests =
66     optionalAttrs (!enableUnfree) (
67       assert this.drvPath == nixosTests.elk.ELK-6.elkPackages.logstash.drvPath;
68       {
69         elk = nixosTests.elk.ELK-6;
70       }
71     );
73 in this