updated zabbix to 6.2.3
This commit is contained in:
parent
00375c4367
commit
1762148744
3 changed files with 90 additions and 2 deletions
|
|
@ -1,9 +1,14 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, config, ... }:
|
||||||
|
let
|
||||||
|
version = "latest";
|
||||||
|
in
|
||||||
{
|
{
|
||||||
|
|
||||||
services.zabbixAgent = {
|
services.zabbixAgent = {
|
||||||
enable = true;
|
enable = true;
|
||||||
server = "zabbix-server";
|
server = "zabbix-server";
|
||||||
package = pkgs.zabbix.agent2;
|
#package = pkgs.zabbix.agent2;
|
||||||
|
package = (pkgs.callPackages ../packages/zabbix/agent2.nix {}).${version};
|
||||||
settings = {
|
settings = {
|
||||||
UserParameter = [
|
UserParameter = [
|
||||||
"systemd.exitstatus[*],systemctl show --value -p ExecMainStatus '$1'"
|
"systemd.exitstatus[*],systemctl show --value -p ExecMainStatus '$1'"
|
||||||
|
|
|
||||||
67
packages/zabbix/agent2.nix
Normal file
67
packages/zabbix/agent2.nix
Normal file
|
|
@ -0,0 +1,67 @@
|
||||||
|
{ lib, buildGoModule, fetchurl, autoreconfHook, pkg-config, libiconv, openssl, pcre, zlib }:
|
||||||
|
|
||||||
|
import ./versions.nix ({ version, sha256 }:
|
||||||
|
buildGoModule {
|
||||||
|
pname = "zabbix-agent2";
|
||||||
|
inherit version;
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cdn.zabbix.com/zabbix/sources/stable/${lib.versions.majorMinor version}/zabbix-${version}.tar.gz";
|
||||||
|
inherit sha256;
|
||||||
|
};
|
||||||
|
|
||||||
|
modRoot = "src/go";
|
||||||
|
|
||||||
|
#vendorSha256 = "1417qi061xc4m55z0vz420fr7qpi24kw5yj9wq7iic92smakgkjn";
|
||||||
|
vendorSha256 = "sha256-W95Z9pIhd5MQJAGn94kiVbQVFkmvjGPWfMx4JyJ2/EU=";
|
||||||
|
|
||||||
|
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
||||||
|
buildInputs = [ libiconv openssl pcre zlib ];
|
||||||
|
|
||||||
|
inherit (buildGoModule.go) GOOS GOARCH;
|
||||||
|
|
||||||
|
# need to provide GO* env variables & patch for reproducibility
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace src/go/Makefile.am \
|
||||||
|
--replace '`go env GOOS`' "$GOOS" \
|
||||||
|
--replace '`go env GOARCH`' "$GOARCH" \
|
||||||
|
--replace '`date +%H:%M:%S`' "00:00:00" \
|
||||||
|
--replace '`date +"%b %_d %Y"`' "Jan 1 1970"
|
||||||
|
'';
|
||||||
|
|
||||||
|
# manually configure the c dependencies
|
||||||
|
preConfigure = ''
|
||||||
|
./configure \
|
||||||
|
--prefix=${placeholder "out"} \
|
||||||
|
--enable-agent2 \
|
||||||
|
--enable-ipv6 \
|
||||||
|
--with-iconv \
|
||||||
|
--with-libpcre \
|
||||||
|
--with-openssl=${openssl.dev}
|
||||||
|
'';
|
||||||
|
|
||||||
|
# zabbix build process is complex to get right in nix...
|
||||||
|
# use automake to build the go project ensuring proper access to the go vendor directory
|
||||||
|
buildPhase = ''
|
||||||
|
cd ../..
|
||||||
|
make
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/sbin
|
||||||
|
|
||||||
|
install -Dm0644 src/go/conf/zabbix_agent2.conf $out/etc/zabbix_agent2.conf
|
||||||
|
install -Dm0755 src/go/bin/zabbix_agent2 $out/bin/zabbix_agent2
|
||||||
|
|
||||||
|
# create a symlink which is compatible with the zabbixAgent module
|
||||||
|
ln -s $out/bin/zabbix_agent2 $out/sbin/zabbix_agentd
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "An enterprise-class open source distributed monitoring solution (client-side agent)";
|
||||||
|
homepage = "https://www.zabbix.com/";
|
||||||
|
license = licenses.gpl2Plus;
|
||||||
|
maintainers = [ maintainers.aanderse ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
})
|
||||||
16
packages/zabbix/versions.nix
Normal file
16
packages/zabbix/versions.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
generic: {
|
||||||
|
latest = generic {
|
||||||
|
version = "6.2.3";
|
||||||
|
sha256 = "sha256-K+flf7M6Vf7nFIBZjjF/+mqO5aOWOafhtCsupochB7U=";
|
||||||
|
};
|
||||||
|
|
||||||
|
v50 = generic {
|
||||||
|
version = "5.0.19";
|
||||||
|
sha256 = "sha256-esa7DczdaWiG8Ru9py8HlOhvhkjV8IQjMwuiJ6F5c6E=";
|
||||||
|
};
|
||||||
|
|
||||||
|
v40 = generic {
|
||||||
|
version = "4.0.37";
|
||||||
|
sha256 = "sha256-Wuexl8I2zA63jyTRDe8bMSP++imwSOxc4LEdUnH8jps=";
|
||||||
|
};
|
||||||
|
}
|
||||||
Loading…
Add table
Reference in a new issue