net-analyzer/zabbix: bump to 6.0.40

Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
This commit is contained in:
Miroslav Šulc 2025-05-11 21:18:23 +02:00
parent b28ab1cec6
commit e8f82189d0
No known key found for this signature in database
GPG Key ID: 65D0F770B26B469C
2 changed files with 391 additions and 0 deletions

View File

@ -2,6 +2,8 @@ DIST zabbix-5.0.46-go-deps.tar.xz 27929764 BLAKE2B a957898e48dcd8826fef81077ae85
DIST zabbix-5.0.46.tar.gz 22125542 BLAKE2B fe9597767660b1dadd739375e2399f3c228f7a839b9e1eaed518cec4381e075268fe985cfee9d9bbbbe1356e0fc92a2bc3f961ec03be4e713fc3744661ebb502 SHA512 19c155cc959839b036a93edd59aa6c0e277fa0247774a479e5d4c31a5a005fe1ba036177f026d3a5f6733c063edd9ecb46ec73736c8f3047b205d18d363a002e
DIST zabbix-6.0.39-go-deps.tar.xz 31696792 BLAKE2B c8aa135f04bed5a4167dd07e06a6b458eca66839d4fcfab024811c1312b583509f7259612c03b1745eefb65cd7ee7e9405af510056c1ca96efbef98548ea623d SHA512 39fb3fed09138deb84d25cf17eecf5b0826526ef4080350060388e67b0aed7401d4a72dad020af4117d4bfa5e28f91549701b74d5a0cd94c7659a81f4d5d7167
DIST zabbix-6.0.39.tar.gz 41030406 BLAKE2B 375313d121e1c00c04d42a04693d39c900fd005caa67d3e41dc8b93486d8f6d271473c7d340444dba9b0a80c94b9f45f94e5506fe8d0af2f1ac8956f1f750a5b SHA512 046494cd24880d83c7a174482f1c1a29b5bf0cd6b39d1a0909ca628faf9d2a134a7fed728c8776dce877d4dcaf474ff20683ce95e8884b830d99b32e2962b7c1
DIST zabbix-6.0.40-go-deps.tar.xz 31398540 BLAKE2B 48f9a15c6c3260d2b3fc98ff0a469ca3a283067a92b26547c34712d8d4abd322b9ba91e61485e1994a250d080036eedd9fc4cff6de7bb01aef8a0e775daf76f0 SHA512 e9017e75db00ecc87e100d8dbc7dcb26879790a61f25f7a83f7ff13b2fa5bb3c9884674d730305103be070e2bb22b3bdc3df6a4b98bcd94912cc3a1f9f1ec4dc
DIST zabbix-6.0.40.tar.gz 41181725 BLAKE2B 2aa83987305beb6a76339389eafd1fb54ba33127bc2341aff082e890382ed83d89d04accd26bdc86fddc9c42ed72c642ac6bbb286656550665efdb3c377aab11 SHA512 b15517b525a48766d6654676807b75fdb697563693955f0d2b59642a46496914320afc97487c40771c9cdaf23bc0e85b1163942fc0ef9bc1f487ec5d77c8f103
DIST zabbix-7.0.10-go-deps.tar.xz 34217436 BLAKE2B 53cbaba055ad691e1fc3611e07be00a4399585bacefcc3cc98abd5091137df8419b3dd7b1f59523eba7fcbe00ed3df8fd59b5ddd37a4ed8df574e122b496c25b SHA512 663d7d81587dd6a5a1ad0ebeb571c96416fe443e3d54ca645f8708d09b9cbba0dc82580065db6a3a98e2530b04494c3a175949f43af8fd0ec39bf63b538be4b9
DIST zabbix-7.0.10.tar.gz 45000043 BLAKE2B efba2b31163cd1e4edb3a2fc22ac908a0c64e75843ce8f9d971b1c2c41c4cc10b842d13ae0b1dd478e4b590e1b09f8ee3aa7782b555e44cbd9423975954d546b SHA512 4f4b69a9ad5da85c9634cb0123bc04fe58c10a0584a41afa977ffc788c0040c9dd16b0643ce3cc68d899be897a2298c4753b6589e6eae9fea108deab01eca51e
DIST zabbix-7.0.11-go-deps.tar.xz 34551252 BLAKE2B 6c17dc3e8a95ba418386addaa1c7261604fd2e5c42c207721f0877a8ffc40df6860cb38531dcc01bf544b56de5ab5446a9fb8c51df6dca2d958c3d5a3be13710 SHA512 4ed0ffc9f1eda612b8a46d910970bd18bccbff790ded1e62f47a16667e0404643090c51ee615d9bbb9fa0e37e4fb7d0a69f42730a3c2be51c2a7876f87573230

