net-analyzer/zabbix: bump to 6.2.9

Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
This commit is contained in:
Miroslav Šulc
2023-03-28 08:09:25 +02:00
parent 3b07c647ae
commit b9825d99d5
2 changed files with 399 additions and 0 deletions

View File

@@ -19,5 +19,7 @@ DIST zabbix-6.2.7-go-deps.tar.xz 17973952 BLAKE2B f7e155040a60ac48236084b404d469
DIST zabbix-6.2.7.tar.gz 41462274 BLAKE2B 52d82c1eb00f003f53758840af4621b15dcc0c4dbb09f051fa323a53fada303dc5123d3fc99238688e73eb9506a54ec88890d48bd7f21ecfccd5f8b0dd02e102 SHA512 5cafae600d7a83729ac2d28c1cace2a6fb0ac1bdca06ac89e7fd272f1227d2d19e3aa3ccfaefb00229a61f55c608c4d97a5595724c600d8a46950a92c6e20fd0
DIST zabbix-6.2.8-go-deps.tar.xz 17973508 BLAKE2B b0aa8bd692a6572d65daeb41ab36daaa6af6fc4c64692e9617dbd90bd0a14ba5031253bd7d326474dfb5b6a730785fba1ef8f1acd783b028de1d725ff2c657b7 SHA512 631e2d9d9f9f9b5504f8ba580b46fcf32dca1c5eb4308d2beff1a836f2b392924b481690c78fe43ff5332739746ddb75e2db89f9b1195f4f7390b01c1df8b942
DIST zabbix-6.2.8.tar.gz 41784711 BLAKE2B eb5ebe5647a115da138336315b7af81fa39feb4428c609f604a6d13821226db65443faa49e3dbf3c2668ae917b37df9e7946ed79deb4e79f9a91f00fc18cc90b SHA512 0d77fd07128d3a20959385b458fb58408b0e1fd9673c4156286ef2dee6772d217ea285108470458fc6388510e897fb32cf7b046d2e28dc9d2e17ecb484cf3dde
DIST zabbix-6.2.9-go-deps.tar.xz 17974816 BLAKE2B a942d2ee65aaee0286d335951f8641e7f03db09c76ec5a2c421a5967773c1432280f61690630922d3eb55b9a492ac3cc37fa68b2ae765aec111f47f5f53c654c SHA512 7e025baedcb23a8139873429cb7fa8aa1dd0d8302f0426d9d55ae7b67fee120e3dbc5465d1851fab4c7f84471afb630f56bd90f5d6781a3fe5337c87cf2c0ae2
DIST zabbix-6.2.9.tar.gz 41776052 BLAKE2B 59f103883e982296cb7b400db81c02e602b5cf39c9ed10670d0c8017c77331e2a378d1a0f716671d1a9a0670a5800fde2f9b6663eaae85fce9a1c0a91a3487d9 SHA512 a2712bc194adfc707831f32360984332591fe0b9e2f72a92f96c2d4994b1539d27ca53963a98b68c7f94cf13c1afc0438d9bbc7db733773fdb05d507873f09a9
DIST zabbix-6.4.0-go-deps.tar.xz 21481908 BLAKE2B 83280695c1f47c9d5c794e8da0e4140ff2c432aa2d2ff14e755f855a621472c81d2dbd5dfad7fd0d735d784f834e0a2c220acb35cb5c3dddeba22494a5a0d674 SHA512 f07faa620d885a3fb81ec1e273de44831f6e95295c309997cc650958b870a9d458289e3dfaf9cea97f1e8067a9b624d2e9a5125394ac3a3117c0875f9f76f8ea
DIST zabbix-6.4.0.tar.gz 42787621 BLAKE2B defb3819e5320488f5f35d6fbc52877a30313e9f745447559eea40b74d786a55d4a3971b1ff6072eedf805296c9b5bfe98fa3395affb50e2ba5be439091212d6 SHA512 e572c6de1a7e2f1cf5ea4a56886aabe0915d41c0f8fb6e6812dba6f7766deebe8cd743dbc8a80839fc49a794b799b93cd30dfa0741cf6fa7e1652058211f97bb

View File

@@ -0,0 +1,397 @@
# Copyright 1999-2023 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 zabbix-${PV}-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 )
"
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 server snmp sqlite ssh static"
REQUIRED_USE="|| ( agent agent2 frontend proxy server )
?? ( gnutls openssl )
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]
)
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] )
oracle? ( dev-lang/php[oci8-instant-client] )
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"
)
S=${WORKDIR}/${MY_P}
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_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.2.9.jar \
src/zabbix_java/lib/logback-console.xml \
src/zabbix_java/lib/logback-core-1.2.9.jar \
src/zabbix_java/lib/logback.xml \
src/zabbix_java/lib/android-json-4.3_r3.1.jar \
src/zabbix_java/lib/slf4j-api-1.7.32.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 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
if use server || use proxy ; then
# check for fping
fping_perms=$(stat -c %a /usr/sbin/fping 2>/dev/null)
case "${fping_perms}" in
4[157][157][157])
;;
*)
ewarn
ewarn "If you want to use the checks 'icmpping' and 'icmppingsec',"
ewarn "you have to make /usr/sbin/fping setuid root and executable"
ewarn "by everyone. Run the following command to fix it:"
ewarn
ewarn " chmod u=rwsx,g=rx,o=rx /usr/sbin/fping"
ewarn
ewarn "Please be aware that this might impose a security risk,"
ewarn "depending on the code quality of fping."
ewarn
;;
esac
fi
}
pkg_prerm() {
(use frontend || use server) && webapp_pkg_prerm
}