zabbix:1.8 -> 4.0 | remove old packages

This commit is contained in:
PsyanticY
2019-07-11 17:22:26 +01:00
parent 1cafe467b1
commit 16f8a17416
5 changed files with 79 additions and 255 deletions
-92
View File
@@ -1,92 +0,0 @@
{ stdenv, fetchurl, pkgconfig, postgresql, curl, openssl, zlib
, enableJabber ? false, minmay ? null }:
assert enableJabber -> minmay != null;
let
version = "2.0.21";
branch = "2.0";
src = fetchurl {
url = "mirror://sourceforge/zabbix/zabbix-${version}.tar.gz";
sha256 = "14g22x2zy5xqnh2xg23xy5gjd49d1i8pks7pkidwdwa9acwgfx71";
};
preConfigure =
''
substituteInPlace ./configure \
--replace " -static" "" \
${stdenv.lib.optionalString (stdenv.cc.libc != null) ''
--replace /usr/include/iconv.h ${stdenv.lib.getDev stdenv.cc.libc}/include/iconv.h
''}
'';
in
{
recurseForDerivations = true;
server = stdenv.mkDerivation {
name = "zabbix-${version}";
inherit src preConfigure;
configureFlags = [
"--enable-agent"
"--enable-server"
"--with-postgresql"
"--with-libcurl"
"--with-gettext"
] ++ stdenv.lib.optional enableJabber "--with-jabber=${minmay}";
postPatch = ''
sed -i -e 's/iksemel/minmay/g' configure src/libs/zbxmedia/jabber.c
sed -i \
-e '/^static ikstransport/,/}/d' \
-e 's/iks_connect_with\(.*\), &zbx_iks_transport/mmay_connect_via\1/' \
-e 's/iks/mmay/g' -e 's/IKS/MMAY/g' src/libs/zbxmedia/jabber.c
'';
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ postgresql curl openssl zlib ];
postInstall =
''
mkdir -p $out/share/zabbix
cp -prvd frontends/php $out/share/zabbix/php
mkdir -p $out/share/zabbix/db/data
cp -prvd database/postgresql/data.sql $out/share/zabbix/db/data/data.sql
cp -prvd database/postgresql/images.sql $out/share/zabbix/db/data/images_pgsql.sql
mkdir -p $out/share/zabbix/db/schema
cp -prvd database/postgresql/schema.sql $out/share/zabbix/db/schema/postgresql.sql
'';
meta = {
inherit branch;
description = "An enterprise-class open source distributed monitoring solution";
homepage = https://www.zabbix.com/;
license = "GPL";
maintainers = [ stdenv.lib.maintainers.eelco ];
platforms = stdenv.lib.platforms.linux;
};
};
agent = stdenv.mkDerivation {
name = "zabbix-agent-${version}";
inherit src preConfigure;
configureFlags = [ "--enable-agent" ];
meta = with stdenv.lib; {
inherit branch;
description = "An enterprise-class open source distributed monitoring solution (client-side agent)";
homepage = https://www.zabbix.com/;
license = licenses.gpl2;
maintainers = [ maintainers.eelco ];
platforms = platforms.linux;
};
};
}
-104
View File
@@ -1,104 +0,0 @@
{ stdenv, fetchurl, pkgconfig, postgresql, curl, openssl, zlib
, net_snmp , libssh2, openldap
, enableJabber ? false, minmay ? null
, enableSnmp ? false
, enableSsh ? false
, enableLdap ? false
}:
assert enableJabber -> minmay != null;
let
version = "2.2.20";
branch = "2.2";
src = fetchurl {
url = "mirror://sourceforge/zabbix/zabbix-${version}.tar.gz";
sha256 = "00pfpyj3vydwx9dn0bklh1p5j0bp2awi4hvv4kgliyav8l0416hk";
};
preConfigure =
''
substituteInPlace ./configure \
--replace " -static" "" \
${stdenv.lib.optionalString (stdenv.cc.libc != null) ''
--replace /usr/include/iconv.h ${stdenv.lib.getDev stdenv.cc.libc}/include/iconv.h
''}
'';
in
{
recurseForDerivations = true;
server = stdenv.mkDerivation {
name = "zabbix-${version}";
inherit src preConfigure;
configureFlags = [
"--enable-agent"
"--enable-server"
"--with-postgresql"
"--with-libcurl"
"--with-gettext"
]
++ stdenv.lib.optional enableJabber "--with-jabber=${minmay}"
++ stdenv.lib.optional enableSnmp "--with-net-snmp"
++ stdenv.lib.optional enableSsh "--with-ssh2=${libssh2.dev}"
++ stdenv.lib.optional enableLdap "--with-ldap=${openldap.dev}";
postPatch = ''
sed -i -e 's/iksemel/minmay/g' configure src/libs/zbxmedia/jabber.c
sed -i \
-e '/^static ikstransport/,/}/d' \
-e 's/iks_connect_with\(.*\), &zbx_iks_transport/mmay_connect_via\1/' \
-e 's/iks/mmay/g' -e 's/IKS/MMAY/g' src/libs/zbxmedia/jabber.c
'';
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ postgresql curl openssl zlib ]
++ stdenv.lib.optional enableSnmp net_snmp
++ stdenv.lib.optional enableSsh libssh2
++ stdenv.lib.optional enableLdap openldap;
postInstall =
''
mkdir -p $out/share/zabbix
cp -prvd frontends/php $out/share/zabbix/php
mkdir -p $out/share/zabbix/db/data
cp -prvd database/postgresql/data.sql $out/share/zabbix/db/data/data.sql
cp -prvd database/postgresql/images.sql $out/share/zabbix/db/data/images_pgsql.sql
mkdir -p $out/share/zabbix/db/schema
cp -prvd database/postgresql/schema.sql $out/share/zabbix/db/schema/postgresql.sql
'';
meta = {
inherit branch;
description = "An enterprise-class open source distributed monitoring solution";
homepage = https://www.zabbix.com/;
license = "GPL";
maintainers = [ stdenv.lib.maintainers.eelco ];
platforms = stdenv.lib.platforms.linux;
};
};
agent = stdenv.mkDerivation {
name = "zabbix-agent-${version}";
inherit src preConfigure;
configureFlags = [ "--enable-agent" ];
meta = with stdenv.lib; {
inherit branch;
description = "An enterprise-class open source distributed monitoring solution (client-side agent)";
homepage = https://www.zabbix.com/;
license = licenses.gpl2;
maintainers = [ maintainers.eelco ];
platforms = platforms.linux;
};
};
}
+35 -34
View File
@@ -1,23 +1,13 @@
{ stdenv, fetchurl, pkgconfig, postgresql, curl, openssl, zlib }:
{ stdenv, fetchurl, pkgconfig, curl, openssl, zlib, pcre, libevent, mysql, libiconv, libxml2 }:
let
version = "1.8.22";
version = "4.0.9";
src = fetchurl {
url = "mirror://sourceforge/zabbix/zabbix-${version}.tar.gz";
sha256 = "0cjj3c4j4b9sl3hgh1fck330z9q0gz2k68g227y0paal6k6f54g7";
url = "https://netix.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/${version}/zabbix-${version}.tar.gz";
sha256 = "aa0bc9b5e5ca8e1b49b7551e2c5d86e0342c8630cba3a0b0e0e5d9c846e784d1";
};
preConfigure =
''
substituteInPlace ./configure \
--replace " -static" "" \
${stdenv.lib.optionalString (stdenv.cc.libc != null) ''
--replace /usr/include/iconv.h ${stdenv.lib.getDev stdenv.cc.libc}/include/iconv.h
''}
'';
in
{
@@ -25,51 +15,62 @@ in
server = stdenv.mkDerivation {
name = "zabbix-${version}";
inherit src preConfigure;
inherit src;
NIX_CFLAGS_COMPILE = "-L${mysql.connector-c}/lib/mysql -I${mysql.connector-c}/include/mysql";
configureFlags = [
"--enable-agent"
"--enable-server"
"--with-pgsql"
"--with-mysql"
"--with-libcurl"
"--with-libxml2"
"--with-zlib"
"--with-libpcre=${pcre.dev}"
"--with-libevent=${libevent.dev}"
"--with-iconv=${libiconv}"
"--with-openssl=${openssl.dev}"
];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ postgresql curl openssl zlib ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ mysql curl openssl zlib pcre libxml2 libevent ] ;
postInstall =
''
mkdir -p $out/share/zabbix
cp -prvd frontends/php $out/share/zabbix/php
mkdir -p $out/share/zabbix/db/data
cp -prvd create/data/*.sql $out/share/zabbix/db/data
cp -prvd database/mysql/data.sql $out/share/zabbix/db/data/data.sql
cp -prvd database/mysql/images.sql $out/share/zabbix/db/data/images.sql
mkdir -p $out/share/zabbix/db/schema
cp -prvd create/schema/*.sql $out/share/zabbix/db/schema
cp -prvd database/mysql/schema.sql $out/share/zabbix/db/schema/mysql.sql
'';
meta = {
description = "An enterprise-class open source distributed monitoring solution";
homepage = https://www.zabbix.com/;
license = "GPL";
maintainers = [ stdenv.lib.maintainers.eelco ];
platforms = stdenv.lib.platforms.linux;
meta = with stdenv.lib; {
description = "An enterprise-class open source distributed monitoring solution (server)";
homepage = http://www.zabbix.com/;
license = licenses.gpl2;
maintainers = [ maintainers.psyanticy ];
platforms = platforms.linux;
};
};
agent = stdenv.mkDerivation {
name = "zabbix-agent-${version}";
inherit src preConfigure;
inherit src;
configureFlags = [ "--enable-agent" ];
configureFlags = [
"--enable-agent"
"--with-libpcre=${pcre.dev}"
"--with-iconv=${libiconv}"
"--with-openssl=${openssl.dev}"
];
buildInputs = [ pcre libiconv openssl ];
meta = with stdenv.lib; {
description = "An enterprise-class open source distributed monitoring solution (client-side agent)";
homepage = https://www.zabbix.com/;
homepage = http://www.zabbix.com/;
license = licenses.gpl2;
maintainers = [ maintainers.eelco ];
maintainers = [ maintainers.psyanticy ];
platforms = platforms.linux;
};
};
}
}