Merge pull request #194420 from helsinki-systems/drop/elk6

elk6: remove
This commit is contained in:
Martin Weinelt 2023-04-04 11:55:33 +02:00 committed by GitHub
commit fea1100c99
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 23 additions and 276 deletions

View file

@ -154,6 +154,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- `lib.systems.examples.ghcjs` and consequently `pkgsCross.ghcjs` now use the target triplet `javascript-unknown-ghcjs` instead of `js-unknown-ghcjs`. This has been done to match an [upstream decision](https://gitlab.haskell.org/ghc/ghc/-/commit/6636b670233522f01d002c9b97827d00289dbf5c) to follow Cabal's platform naming more closely. Nixpkgs will also reject `js` as an architecture name.
- The old unsupported version 6.x of the ELK-stack and Elastic beats have been removed. Use OpenSearch instead.
- The `cosmoc` package has been removed. The upstream scripts in `cosmocc` should be used instead.
- Qt 5.12 and 5.14 have been removed, as the corresponding branches have been EOL upstream for a long time. This affected under 10 packages in nixpkgs, largely unmaintained upstream as well, however, out-of-tree package expressions may need to be updated manually.

View file

@ -268,14 +268,6 @@ let
'';
}) { inherit pkgs system; };
in {
ELK-6 = mkElkTest "elk-6-oss" {
name = "elk-6-oss";
elasticsearch = pkgs.elasticsearch6-oss;
logstash = pkgs.logstash6-oss;
kibana = pkgs.kibana6-oss;
journalbeat = pkgs.journalbeat6;
metricbeat = pkgs.metricbeat6;
};
# We currently only package upstream binaries.
# Feel free to package an SSPL licensed source-based package!
# ELK-7 = mkElkTest "elk-7-oss" {
@ -287,13 +279,6 @@ in {
# metricbeat = pkgs.metricbeat7;
# };
unfree = lib.dontRecurseIntoAttrs {
ELK-6 = mkElkTest "elk-6" {
elasticsearch = pkgs.elasticsearch6;
logstash = pkgs.logstash6;
kibana = pkgs.kibana6;
journalbeat = pkgs.journalbeat6;
metricbeat = pkgs.metricbeat6;
};
ELK-7 = mkElkTest "elk-7" {
elasticsearch = pkgs.elasticsearch7;
logstash = pkgs.logstash7;

View file

@ -8,7 +8,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
services.mongodb.enable = true;
services.elasticsearch.enable = true;
services.elasticsearch.package = pkgs.elasticsearch-oss;
services.elasticsearch.extraConf = ''
network.publish_host: 127.0.0.1
network.bind_host: 127.0.0.1

View file

@ -84,8 +84,6 @@ in
};
};
services.elasticsearch.package = pkgs.elasticsearch-oss;
environment.systemPackages = [
(sendEmail "dmarc@localhost")
pkgs.jq
@ -158,8 +156,6 @@ in
};
};
services.elasticsearch.package = pkgs.elasticsearch-oss;
environment.systemPackages = [
pkgs.jq
];

View file

@ -1,54 +0,0 @@
{ lib, fetchFromGitHub, fetchpatch, elk6Version, buildGoPackage, libpcap, nixosTests, systemd }:
let beat = package : extraArgs : buildGoPackage (rec {
name = "${package}-${version}";
version = elk6Version;
src = fetchFromGitHub {
owner = "elastic";
repo = "beats";
rev = "v${version}";
sha256 = "1vnw9clsc10cfpjf6vxvc6m507b2q17sgsl079iwqbp4v0286il7";
};
goPackagePath = "github.com/elastic/beats";
subPackages = [ package ];
patches = [
(fetchpatch {
# Build fix for aarch64, possibly other systems, merged in beats 7.x https://github.com/elastic/beats/pull/9493
url = "https://github.com/elastic/beats/commit/5d796571de1aa2a299393d2045dacc2efac41a04.diff";
sha256 = "sha256:0b79fljbi5xd3h8iiv1m38ad0zhmj09f187asc0m9rxlqrz2l9r2";
})
];
meta = with lib; {
homepage = "https://www.elastic.co/products/beats";
license = licenses.asl20;
maintainers = with maintainers; [ fadenb basvandijk dfithian ];
platforms = platforms.linux;
};
} // extraArgs);
in rec {
filebeat6 = beat "filebeat" {meta.description = "Lightweight shipper for logfiles";};
heartbeat6 = beat "heartbeat" {meta.description = "Lightweight shipper for uptime monitoring";};
metricbeat6 = beat "metricbeat" {
meta.description = "Lightweight shipper for metrics";
passthru.tests =
assert metricbeat6.drvPath == nixosTests.elk.ELK-6.elkPackages.metricbeat.drvPath;
{
elk = nixosTests.elk.ELK-6;
};
};
journalbeat6 = beat "journalbeat" {
meta.description = ''
Journalbeat is an open source data collector to read and forward
journal entries from Linuxes with systemd.
'';
buildInputs = [ systemd.dev ];
postFixup = let libPath = lib.makeLibraryPath [ (lib.getLib systemd) ]; in ''
patchelf --set-rpath ${libPath} "$out/bin/journalbeat"
'';
};
}

View file

@ -1,76 +0,0 @@
{ elk6Version
, enableUnfree ? true
, lib, stdenv
, fetchurl
, makeWrapper
, jre_headless
, util-linux, gnugrep, coreutils
, libxcrypt
, autoPatchelfHook
, zlib
}:
with lib;
stdenv.mkDerivation (rec {
version = elk6Version;
pname = "elasticsearch${optionalString (!enableUnfree) "-oss"}";
src = fetchurl {
url = "https://artifacts.elastic.co/downloads/elasticsearch/${pname}-${version}.tar.gz";
sha256 =
if enableUnfree
then "1hkcgqsrnnx3zjpgar4424mxfaxrx0zbrp7n7n0dlbhphshwnkmd"
else "1pglg60aigy31xmpfchnxcc04nd18zwc3av4m0kyp00yk5mnlyqm";
};
patches = [ ./es-home-6.x.patch ];
postPatch = ''
substituteInPlace bin/elasticsearch-env --replace \
"ES_CLASSPATH=\"\$ES_HOME/lib/*\"" \
"ES_CLASSPATH=\"$out/lib/*\""
substituteInPlace bin/elasticsearch-cli --replace \
"ES_CLASSPATH=\"\$ES_CLASSPATH:\$ES_HOME/\$additional_classpath_directory/*\"" \
"ES_CLASSPATH=\"\$ES_CLASSPATH:$out/\$additional_classpath_directory/*\""
'';
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ jre_headless util-linux ]
++ optionals enableUnfree [ zlib libxcrypt ];
installPhase = ''
mkdir -p $out
cp -R bin config lib modules plugins $out
chmod -x $out/bin/*.*
wrapProgram $out/bin/elasticsearch \
--prefix PATH : "${makeBinPath [ util-linux gnugrep coreutils ]}" \
--set JAVA_HOME "${jre_headless}"
wrapProgram $out/bin/elasticsearch-plugin --set JAVA_HOME "${jre_headless}"
'';
passthru = { inherit enableUnfree; };
meta = {
description = "Open Source, Distributed, RESTful Search Engine";
sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
license = if enableUnfree then licenses.elastic else licenses.asl20;
platforms = platforms.unix;
maintainers = with maintainers; [ apeschar basvandijk ];
};
} // optionalAttrs enableUnfree {
dontPatchELF = true;
nativeBuildInputs = [ makeWrapper ]
++ optional stdenv.isLinux autoPatchelfHook;
runtimeDependencies = [ zlib ];
postFixup = lib.optionalString stdenv.isLinux ''
for exe in $(find $out/modules/x-pack-ml/platform/linux-x86_64/bin -executable -type f); do
echo "patching $exe..."
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$exe"
done
'';
})

View file

@ -39,7 +39,6 @@ in
url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${version}.zip";
sha256 =
if version == "7.17.4" then "a4e881d86694ae70ab6b18f72ea700415971200145d33d438e57c0374d9fc16f"
else if version == "6.8.21" then "06b1pavyggzfp4wwdql0q9nm3r7i9px9cagp4yh4nhxhnk4w5fiq"
else throw "unsupported version ${version} for plugin ${pluginName}";
};
meta = with lib; {
@ -56,7 +55,6 @@ in
url = "https://github.com/vhyza/elasticsearch-${pluginName}/releases/download/v${version}/elasticsearch-${pluginName}-${version}-plugin.zip";
sha256 =
if version == "7.17.3" then "1835f374230cb17193859cee22ac90e3d7a67fb41a55fd4578e840d708287a08"
else if version == "6.8.21" then "0m80cn7vkcvk95v4pdmi6vk5ww7p01k0hj2iqb9g870vs6x2qjzv"
else throw "unsupported version ${version} for plugin ${pluginName}";
};
meta = with lib; {
@ -73,7 +71,6 @@ in
url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${version}.zip";
sha256 =
if version == "7.17.4" then "1c8175b2dac54277c1f41981fb4a784829e74e6e74268381fe0c27bc6652704b"
else if version == "6.8.21" then "07w8s4a5gvr9lzjzf629y8rx3kvs6zd1vl07ksw1paghp42yb354"
else throw "unsupported version ${version} for plugin ${pluginName}";
};
meta = with lib; {
@ -90,7 +87,6 @@ in
url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${version}.zip";
sha256 =
if version == "7.17.4" then "702e446997bde5cb38af120a1cb4271d976fdd23444be49e53b6be3801d845a9"
else if version == "6.8.21" then "1kdpbrasxwr3dn21zjrklp1s389rwa51fairygdwl8px9liwwfa5"
else throw "unsupported version ${version} for plugin ${pluginName}";
};
meta = with lib; {
@ -107,7 +103,6 @@ in
url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${version}.zip";
sha256 =
if version == "7.17.4" then "7d1574a585a9db0988ee248159d51f62cce5578a8c082096ef3e26efdb24aee7"
else if version == "6.8.21" then "0v31yyhjcdlqnjw1f9kihh7z3c6d31whc57hqqd1dn579n4s9rlz"
else throw "unsupported version ${version} for plugin ${pluginName}";
};
meta = with lib; {
@ -124,7 +119,6 @@ in
url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${esVersion}.zip";
sha256 =
if version == "7.17.4" then "cad923a662db705d40ca29698aa118e9e4cc50ae564c426a76d5acb777a4f57c"
else if version == "6.8.21" then "0sfh1az30q4f34zxig2fz8wn9gk53fmmxyg5pbi1svn9761p5awq"
else throw "unsupported version ${version} for plugin ${pluginName}";
};
meta = with lib; {
@ -141,7 +135,6 @@ in
url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${esVersion}.zip";
sha256 =
if version == "7.17.4" then "a50be4cea5c68ad7615f87d672ba160d027fdfde2be0578bb2dabd6384cc8108"
else if version == "6.8.21" then "00lwj00rfdk6850gk1n86chiz2w6afpqn7jn588jdbwv41qh5mrv"
else throw "unsupported version ${version} for plugin ${pluginName}";
};
meta = with lib; {
@ -158,7 +151,6 @@ in
version =
# https://docs.search-guard.com/latest/search-guard-versions
if esVersion == "7.17.3" then "${esVersion}-53.1.0"
else if esVersion == "6.8.21" then "${esVersion}-25.6"
else throw "unsupported version ${esVersion} for plugin ${pluginName}";
src =
if esVersion == "7.17.3" then
@ -166,11 +158,6 @@ in
url = "https://maven.search-guard.com/search-guard-suite-release/com/floragunn/search-guard-suite-plugin/${version}/search-guard-suite-plugin-${version}.zip";
sha256 = "b49b24f7b74043cb5bab93f18316ea71656a7668e61bf063ccaa7b0ee2302a31";
}
else if esVersion == "6.8.21" then
fetchurl {
url = "https://maven.search-guard.com/search-guard-release/com/floragunn/search-guard-6/${version}/search-guard-6-${version}.zip";
sha256 = "19nj513wigwd0mzq747zax4fzvv5vi24f7j0636rydd9iv9cyhg2";
}
else throw "unsupported version ${version} for plugin ${pluginName}";
meta = with lib; {
homepage = "https://search-guard.com";

View file

@ -1,71 +0,0 @@
{ elk6Version
, enableUnfree ? true
, lib, stdenv
, fetchurl
, makeWrapper
, nixosTests
, jre
}:
let this = stdenv.mkDerivation rec {
version = elk6Version;
pname = "logstash${lib.optionalString (!enableUnfree) "-oss"}";
src = fetchurl {
url = "https://artifacts.elastic.co/downloads/logstash/${pname}-${version}.tar.gz";
sha256 =
if enableUnfree
then "0hij1byw5b3xmk3vshr9p7gxwbjrywr7ylps05ydc2dmnz8q2a79"
else "1fa236pvhj7spys54nqi3k64rwzf6zi6gaccmqg4p4sh92jzsybv";
};
dontBuild = true;
dontPatchELF = true;
dontStrip = true;
dontPatchShebangs = true;
nativeBuildInputs = [
makeWrapper
];
buildInputs = [
jre
];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r {Gemfile*,modules,vendor,lib,bin,config,data,logstash-core,logstash-core-plugin-api} $out
patchShebangs $out/bin/logstash
patchShebangs $out/bin/logstash-plugin
wrapProgram $out/bin/logstash \
--set JAVA_HOME "${jre}"
wrapProgram $out/bin/logstash-plugin \
--set JAVA_HOME "${jre}"
runHook postInstall
'';
meta = with lib; {
description = "A data pipeline that helps you process logs and other event data from a variety of systems";
homepage = "https://www.elastic.co/products/logstash";
sourceProvenance = with sourceTypes; [
fromSource
binaryBytecode # source bundles dependencies as jars
binaryNativeCode # bundled jruby includes native code
];
license = if enableUnfree then licenses.elastic else licenses.asl20;
platforms = platforms.unix;
maintainers = with maintainers; [ wjlroe offline basvandijk ];
};
passthru.tests =
lib.optionalAttrs (!enableUnfree) (
assert this.drvPath == nixosTests.elk.ELK-6.elkPackages.logstash.drvPath;
{
elk = nixosTests.elk.ELK-6;
}
);
};
in this

View file

@ -411,6 +411,12 @@ mapAliases ({
elasticmq = throw "elasticmq has been removed in favour of elasticmq-server-bin"; # Added 2021-01-17
elasticsearch7-oss = throw "elasticsearch7-oss has been removed, as the distribution is no longer provided by upstream. https://github.com/NixOS/nixpkgs/pull/114456"; # Added 2021-06-09
elasticsearch-oss = throw "elasticsearch-oss has been removed because there is no oss version of elasticsearch anymore. Use opensearch instead."; # Added 2022-10-04
elasticsearch6 = throw "elasticsearch6 has been removed because it reached end of life"; # Added 2022-10-04
elasticsearch6-oss = throw "elasticsearch6-oss has been removed because it reached end of life"; # Added 2022-10-04
elasticsearch6Plugins = throw "elasticsearch6Plugins has been removed because it reached end of life"; # Added 2022-10-04
elasticsearch7Plugins = elasticsearchPlugins;
# Electron
electron_3 = throw "electron_3 has been removed in favor of newer versions"; # added 2022-01-06
electron_4 = throw "electron_4 has been removed in favor of newer versions"; # added 2022-01-06
@ -469,6 +475,7 @@ mapAliases ({
ffadoFull = throw "'ffadoFull' has been renamed to/replaced by 'ffado'"; # Converted to throw 2022-02-22
ffmpeg-sixel = throw "ffmpeg-sixel has been removed, because it was an outdated/unmaintained fork of ffmpeg"; # Added 2022-03-23";
ffmpeg_3 = throw "ffmpeg_3 was removed from nixpkgs, because it was an outdated and insecure release"; # added 2022-01-17
filebeat6 = throw "filebeat6 has been removed because it reached end of life"; # Added 2022-10-04
finger_bsd = bsd-finger;
fingerd_bsd = bsd-fingerd;
firefox-esr-68 = throw "Firefox 68 ESR was removed because it reached end of life with its final release 68.12esr on 2020-08-25";
@ -657,6 +664,7 @@ mapAliases ({
haxe_3_4 = throw "'haxe_3_4' has been removed because it is old and no longer used by any packages in nixpkgs"; # Added 2023-03-15
hdr-plus = throw "hdr-plus has been removed because it is unmaintained, often breaks and no longer consumed as a dependency"; # Added 2022-11-08
heapster = throw "Heapster is now retired. See https://github.com/kubernetes-retired/heapster/blob/master/docs/deprecation.md"; # Added 2022-04-05
heartbeat6 = throw "heartbeat6 has been removed because it reached end of life"; # Added 2022-10-04
heimdalFull = throw "'heimdalFull' has been renamed to/replaced by 'heimdal'"; # Converted to throw 2022-02-22
heme = throw "heme has been removed: upstream is gone"; # added 2022-02-06
hepmc = hepmc2; # Added 2019-08-05
@ -727,7 +735,9 @@ mapAliases ({
jellyfin_10_5 = throw "Jellyfin 10.5 is no longer supported and contains a security vulnerability. Please upgrade to a newer version"; # Added 2021-04-26
jira-cli = throw "jira-cli was removed because it is no longer maintained"; # Added 2023-02-28
joseki = throw "'joseki' has been renamed to/replaced by 'apache-jena-fuseki'"; # Converted to throw 2022-02-22
journalbeat7 = throw "journalbeat has been removed upstream. Use filebeat with the journald input instead";
journalbeat = throw "journalbeat7 has been removed upstream. Use filebeat with the journald input instead"; # Added 2022-10-04
journalbeat6 = throw "journalbeat6 has been removed because it reached end of life"; # Added 2022-10-04
journalbeat7 = throw "journalbeat7 has been removed upstream. Use filebeat with the journald input instead"; # Added 2022-10-04
# Julia
julia_07 = throw "julia_07 has been deprecated in favor of the latest LTS version"; # Added 2020-09-15
@ -952,6 +962,8 @@ mapAliases ({
loadcaffe = throw "loadcaffe has been removed, as the upstream project has been abandoned"; # Added 2020-03-28
lobster-two = google-fonts; # Added 2021-07-22
logstash6 = throw "logstash6 has been removed because it reached end of life"; # Added 2022-10-04
logstash6-oss = throw "logstash6 has been removed because it reached end of life"; # Added 2022-10-04
love_0_7 = throw "love_0_7 was removed because it is a very old version and no longer used by any package in nixpkgs"; # Added 2022-01-15
love_0_8 = throw "love_0_8 was removed because it is a very old version and no longer used by any package in nixpkgs"; # Added 2022-01-15
love_0_9 = throw "love_0_9 was removed because was broken for a long time and no longer used by any package in nixpkgs"; # Added 2022-01-15
@ -990,6 +1002,7 @@ mapAliases ({
mesos = throw "mesos has been removed from nixpkgs, as it's unmaintained"; # Added 2020-08-15
mess = mame; # Added 2019-10-30
metal = throw "metal has been removed due to lack of maintainers";
metricbeat6 = throw "metricbeat6 has been removed because it reached end of life"; # Added 2022-10-04
mididings = throw "mididings has been removed from nixpkgs as it doesn't support recent python3 versions and its upstream stopped maintaining it"; # Added 2022-01-12
midoriWrapper = throw "'midoriWrapper' has been renamed to/replaced by 'midori'"; # Converted to throw 2022-02-22
mime-types = mailcap; # Added 2022-01-21

View file

@ -3779,22 +3779,16 @@ with pkgs;
bchunk = callPackage ../tools/cd-dvd/bchunk { };
inherit (callPackages ../misc/logging/beats/6.x.nix { })
filebeat6
heartbeat6
metricbeat6
journalbeat6;
inherit (callPackages ../misc/logging/beats/7.x.nix { })
filebeat7
heartbeat7
metricbeat7
packetbeat7;
filebeat = filebeat6;
heartbeat = heartbeat6;
metricbeat = metricbeat6;
journalbeat = journalbeat6;
filebeat = filebeat7;
heartbeat = heartbeat7;
metricbeat = metricbeat7;
packetbeat = packetbeat7;
bfr = callPackage ../tools/misc/bfr { };
@ -7158,36 +7152,17 @@ with pkgs;
# The latest version used by elasticsearch, logstash, kibana and the the beats from elastic.
# When updating make sure to update all plugins or they will break!
elk6Version = "6.8.21";
elk7Version = "7.17.4";
elasticsearch6 = callPackage ../servers/search/elasticsearch/6.x.nix {
util-linux = util-linuxMinimal;
jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
};
elasticsearch6-oss = callPackage ../servers/search/elasticsearch/6.x.nix {
enableUnfree = false;
util-linux = util-linuxMinimal;
jre_headless = jre8_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
};
elasticsearch7 = callPackage ../servers/search/elasticsearch/7.x.nix {
util-linux = util-linuxMinimal;
jre_headless = jdk11_headless; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
};
elasticsearch = elasticsearch6;
elasticsearch-oss = elasticsearch6-oss;
elasticsearch = elasticsearch7;
elasticsearchPlugins = recurseIntoAttrs (
callPackage ../servers/search/elasticsearch/plugins.nix {
elasticsearch = elasticsearch-oss;
}
callPackage ../servers/search/elasticsearch/plugins.nix {}
);
elasticsearch6Plugins = elasticsearchPlugins.override {
elasticsearch = elasticsearch6-oss;
};
elasticsearch7Plugins = elasticsearchPlugins.override {
elasticsearch = elasticsearch7;
};
elasticsearch-curator = callPackage ../tools/admin/elasticsearch-curator { };
@ -9123,15 +9098,6 @@ with pkgs;
lockfileProgs = callPackage ../tools/misc/lockfile-progs { };
logstash6 = callPackage ../tools/misc/logstash/6.x.nix {
# https://www.elastic.co/support/matrix#logstash-and-jvm
jre = jdk11_headless;
};
logstash6-oss = callPackage ../tools/misc/logstash/6.x.nix {
enableUnfree = false;
# https://www.elastic.co/support/matrix#logstash-and-jvm
jre = jdk11_headless;
};
logstash7 = callPackage ../tools/misc/logstash/7.x.nix {
# https://www.elastic.co/support/matrix#logstash-and-jvm
jre = jdk11_headless;
@ -9141,7 +9107,7 @@ with pkgs;
# https://www.elastic.co/support/matrix#logstash-and-jvm
jre = jdk11_headless;
};
logstash = logstash6;
logstash = logstash7;
logstash-contrib = callPackage ../tools/misc/logstash/contrib.nix { };