View File

@ -0,0 +1,389 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# To create the go modules tarball:
# cd src/go
# GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw
# tar -acf $(pwd | grep -Eo 'zabbix-[0-9.]+')-go-deps.tar.xz go-mod
EAPI=8
GO_OPTIONAL="yes"
# needed to make webapp-config dep optional
WEBAPP_OPTIONAL="yes"
inherit webapp java-pkg-opt-2 systemd tmpfiles toolchain-funcs go-module user-info
DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers"
HOMEPAGE="https://www.zabbix.com/"
MY_P=${P/_/}
MY_PV=${PV/_/}
SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/$(ver_cut 1-2)/${P}.tar.gz
agent2? ( https://dev.gentoo.org/~fordfrog/distfiles/${P}-go-deps.tar.xz )
"
S=${WORKDIR}/${MY_P}
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
WEBAPP_MANUAL_SLOT="yes"
KEYWORDS="~amd64 ~x86"
IUSE="agent +agent2 curl frontend gnutls ipv6 java ldap libxml2 mysql odbc openipmi +openssl oracle +postgres proxy selinux server snmp sqlite ssh static"
REQUIRED_USE="|| ( agent agent2 frontend proxy server )
?? ( gnutls openssl )
agent2? ( !gnutls )
proxy? ( ^^ ( mysql oracle postgres sqlite ) )
server? ( ^^ ( mysql oracle postgres ) !sqlite )
static? ( !oracle !snmp )"
COMMON_DEPEND="
curl? ( net-misc/curl )
gnutls? ( net-libs/gnutls:0= )
java? ( >=virtual/jdk-1.8:* )
ldap? (
=dev-libs/cyrus-sasl-2*
net-libs/gnutls:=
net-nds/openldap:=
)
libxml2? ( dev-libs/libxml2 )
mysql? ( dev-db/mysql-connector-c:= )
odbc? ( dev-db/unixODBC )
openipmi? ( sys-libs/openipmi )
openssl? ( dev-libs/openssl:=[-bindist(-)] )
oracle? ( dev-db/oracle-instantclient[odbc,sdk] )
postgres? ( dev-db/postgresql:* )
proxy? (
dev-libs/libevent:=
sys-libs/zlib
)
server? (
dev-libs/libevent:=
sys-libs/zlib
)
snmp? ( net-analyzer/net-snmp:= )
sqlite? ( dev-db/sqlite )
ssh? ( net-libs/libssh2 )
"
RDEPEND="${COMMON_DEPEND}
acct-group/zabbix
acct-user/zabbix
java? ( >=virtual/jre-1.8:* )
mysql? ( virtual/mysql )
proxy? (
dev-libs/libpcre2:=
net-analyzer/fping[suid]
)
selinux? ( sec-policy/selinux-zabbix )
server? (
app-admin/webapp-config
dev-libs/libpcre2:=
net-analyzer/fping[suid]
)
frontend? (
app-admin/webapp-config
dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode]
media-libs/gd[png]
virtual/httpd-php:*
mysql? ( dev-lang/php[mysqli] )
odbc? ( dev-lang/php[odbc] )
postgres? ( dev-lang/php[postgres] )
sqlite? ( dev-lang/php[sqlite] )
)
"
DEPEND="${COMMON_DEPEND}
static? (
curl? ( net-misc/curl[static-libs] )
ldap? (
=dev-libs/cyrus-sasl-2*[static-libs]
net-libs/gnutls[static-libs]
net-nds/openldap[static-libs]
)
libxml2? ( dev-libs/libxml2[static-libs] )
mysql? ( dev-db/mysql-connector-c[static-libs] )
odbc? ( dev-db/unixODBC[static-libs] )
postgres? ( dev-db/postgresql:*[static-libs] )
sqlite? ( dev-db/sqlite[static-libs] )
ssh? ( net-libs/libssh2 )
)
"
BDEPEND="
virtual/pkgconfig
agent2? (
>=dev-lang/go-1.12
app-arch/unzip
)
"
# upstream tests fail for agent2
RESTRICT="test"
PATCHES=(
"${FILESDIR}/${PN}-4.0.18-modulepathfix.patch"
"${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch"
"${FILESDIR}/${PN}-6.0.3-system.sw.packages.patch"
)
ZABBIXJAVA_BASE="opt/zabbix_java"
pkg_setup() {
if use oracle; then
if [ -z "${ORACLE_HOME}" ]; then
eerror
eerror "The environment variable ORACLE_HOME must be set"
eerror "and point to the correct location."
eerror "It looks like you don't have Oracle installed."
eerror
die "Environment variable ORACLE_HOME is not set"
fi
fi
if use frontend; then
webapp_pkg_setup
fi
java-pkg-opt-2_pkg_setup
}
src_prepare() {
default
}
src_configure() {
local econf_args=(
--with-libpcre2
"$(use_enable agent)"
"$(use_enable agent2)"
"$(use_enable ipv6)"
"$(use_enable java)"
"$(use_enable proxy)"
"$(use_enable server)"
"$(use_enable static)"
"$(use_with curl libcurl)"
"$(use_with gnutls)"
"$(use_with ldap)"
"$(use_with libxml2)"
"$(use_with mysql)"
"$(use_with odbc unixodbc)"
"$(use_with openipmi openipmi)"
"$(use_with openssl)"
"$(use_with oracle)"
"$(use_with postgres postgresql)"
"$(use_with snmp net-snmp)"
"$(use_with sqlite sqlite3)"
"$(use_with ssh ssh2)"
)
econf ${econf_args[@]}
}
src_compile() {
if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then
emake AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)"
fi
}
src_install() {
local dirs=(
/etc/zabbix
/var/lib/zabbix
/var/lib/zabbix/home
/var/lib/zabbix/scripts
/var/lib/zabbix/alertscripts
/var/lib/zabbix/externalscripts
/var/log/zabbix
)
for dir in "${dirs[@]}"; do
keepdir "${dir}"
done
if use server; then
insinto /etc/zabbix
doins "${S}"/conf/zabbix_server.conf
fperms 0640 /etc/zabbix/zabbix_server.conf
fowners root:zabbix /etc/zabbix/zabbix_server.conf
newinitd "${FILESDIR}"/zabbix-server-r1.init zabbix-server
dosbin src/zabbix_server/zabbix_server
insinto /usr/share/zabbix
doins -r "${S}"/database/
systemd_dounit "${FILESDIR}"/zabbix-server.service
newtmpfiles "${FILESDIR}"/zabbix-server.tmpfiles zabbix-server.conf
fi
if use proxy; then
insinto /etc/zabbix
doins "${S}"/conf/zabbix_proxy.conf
fperms 0640 /etc/zabbix/zabbix_proxy.conf
fowners root:zabbix /etc/zabbix/zabbix_proxy.conf
newinitd "${FILESDIR}"/zabbix-proxy.init zabbix-proxy
dosbin src/zabbix_proxy/zabbix_proxy
insinto /usr/share/zabbix
doins -r "${S}"/database/
systemd_dounit "${FILESDIR}"/zabbix-proxy.service
newtmpfiles "${FILESDIR}"/zabbix-proxy.tmpfiles zabbix-proxy.conf
fi
if use agent; then
insinto /etc/zabbix
doins "${S}"/conf/zabbix_agentd.conf
fperms 0640 /etc/zabbix/zabbix_agentd.conf
fowners root:zabbix /etc/zabbix/zabbix_agentd.conf
newinitd "${FILESDIR}"/zabbix-agentd.init zabbix-agentd
dosbin src/zabbix_agent/zabbix_agentd
dobin \
src/zabbix_sender/zabbix_sender \
src/zabbix_get/zabbix_get
systemd_dounit "${FILESDIR}"/zabbix-agentd.service
newtmpfiles "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.conf
fi
if use agent2; then
insinto /etc/zabbix
doins "${S}"/src/go/conf/zabbix_agent2.conf
fperms 0640 /etc/zabbix/zabbix_agent2.conf
fowners root:zabbix /etc/zabbix/zabbix_agent2.conf
keepdir /etc/zabbix/zabbix_agent2.d/plugins.d
newinitd "${FILESDIR}"/zabbix-agent2.init zabbix-agent2
dosbin src/go/bin/zabbix_agent2
systemd_dounit "${FILESDIR}"/zabbix-agent2.service
newtmpfiles "${FILESDIR}"/zabbix-agent2.tmpfiles zabbix-agent2.conf
fi
fowners root:zabbix /etc/zabbix
fowners zabbix:zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
fperms 0750 \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
dodoc README INSTALL NEWS ChangeLog \
conf/zabbix_agentd.conf \
conf/zabbix_proxy.conf \
conf/zabbix_agentd/userparameter_examples.conf \
conf/zabbix_agentd/userparameter_mysql.conf \
conf/zabbix_server.conf
if use frontend; then
webapp_src_preinst
cp -R ui/* "${D}/${MY_HTDOCSDIR}"
webapp_configfile \
"${MY_HTDOCSDIR}"/include/db.inc.php \
"${MY_HTDOCSDIR}"/include/config.inc.php
webapp_src_install
fi
if use java; then
dodir \
/${ZABBIXJAVA_BASE} \
/${ZABBIXJAVA_BASE}/bin \
/${ZABBIXJAVA_BASE}/lib
keepdir /${ZABBIXJAVA_BASE}
exeinto /${ZABBIXJAVA_BASE}/bin
doexe src/zabbix_java/bin/zabbix-java-gateway-"${MY_PV}".jar
exeinto /${ZABBIXJAVA_BASE}/lib
doexe \
src/zabbix_java/lib/logback-classic-1.5.16.jar \
src/zabbix_java/lib/logback-console.xml \
src/zabbix_java/lib/logback-core-1.5.16.jar \
src/zabbix_java/lib/logback.xml \
src/zabbix_java/lib/android-json-4.3_r3.1.jar \
src/zabbix_java/lib/slf4j-api-2.0.16.jar
newinitd "${FILESDIR}"/zabbix-jmx-proxy.init zabbix-jmx-proxy
newconfd "${FILESDIR}"/zabbix-jmx-proxy.conf zabbix-jmx-proxy
fi
}
pkg_postinst() {
if use server || use proxy ; then
elog
elog "You may need to configure your database for Zabbix"
elog "if you have not already done so."
elog
zabbix_homedir=$(egethome zabbix)
if [ -n "${zabbix_homedir}" ] && \
[ "${zabbix_homedir}" != "/var/lib/zabbix/home" ]; then
ewarn
ewarn "The user 'zabbix' should have his homedir changed"
ewarn "to /var/lib/zabbix/home if you want to use"
ewarn "custom alert scripts."
ewarn
ewarn "A real homedir might be needed for configfiles"
ewarn "for custom alert scripts."
ewarn
ewarn "To change the homedir use:"
ewarn " usermod -d /var/lib/zabbix/home zabbix"
ewarn
fi
fi
if use server; then
tmpfiles_process zabbix-server.conf
elog
elog "For distributed monitoring you have to run:"
elog
elog "zabbix_server -n <nodeid>"
elog
elog "This will convert database data for use with Node ID"
elog "and also adds a local node."
elog
fi
if use oracle; then
ewarn
ewarn "Support for Oracle database has been dropped from PHP"
ewarn "so to make the web frontend work, you need to install"
ewarn "PECL extension for Oracle database."
ewarn "For details see https://bugs.gentoo.org/928386"
fi
if use proxy; then
tmpfiles_process zabbix-proxy.conf
fi
if use agent; then
tmpfiles_process zabbix-agentd.conf
fi
if use agent2; then
tmpfiles_process zabbix-agent2.conf
fi
elog "--"
elog
elog "You may need to add these lines to /etc/services:"
elog
elog "zabbix-agent 10050/tcp Zabbix Agent"
elog "zabbix-agent 10050/udp Zabbix Agent"
elog "zabbix-trapper 10051/tcp Zabbix Trapper"
elog "zabbix-trapper 10051/udp Zabbix Trapper"
elog
}
pkg_prerm() {
(use frontend || use server) && webapp_pkg_prerm
}