net-analyzer/zabbix: dropped obsolete

Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
This commit is contained in:
Miroslav Šulc
2025-04-09 19:52:10 +02:00
parent c5a954f6cd
commit bf300ddee4
4 changed files with 0 additions and 1137 deletions

View File

@@ -1,19 +1,13 @@
DIST zabbix-5.0.46-go-deps.tar.xz 27929764 BLAKE2B a957898e48dcd8826fef81077ae85ed4613b291062b63965746e0c2461c96cc199847794b471c6c231fe49c24fd9f7e40cc12a802b1f6a0fb0ee2c11eca39ab8 SHA512 e4d54d7d0d9c900460b5fd3149f9ee392f66befc49cd301f0864c7df618e8408df80692ddc03e522f9f1a47939943fa1d0d49b59887a042e83d9f3933f9dc676
DIST zabbix-5.0.46.tar.gz 22125542 BLAKE2B fe9597767660b1dadd739375e2399f3c228f7a839b9e1eaed518cec4381e075268fe985cfee9d9bbbbe1356e0fc92a2bc3f961ec03be4e713fc3744661ebb502 SHA512 19c155cc959839b036a93edd59aa6c0e277fa0247774a479e5d4c31a5a005fe1ba036177f026d3a5f6733c063edd9ecb46ec73736c8f3047b205d18d363a002e
DIST zabbix-6.0.38-go-deps.tar.xz 31357300 BLAKE2B e80dcfebb684ad36b1867e19f9bd228e3362a3236a32627503898b5d2238afc851dc41c0074559dec4d101e237e9b6aa3bd59d03149760d2f7273b6cf70e6196 SHA512 7d290b173e679390b1f239eb5688686be5d347fbb9cc4aefecc13d2f15ba4a02d629b3d20dc00026ec2a91be610eb503b3e53deffd7fcfe7adab4bc238316c3f
DIST zabbix-6.0.38.tar.gz 40754933 BLAKE2B 071f2c355d6c9703260592c1dd9cfc125edbb01dfb2e3a39e512d579ec217877f682c460791dfd3957b9fa9e212e24b91330722b0afcd5c540cb6bfdf9b12c6b SHA512 c013c6cf7e10259b9ea500495546522cee7aeb8df63f40efa6cf2bbce3fa4bf3594a8cf83852f04dbf0a53d573a990fc2df87a0010d4c63f7054616e5158d5f4
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.4.21-go-deps.tar.xz 34149168 BLAKE2B 4951c347027f1b251befa0f5119547192c769cee56194789732cdaf30de8ec6325d4f1e5ad914008b14b461e2fce585925fcf8c217ac2f23c4233de472e19de0 SHA512 cf7aab100c64a954dbbd4b733abdbe52051e75546867a5d5f5d623b1f34d39c87477f703622a849f85e113dd9c87ecb794cddfb23772ef3d7c3d7b223f7386e1
DIST zabbix-6.4.21.tar.gz 47299504 BLAKE2B 8aeb319c2603740f5f73c799fae1a88d2fed31733d1be3155de39130e18f42767885cc0f6a67c1432694abb92eb7940801f4e4475dcab04630cd471a60a56b3b SHA512 2be0cc96faeb50fd357ed4a9d0474d9ff60fe9804087215640addd3cd4ddb1d39c1320801b3c624388bd7ecc5b260e5b78f15d75d5b083c648d6dce95df1545e
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.8-go-deps.tar.xz 34174372 BLAKE2B f034f8b46e5cbe860a99679a5a6dd4c66697e73a9cb47531da069ad1e0c524d8ecb828c4a38a098ef741454e46046e0585950a40d457d6e041527de52fb46333 SHA512 ba9c541ad0b7809d2e1cb78a0cd71967dee5f40b8d27515ef69d02e1092b12457b378c8eb8c0e3d9e0a02091d2eaf0d80868bd0a2c606c2b04ee5ef15764d683
DIST zabbix-7.0.8.tar.gz 44231377 BLAKE2B 5f36ac44e9b64717a7aac9409c6b3a7c4a2610fdc93a368c5c64519963b50fd1b15cfee5a653b293ec0c042522c0a9c6c164772727339b3d606a71438fe3bb41 SHA512 648030e2393fe52c1b7050134bdc73023e54371206ddba3a7cac9d97ccd8869706ddbd00d770e57a92b109446141663803d2dc6959295927780155721eae6a01
DIST zabbix-7.0.9-go-deps.tar.xz 34467496 BLAKE2B 4ccd08f4e2a6a2ecfc8667d016c5dc888b8b23641dd5524d0df9492890d964f2bfa52f242e8d0cae5e6697ef16213d74c02d958f009a2a7a9edd724a45c71e65 SHA512 9180a71aaba413257b862d8d86a05ef8af1a1a8036a84e4dc3c8fec5bcfa8719480f77031c6a18fce0a86810bc05c44a5b86927ec55485a1639295bca8efa8b8
DIST zabbix-7.0.9.tar.gz 44626987 BLAKE2B 0044ec99ee6abbdc8f6b397271437ba79477641673e02dee65c13a34f8018012d2d31e01284b0dc5b5a5f395b70b8ac565de79670c4d2751980426414fd733a9 SHA512 7ff18b69b93fa6d06e1ee8494084b4054f059dfd16c2af776f9347c6e14ad16ce61e328e8eb0ca253059cb98eb794629aafff62be635a46bc61015b16e8815d3
DIST zabbix-7.2.2-go-deps.tar.xz 34162248 BLAKE2B cb5c40bb62af88bf642f6189d349a6907194c9cbe1c832e543b6b32ebbf3e937c2634932bd77a3872a8d09a6ca008fc1afd0fee3dffdcfa9197851f2fb7a98e4 SHA512 78a04c81a792e8d7476be849ca4172a0e06736309cbf33d86710b5054642ce3b7878d59d8fb187273b0f7b8305ee5fb660a5e0fe192cbdf102fdef651d77e3ce
DIST zabbix-7.2.2.tar.gz 40372426 BLAKE2B 3cff418340428aa1de6cdbe00e5eef34068ea43eb5f6935c7e8d72bee6a484aa0b07806cd3eaaf1e09365f11a98673b07042d394109ec471055c7fdbfbf40df1 SHA512 98e4a21c4235dee36e050cfc1506cbef5cd5c9409ee6bb3cac663346826a80dd2c59c6f5e6cfaeb770975785b19689d4775b0eee407093a12ed6f1169621aa1f
DIST zabbix-7.2.3-go-deps.tar.xz 34185696 BLAKE2B 4269b10f175eb0b78d16cddd430b86110ee4204a2de7b16fd85e62cef95f5cf451c33ef84cf0f3b96b48c8e78103a3f5343a25cca22c6190ff8918f2c9644bf5 SHA512 e495b4085b9cc56becbec7db491cbeb0f7b877bba8c9c78110f7d5e436b517258979ff25b85ea1b89ebdef47726222b3b68205ad5eed328284c110f2c0ae2e7d
DIST zabbix-7.2.3.tar.gz 40748423 BLAKE2B 2ef493820041d6fd776e92149ae1492208041a1de979697792d7d165365f55a3609312d32f728e6fd404d60b7293ebc032e2e1338a6fce55d8836b0407e49f5c SHA512 24cea4cd164f89b9384b01b3f58ccf1b9365c8ed04f9bafa0cc7400c12af08b3087eeeececce313c0dc082420f109c207df3d868eecfb6d8809a1f15b8d1e6ff
DIST zabbix-7.2.4-go-deps.tar.xz 34209144 BLAKE2B 541741de6085fb56661470376f8aea5300577e605d47b96e6a0b58699e5e9f0da9e60df0ceff7ec230f2d7890340d6ba11ee4444b7d8f1aa5247397665b8d6e8 SHA512 72d028333130fde090317e68f47a5ffb0802501254eefb5e836fd0ce121d0b065dcaeb49a8c3563b6dfb31758bbe42d0690faf64517af8bfb59c8040f0de3e72

