Merge pull request #330634 from r-ryantm/auto-update/circumflex
[NixPkgs.git] / pkgs / servers / search / opensearch / default.nix
blob1ee13f39892d62dfc8a736d0574b01483270c674
1 { coreutils
2 , fetchurl
3 , gnugrep
4 , jre_headless
5 , lib
6 , makeBinaryWrapper
7 , nixosTests
8 , stdenv
9 , stdenvNoCC
12 stdenvNoCC.mkDerivation (finalAttrs: {
13   pname = "opensearch";
14   version = "2.15.0";
16   src = fetchurl {
17     url = "https://artifacts.opensearch.org/releases/bundle/opensearch/${finalAttrs.version}/opensearch-${finalAttrs.version}-linux-x64.tar.gz";
18     hash = "sha256-AUuquYXRwI4JvEiUdx/l3Tk/kxENrXG1RtzBzrsrZyg=";
19   };
21   nativeBuildInputs = [
22     makeBinaryWrapper
23   ];
25   buildInputs = [
26     jre_headless
27   ];
29   installPhase = ''
30     runHook preInstall
32     mkdir -p $out
33     cp -R bin config lib modules plugins $out
35     substituteInPlace $out/bin/opensearch \
36       --replace 'bin/opensearch-keystore' "$out/bin/opensearch-keystore"
38     wrapProgram $out/bin/opensearch \
39       --prefix PATH : "${lib.makeBinPath [ gnugrep coreutils ]}" \
40       --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc.lib ]}:$out/plugins/opensearch-knn/lib/" \
41       --set JAVA_HOME "${jre_headless}"
43     wrapProgram $out/bin/opensearch-plugin --set JAVA_HOME "${jre_headless}"
45     rm $out/bin/opensearch-cli
47     runHook postInstall
48   '';
50   passthru.tests = nixosTests.opensearch;
52   meta = {
53     description = "Open Source, Distributed, RESTful Search Engine";
54     homepage = "https://github.com/opensearch-project/OpenSearch";
55     license = lib.licenses.asl20;
56     maintainers = with lib.maintainers; [ shyim ];
57     platforms = lib.platforms.unix;
58     sourceProvenance = with lib.sourceTypes; [
59       binaryBytecode
60       binaryNativeCode
61     ];
62   };