View File

@@ -1,389 +0,0 @@
# 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
}

View File

@@ -1,371 +0,0 @@
# 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 autotools 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="AGPL-3"
SLOT="0/$(ver_cut 1-2)"
WEBAPP_MANUAL_SLOT="yes"
KEYWORDS="amd64 arm64 ~x86"
IUSE="agent +agent2 curl frontend gnutls ipv6 java ldap libxml2 mysql odbc openipmi +openssl +postgres proxy selinux server snmp sqlite ssh static"
REQUIRED_USE="|| ( agent agent2 frontend proxy server )
?? ( gnutls openssl )
agent2? ( !gnutls )
proxy? ( ^^ ( mysql postgres sqlite ) )
server? ( ^^ ( mysql postgres ) !sqlite )
static? ( !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(-)] )
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.4.0-configure-sscanf.patch"
)
ZABBIXJAVA_BASE="opt/zabbix_java"
pkg_setup() {
if use frontend; then
webapp_pkg_setup
fi
java-pkg-opt-2_pkg_setup
}
src_prepare() {
default
# Since we patch configure.ac with e.g., ${PN}-6.4.0-configure-sscanf.patch".
eautoreconf
}
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 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
}
pkg_prerm() {
(use frontend || use server) && webapp_pkg_prerm
}

View File

@@ -1,371 +0,0 @@
# 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 autotools 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="AGPL-3"
SLOT="0/$(ver_cut 1-2)"
WEBAPP_MANUAL_SLOT="yes"
KEYWORDS="amd64 arm64 ~x86"
IUSE="agent +agent2 curl frontend gnutls ipv6 java ldap libxml2 mysql odbc openipmi +openssl +postgres proxy selinux server snmp sqlite ssh static"
REQUIRED_USE="|| ( agent agent2 frontend proxy server )
?? ( gnutls openssl )
agent2? ( !gnutls )
proxy? ( ^^ ( mysql postgres sqlite ) )
server? ( ^^ ( mysql postgres ) !sqlite )
static? ( !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(-)] )
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.4.0-configure-sscanf.patch"
)
ZABBIXJAVA_BASE="opt/zabbix_java"
pkg_setup() {
if use frontend; then
webapp_pkg_setup
fi
java-pkg-opt-2_pkg_setup
}
src_prepare() {
default
# Since we patch configure.ac with e.g., ${PN}-6.4.0-configure-sscanf.patch".
eautoreconf
}
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 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
}
pkg_prerm() {
(use frontend || use server) && webapp_pkg_prerm
}