net-analyzer/zabbix: Bump

Package-Manager: Portage-2.3.19, Repoman-2.3.6
This commit is contained in:
Patrick Lauer
2018-01-14 07:46:50 +00:00
parent 8d7713e9be
commit eb03106f2e
5 changed files with 1333 additions and 0 deletions

View File

@@ -3,14 +3,17 @@ DIST zabbix-2.2.17.tar.gz 15494053 BLAKE2B c55ea5a2641838067308a4b93609c2e5b67e3
DIST zabbix-2.2.18.tar.gz 15495920 BLAKE2B bf3f452f3110841b4718fd5a7118063f7d143e493c89563c489186ffcf7981dd96a02094938a605403a19d668dfd13e42248850d54b0d945e350ac5aa092584a SHA512 3e24827b2739aefa12e3d189b856d836b85a1fa45928343c08620ce1ef16c664a8ad806d051f5cffed10837a326245dd5617034f83cdd00432b81eb05be40491
DIST zabbix-2.2.19.tar.gz 15497840 BLAKE2B d56946296791948531555663e05135a3ad3576263873e83b4afac33e3069524559ef0a29fd435b8dfc11e72b60f27cfc7279caaf4802b8414203a112e3e4b0ba SHA512 f9a35093cd63fe433ae67a01d526e65387455cc0c82b33d4015ad428991289f711857e089c169fc46fad51697e3a07a2b310026789099e6f42fa88f2f573c560
DIST zabbix-2.2.20.tar.gz 15503661 BLAKE2B 1303daf261694abba39e2ce86f532b09ddb422cf69a3db68c7f43055a891b03e0fa72b26890793867146e3f36b0b0b8ce7eb9faa7bcd217c02d9b8767dcce527 SHA512 ca63237c1eece870c2f54a1c35c5165062d0e875e9aa05ce9654657de59e52a131b2ddc1f94dbfb1e2d3f4e6f202e4d6424ba97de06fa008fc15ff859ab8e0c6
DIST zabbix-2.2.21.tar.gz 15489747 BLAKE2B e00fe140977f0ce995497954a15ff647c813c048a706e536a12010a649d3467d6c63343c3c0d11b1900f91f8fcc5bb235f9e4a030362c93ad3c1c31e68699f54 SHA512 29e3cba0663e7160dce5141cc389959571e5e298206baed26209facab206cc4f66611d48d76306a53925a2096db6f0bed1753435ec1be20bd8db53862cb902a4
DIST zabbix-3.0.10.tar.gz 15573988 BLAKE2B 81ab75246bf4a05fa4ee5cf1d6ebdeafe2351fa8f59f979a87c930c06712cd4499f1ae55d8107d0d6ee4b6bb664310901eccea87a3cfb39bb48e8f2c4133c28e SHA512 cb5602a6fdb78f4f5e3b6b0193e707497e8c04a7558da8345e2e9130f3058be670a48d501b36bca87d10a1964188ae81eb6cd83a573499086ce1f2152dfa9936
DIST zabbix-3.0.11.tar.gz 15642949 BLAKE2B e4fea226b551db0e84998d2a1bd3b1c81a799028dda91057257bf2a8ec1351fec2a8565ece8a9db6e502b541dfada65beb1dc7ca08c6307c9c082560b8a163e6 SHA512 880b69677833ed636c866fec731d84540a0269975c767bbcb834ca0bb22b8b881095b80b359e30e965282935650e6533d0e930bb6c21b2f6245d57a0e6e73ec6
DIST zabbix-3.0.12.tar.gz 15647628 BLAKE2B 01a21b0c3779d97428dc355884bd1cd8e0b1ab299aa3ba9d7049db76a8b8ad8b3a87035b8f24b247db4afb205350bb8fae55e3ff9859df6198f427656dfbd283 SHA512 2aea3def2a5a656afde9728c18cc92a201a3d04203f163d3e67c3cb283bb23b94eb3c4d98b1905343080b0740b9670a2efd10f60229f26bb0c9b82c368b3fabd
DIST zabbix-3.0.13.tar.gz 15648338 BLAKE2B cd0a6530d74c0d3b49d034643779ba9d23e85243c0d226d5792d06cc698b85cbc87643035454952be7496ef5a524101106e177851c88912f6519f0f76ddc264d SHA512 824fba8d4a31919af358d6085e366a4d758c7fd12486a40de79595dff628467d1a46fa84d0af287ab06ad22da7dc855c5cce1a44b5033b0981cac0ca02686acc
DIST zabbix-3.0.14.tar.gz 15643983 BLAKE2B 129bcde3318c049932ad24d6b20fcd3cdf3a0a0f246aadb81663265eb31550fd5966745486e4e863236801d41e6cefec3bdc82eca024be94bc2437f44b2d81a1 SHA512 b024de610b86bd45fc0be655e8275daf53b1de813e13a1e78cfad149b1191a7f118862646f5ded43938bc489ff0b0f325de36d4b2c076ce6fe768ee4234eb944
DIST zabbix-3.0.6.tar.gz 15513412 BLAKE2B f478c608f5196c98bf7e646d5125047fa6a89ae3339f5e937141d1f9e105ebbb294172e2bec971e046b7c7e5c05dba640655314a1cc8631e83d1b661fd137c2b SHA512 ccffc58f3555bea62011bad272e8a3085d1723d8cb200e00a3e657696104c3fd055b8b963a26d9c726ef45a5381c7f9625498e99b756a3dd97b147d8b7884d1f
DIST zabbix-3.0.8.tar.gz 15514547 BLAKE2B 72c57038e762662605ff850666d6f7bcb417b9ec696fd623cb8d9918171a29d2bcc76d1603808580d9fa94394c4a25e90535eabc8f2e86265a819baaad48dd3c SHA512 9f5fec7f3888f34ad9659a5d34d5fc089efc86a5fcf78f8cabf6704fbf95fd52a8caaab6f4291cb76d15cc2d69c986c95346fbe4fdfdc407c5506f3b8946aa1a
DIST zabbix-3.0.9.tar.gz 15516440 BLAKE2B 4689a1d5ec2fbf5085fceda2bdf2507e46105bcb9fff8e8da9158abd18bf487b56775637837f259e6eda533d4648104c8a856c9b3260f808efae0566e4080d63 SHA512 f34d0fde48e64dfb6bea152ab6c63eb28be66e3647cc781d430b56b13bc91ac9f194ac80d264b2e837f8fceb929e0ebeda0221bf8363eb0a66e53461088a4ef9
DIST zabbix-3.2.10.tar.gz 16089723 BLAKE2B c69b8b00781198b8e4845f94e5a42e3910950954bd240703165be15630788f22e486a2ebbd941902eb92b06b42bc7923869f7b885fcc7248508d9e535ad23170 SHA512 6413247ea0f47f410eadd970599dc4a0bfef4202b6f88bcb1636d1fad270a2d5545a90870052af5445a5219dab3b58867c23f3afaddb5d78e200fecbd987e545
DIST zabbix-3.2.11.tar.gz 16099820 BLAKE2B 7038679ecc9ae1b6684d65b3dd0019865e587c82e5a3ffe55610c057f8516ebe34978101065ac31628e6fd54077877c447d64cb1d169e0ad7402e727c7e65d76 SHA512 a14e0af4b183c8deb524c8965700c2988c0c131844f7fbc748aa8d1703b9dad73c2cf6d77663799fbd455adf58fdd1ce8dc5fd6404a9269c1a42160ad0e33e6e
DIST zabbix-3.2.2.tar.gz 15915015 BLAKE2B 1cfac6134da5464a1c7e850a62c9cd012496df449f18303177bcc807f9adb4bb812d063a691e41a9b993363510e954f05f82db52ce2998a83d4d981951e75f7f SHA512 1f6cb6344d24ed91c49fa116d6862cfd78caab9cd3297329369dd2df5cf9c83fda67bc9faa1a59f2b605bfeda73a69a3e29653fca320eda1b67f4d0931bfdb9b
DIST zabbix-3.2.3.tar.gz 15922416 BLAKE2B 2f25b47b85332736eeaf2593b0c3ca674d5f777056e34cb2c51d3205e2ff93c2beb7c7e21352e662791a5d26f98000c027f4d8ff5f1b9a4aabd9cf6aff935ca2 SHA512 5a704282765fa66d1aa53ae546d3a49a35050d6830a25a3a9ad64d73f8aff48b31e8d13f37d147c8d6244bb0f2dab21bceb5d022f1c3ffa726c10edc6e7bd1f6
DIST zabbix-3.2.4.tar.gz 15924840 BLAKE2B 95ceba99a7766aeedb0c9acc988875bcbb48927cd5112c4583c3f67c7d12779cb3354f6564f64ee79973b6fc335f7dd4b05d2e663a9197d9e548000e9a1487e2 SHA512 62e532bcf6a5ab82b1f943e28d46d1e64782758a405680d2c1a54e9c1092a340a50987045acbbad2b57439e3c2640d8a11fe1a29a234764859befa6a7fd779d1
@@ -23,3 +26,4 @@ DIST zabbix-3.4.1.tar.gz 17010519 BLAKE2B 54d2b576905d6b420fcbd8f31b5bd00d8f4c9c
DIST zabbix-3.4.2.tar.gz 17113290 BLAKE2B d0458a035bf3dec7707eebc40752c31a9e85314c69242fa8b2c935310cbb806f9c449f6e78508fe9b9d36a89eab514edcb6b948991ca3f270b6ada016fefb8f7 SHA512 42feff59e1e1dd5d69a66cc857e9076b9a6f1410b5796a719cb660ea97ccd2544fe87f3cfabc27590cc53a321d24a7977daa320be1fdff31653b3650602dd385
DIST zabbix-3.4.3.tar.gz 17130788 BLAKE2B 9f90242a4c86719e5a76e0057aec6f61481ae9fcd635034634251eb6ba317ab1c180dab7a88e33045429828cf392b57fdc5674d116a46f1a959c2652db77c9fd SHA512 338f4c367d906252ad762ffff60652f6f3d8f0027684e1562fbf26a4628002b72671dd6a2a3547c1681277a9cdef544d671b89edac886e96914a0b3850e639a8
DIST zabbix-3.4.4.tar.gz 17132537 BLAKE2B c91a8248edc9d42c8a924fafa9a38903d8eb1c3f9c7f90dd188f615c0ca06859c8bfe902b3099d18fbd23bf19fb68313e71bf9cc20831debf2af523018aadc06 SHA512 2d9724ded1e3388c24ce9defbbe1ccd4804a925175ae76bc352a86332cfde3a692b4f447d6809a0d8394ffe51ad1a2fa3cff4459e850a6e8f7b1596811c441a2
DIST zabbix-3.4.5.tar.gz 17170228 BLAKE2B bd799a3ad25256421bc2a8458019237da17e78d2dd5253485cebbc40df785e550e7cf15fcf8925a225c118e38e9aaad3f7532f909ba3eaff3a175136033ae81a SHA512 e77c8693d687c9f1e3c160f2f41161b5e4ac663f0db69f4bff424da4ba607815ad0148448c6f80a2b9357ad7472016610f4beed173e40c6fcf661874d75c69a4

View File

@@ -0,0 +1,341 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
# needed to make webapp-config dep optional
WEBAPP_OPTIONAL="yes"
inherit flag-o-matic webapp java-pkg-opt-2 user systemd toolchain-funcs
DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers"
HOMEPAGE="http://www.zabbix.com/"
MY_P=${P/_/}
MY_PV=${PV/_/}
SRC_URI="http://prdownloads.sourceforge.net/zabbix/${MY_P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
WEBAPP_MANUAL_SLOT="yes"
KEYWORDS="~amd64 ~x86"
IUSE="+agent java curl frontend ipv6 xmpp ldap libxml2 mysql openipmi oracle postgres proxy server ssh snmp sqlite odbc static"
REQUIRED_USE="|| ( agent frontend proxy server )
proxy? ( ^^ ( mysql oracle postgres sqlite odbc ) )
server? ( ^^ ( mysql oracle postgres sqlite odbc ) )
static? ( !oracle !snmp )"
COMMON_DEPEND="snmp? ( net-analyzer/net-snmp )
ldap? (
net-nds/openldap
=dev-libs/cyrus-sasl-2*
net-libs/gnutls
)
mysql? ( >=virtual/mysql-5.0.3 )
sqlite? ( >=dev-db/sqlite-3.3.5 )
postgres? ( dev-db/postgresql:* )
oracle? ( >=dev-db/oracle-instantclient-basic-10.0.0.0 )
xmpp? ( dev-libs/iksemel )
libxml2? ( dev-libs/libxml2 )
curl? ( net-misc/curl )
openipmi? ( sys-libs/openipmi )
ssh? ( net-libs/libssh2 )
java? ( virtual/jdk:* )
odbc? ( dev-db/unixODBC )"
RDEPEND="${COMMON_DEPEND}
proxy? ( net-analyzer/fping )
server? ( net-analyzer/fping
app-admin/webapp-config )
java? (
>=virtual/jre-1.4
dev-java/slf4j-api
)
frontend? (
>=dev-lang/php-5.3.0[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode]
|| ( dev-lang/php[apache2] dev-lang/php[cgi] dev-lang/php[fpm] )
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] )
media-libs/gd[png]
app-admin/webapp-config )"
DEPEND="${COMMON_DEPEND}
static? (
ldap? (
net-nds/openldap[static-libs]
=dev-libs/cyrus-sasl-2*[static-libs]
net-libs/gnutls[static-libs]
)
mysql? ( >=virtual/mysql-5.0.3[static-libs] )
sqlite? ( >=dev-db/sqlite-3.3.5[static-libs] )
postgres? ( dev-db/postgresql:*[static-libs] )
libxml2? ( dev-libs/libxml2[static-libs] )
curl? ( net-misc/curl[static-libs] )
ssh? ( net-libs/libssh2[static-libs] )
odbc? ( dev-db/unixODBC[static-libs] )
)
virtual/pkgconfig"
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
if has_version 'dev-db/oracle-instantclient-basic'; then
ewarn
ewarn "Please ensure you have a full install of the Oracle client."
ewarn "dev-db/oracle-instantclient* is NOT sufficient."
ewarn
fi
fi
if use frontend; then
webapp_pkg_setup
fi
enewgroup zabbix
enewuser zabbix -1 -1 /var/lib/zabbix/home zabbix
}
java_prepare() {
cd "${S}/src/zabbix_java/lib"
rm -v *.jar || die
java-pkg_jar-from slf4j-api
}
src_prepare() {
default
}
src_configure() {
econf \
$(use_enable server) \
$(use_enable proxy) \
$(use_enable agent) \
$(use_enable ipv6) \
$(use_enable static) \
$(use_enable java) \
$(use_with ldap) \
$(use_with snmp net-snmp) \
$(use_with mysql) \
$(use_with postgres postgresql) \
$(use_with oracle) \
$(use_with sqlite sqlite3) \
$(use_with xmpp jabber) \
$(use_with curl libcurl) \
$(use_with openipmi openipmi) \
$(use_with ssh ssh2) \
$(use_with libxml2) \
$(use_with odbc unixodbc) \
|| die "econf failed"
}
src_compile() {
if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then
emake AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" || die "emake failed"
fi
}
src_install() {
dodir \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
keepdir \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
if use server; then
insinto /etc/zabbix
doins "${FILESDIR}/2.2"/zabbix_server.conf
doinitd "${FILESDIR}/2.2"/init.d/zabbix-server
dosbin src/zabbix_server/zabbix_server
fowners zabbix:zabbix /etc/zabbix/zabbix_server.conf
fperms 0640 /etc/zabbix/zabbix_server.conf
dodir /usr/share/zabbix
/bin/cp -R "${S}/database/" "${D}"/usr/share/zabbix/
systemd_dounit "${FILESDIR}/zabbix-server.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-server.tmpfiles" zabbix-server.conf
fi
if use proxy; then
doinitd \
"${FILESDIR}/2.2"/init.d/zabbix-proxy
dosbin \
src/zabbix_proxy/zabbix_proxy
insinto /etc/zabbix
doins \
"${FILESDIR}/2.2"/zabbix_proxy.conf
dodir /usr/share/zabbix
/bin/cp -R "${S}/database/" "${D}"/usr/share/zabbix/
systemd_dounit "${FILESDIR}/zabbix-proxy.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-proxy.tmpfiles" zabbix-proxy.conf
fi
if use agent; then
insinto /etc/zabbix
doins \
"${FILESDIR}/2.2"/zabbix_agent.conf \
"${FILESDIR}/2.2"/zabbix_agentd.conf
doinitd "${FILESDIR}/2.2"/init.d/zabbix-agentd
dosbin \
src/zabbix_agent/zabbix_agent \
src/zabbix_agent/zabbix_agentd
dobin \
src/zabbix_sender/zabbix_sender \
src/zabbix_get/zabbix_get
fowners zabbix:zabbix \
/etc/zabbix/zabbix_agent.conf \
/etc/zabbix/zabbix_agentd.conf
fperms 0640 \
/etc/zabbix/zabbix_agent.conf \
/etc/zabbix/zabbix_agentd.conf
systemd_dounit "${FILESDIR}/zabbix-agentd.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-agentd.tmpfiles" zabbix-agentd.conf
fi
fowners zabbix:zabbix \
/etc/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_agent.conf \
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 frontends/php/* "${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-0.9.27.jar \
src/zabbix_java/lib/logback-console.xml \
src/zabbix_java/lib/logback-core-0.9.27.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.6.1.jar
exeinto /${ZABBIXJAVA_BASE}/
doexe \
src/zabbix_java/settings.sh \
src/zabbix_java/startup.sh \
src/zabbix_java/shutdown.sh
fowners -R zabbix:zabbix /${ZABBIXJAVA_BASE}
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 (e.g. ~/.sendxmpprc when"
ewarn "using sendxmpp for Jabber alerts)."
ewarn
ewarn "To change the homedir use:"
ewarn " usermod -d /var/lib/zabbix/home zabbix"
ewarn
fi
fi
if use server; then
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
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
}

View File

@@ -0,0 +1,331 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
# needed to make webapp-config dep optional
WEBAPP_OPTIONAL="yes"
inherit flag-o-matic webapp java-pkg-opt-2 user systemd toolchain-funcs
DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers"
HOMEPAGE="http://www.zabbix.com/"
MY_P=${P/_/}
MY_PV=${PV/_/}
SRC_URI="http://prdownloads.sourceforge.net/zabbix/${MY_P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
WEBAPP_MANUAL_SLOT="yes"
KEYWORDS="~amd64 ~x86"
IUSE="+agent java curl frontend ipv6 xmpp ldap libxml2 mysql openipmi oracle postgres proxy server ssh ssl snmp sqlite odbc static"
REQUIRED_USE="|| ( agent frontend proxy server )
proxy? ( ^^ ( mysql oracle postgres sqlite odbc ) )
server? ( ^^ ( mysql oracle postgres sqlite odbc ) )
static? ( !oracle !snmp )"
COMMON_DEPEND="snmp? ( net-analyzer/net-snmp )
ldap? (
net-nds/openldap
=dev-libs/cyrus-sasl-2*
net-libs/gnutls
)
mysql? ( >=virtual/mysql-5.0.3 )
sqlite? ( >=dev-db/sqlite-3.3.5 )
postgres? ( dev-db/postgresql:* )
oracle? ( >=dev-db/oracle-instantclient-basic-10.0.0.0 )
xmpp? ( dev-libs/iksemel )
libxml2? ( dev-libs/libxml2 )
curl? ( net-misc/curl )
openipmi? ( sys-libs/openipmi )
ssh? ( net-libs/libssh2 )
java? ( virtual/jdk:* )
odbc? ( dev-db/unixODBC )
ssl? ( dev-libs/openssl:=[-bindist] )"
RDEPEND="${COMMON_DEPEND}
proxy? ( net-analyzer/fping )
server? ( net-analyzer/fping
app-admin/webapp-config )
java? (
>=virtual/jre-1.4
dev-java/slf4j-api
)
frontend? (
>=dev-lang/php-5.3.0[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode]
|| ( dev-lang/php[apache2] dev-lang/php[cgi] dev-lang/php[fpm] )
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] )
media-libs/gd[png]
app-admin/webapp-config )"
DEPEND="${COMMON_DEPEND}
static? (
ldap? (
net-nds/openldap[static-libs]
=dev-libs/cyrus-sasl-2*[static-libs]
net-libs/gnutls[static-libs]
)
mysql? ( >=virtual/mysql-5.0.3[static-libs] )
sqlite? ( >=dev-db/sqlite-3.3.5[static-libs] )
postgres? ( dev-db/postgresql:*[static-libs] )
libxml2? ( dev-libs/libxml2[static-libs] )
curl? ( net-misc/curl[static-libs] )
ssh? ( net-libs/libssh2[static-libs] )
odbc? ( dev-db/unixODBC[static-libs] )
)
virtual/pkgconfig"
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
if has_version 'dev-db/oracle-instantclient-basic'; then
ewarn
ewarn "Please ensure you have a full install of the Oracle client."
ewarn "dev-db/oracle-instantclient* is NOT sufficient."
ewarn
fi
fi
if use frontend; then
webapp_pkg_setup
fi
enewgroup zabbix
enewuser zabbix -1 -1 /var/lib/zabbix/home zabbix
}
java_prepare() {
cd "${S}/src/zabbix_java/lib"
rm -v *.jar || die
java-pkg_jar-from slf4j-api
}
src_prepare() {
default
}
src_configure() {
econf \
$(use_enable server) \
$(use_enable proxy) \
$(use_enable agent) \
$(use_enable ipv6) \
$(use_enable static) \
$(use_enable java) \
$(use_with ldap) \
$(use_with snmp net-snmp) \
$(use_with mysql) \
$(use_with postgres postgresql) \
$(use_with oracle) \
$(use_with sqlite sqlite3) \
$(use_with xmpp jabber) \
$(use_with curl libcurl) \
$(use_with openipmi openipmi) \
$(use_with ssh ssh2) \
$(use_with libxml2) \
$(use_with odbc unixodbc) \
$(use_with ssl openssl) \
|| die "econf failed"
}
src_compile() {
if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then
emake AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" || die "emake failed"
fi
}
src_install() {
dodir \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
keepdir \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
if use server; then
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_server.conf
doinitd "${FILESDIR}/3.0"/init.d/zabbix-server
dosbin src/zabbix_server/zabbix_server
fowners zabbix:zabbix /etc/zabbix/zabbix_server.conf
fperms 0640 /etc/zabbix/zabbix_server.conf
dodir /usr/share/zabbix
/bin/cp -R "${S}/database/" "${D}"/usr/share/zabbix/
systemd_dounit "${FILESDIR}/zabbix-server.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-server.tmpfiles" zabbix-server.conf
fi
if use proxy; then
doinitd "${FILESDIR}/3.0"/init.d/zabbix-proxy
dosbin src/zabbix_proxy/zabbix_proxy
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_proxy.conf
dodir /usr/share/zabbix
/bin/cp -R "${S}/database/" "${D}"/usr/share/zabbix/
systemd_dounit "${FILESDIR}/zabbix-proxy.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-proxy.tmpfiles" zabbix-proxy.conf
fi
if use agent; then
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_agentd.conf
doinitd "${FILESDIR}/3.0"/init.d/zabbix-agentd
dosbin src/zabbix_agent/zabbix_agentd
dobin \
src/zabbix_sender/zabbix_sender \
src/zabbix_get/zabbix_get
fowners zabbix:zabbix /etc/zabbix/zabbix_agentd.conf
fperms 0640 /etc/zabbix/zabbix_agentd.conf
systemd_dounit "${FILESDIR}/zabbix-agentd.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-agentd.tmpfiles" zabbix-agentd.conf
fi
fowners zabbix:zabbix \
/etc/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 frontends/php/* "${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-0.9.27.jar \
src/zabbix_java/lib/logback-console.xml \
src/zabbix_java/lib/logback-core-0.9.27.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.6.1.jar
exeinto /${ZABBIXJAVA_BASE}/
doexe \
src/zabbix_java/settings.sh \
src/zabbix_java/startup.sh \
src/zabbix_java/shutdown.sh
fowners -R zabbix:zabbix /${ZABBIXJAVA_BASE}
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 (e.g. ~/.sendxmpprc when"
ewarn "using sendxmpp for Jabber alerts)."
ewarn
ewarn "To change the homedir use:"
ewarn " usermod -d /var/lib/zabbix/home zabbix"
ewarn
fi
fi
if use server; then
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
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
}

View File

@@ -0,0 +1,328 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
# needed to make webapp-config dep optional
WEBAPP_OPTIONAL="yes"
inherit flag-o-matic webapp java-pkg-opt-2 user systemd toolchain-funcs
DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers"
HOMEPAGE="http://www.zabbix.com/"
MY_P=${P/_/}
MY_PV=${PV/_/}
SRC_URI="http://prdownloads.sourceforge.net/zabbix/${MY_P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
WEBAPP_MANUAL_SLOT="yes"
KEYWORDS="~amd64 ~x86"
IUSE="+agent java curl frontend ipv6 xmpp ldap libxml2 mysql openipmi oracle postgres proxy server ssh ssl snmp sqlite odbc static"
REQUIRED_USE="|| ( agent frontend proxy server )
proxy? ( ^^ ( mysql oracle postgres sqlite odbc ) )
server? ( ^^ ( mysql oracle postgres sqlite odbc ) )
static? ( !oracle !snmp )"
COMMON_DEPEND="snmp? ( net-analyzer/net-snmp )
ldap? (
net-nds/openldap
=dev-libs/cyrus-sasl-2*
net-libs/gnutls
)
mysql? ( >=virtual/mysql-5.0.3 )
sqlite? ( >=dev-db/sqlite-3.3.5 )
postgres? ( dev-db/postgresql:* )
oracle? ( >=dev-db/oracle-instantclient-basic-10.0.0.0 )
xmpp? ( dev-libs/iksemel )
libxml2? ( dev-libs/libxml2 )
curl? ( net-misc/curl )
openipmi? ( sys-libs/openipmi )
ssh? ( net-libs/libssh2 )
java? ( virtual/jdk:* )
odbc? ( dev-db/unixODBC )
ssl? ( dev-libs/openssl:=[-bindist] )"
RDEPEND="${COMMON_DEPEND}
proxy? ( net-analyzer/fping[suid] )
server? ( net-analyzer/fping[suid]
app-admin/webapp-config )
java? (
>=virtual/jre-1.4
dev-java/slf4j-api
)
frontend? (
>=dev-lang/php-5.3.0[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode]
|| ( dev-lang/php[apache2] dev-lang/php[cgi] dev-lang/php[fpm] )
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] )
media-libs/gd[png]
app-admin/webapp-config )"
DEPEND="${COMMON_DEPEND}
static? (
ldap? (
net-nds/openldap[static-libs]
=dev-libs/cyrus-sasl-2*[static-libs]
net-libs/gnutls[static-libs]
)
mysql? ( >=virtual/mysql-5.0.3[static-libs] )
sqlite? ( >=dev-db/sqlite-3.3.5[static-libs] )
postgres? ( dev-db/postgresql:*[static-libs] )
libxml2? ( dev-libs/libxml2[static-libs] )
curl? ( net-misc/curl[static-libs] )
ssh? ( net-libs/libssh2[static-libs] )
odbc? ( dev-db/unixODBC[static-libs] )
)
virtual/pkgconfig"
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
if has_version 'dev-db/oracle-instantclient-basic'; then
ewarn
ewarn "Please ensure you have a full install of the Oracle client."
ewarn "dev-db/oracle-instantclient* is NOT sufficient."
ewarn
fi
fi
if use frontend; then
webapp_pkg_setup
fi
enewgroup zabbix
enewuser zabbix -1 -1 /var/lib/zabbix/home zabbix
}
java_prepare() {
cd "${S}/src/zabbix_java/lib"
rm -v *.jar || die
java-pkg_jar-from slf4j-api
}
src_prepare() {
default
}
src_configure() {
econf \
$(use_enable server) \
$(use_enable proxy) \
$(use_enable agent) \
$(use_enable ipv6) \
$(use_enable static) \
$(use_enable java) \
$(use_with ldap) \
$(use_with snmp net-snmp) \
$(use_with mysql) \
$(use_with postgres postgresql) \
$(use_with oracle) \
$(use_with sqlite sqlite3) \
$(use_with xmpp jabber) \
$(use_with curl libcurl) \
$(use_with openipmi openipmi) \
$(use_with ssh ssh2) \
$(use_with libxml2) \
$(use_with odbc unixodbc) \
$(use_with ssl openssl) \
|| die "econf failed"
}
src_compile() {
if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then
emake AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" || die "emake failed"
fi
}
src_install() {
dodir \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
keepdir \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
if use server; then
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_server.conf
doinitd "${FILESDIR}/3.0"/init.d/zabbix-server
dosbin src/zabbix_server/zabbix_server
fowners zabbix:zabbix /etc/zabbix/zabbix_server.conf
fperms 0640 /etc/zabbix/zabbix_server.conf
dodir /usr/share/zabbix
/bin/cp -R "${S}/database/" "${D}"/usr/share/zabbix/
systemd_dounit "${FILESDIR}/zabbix-server.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-server.tmpfiles" zabbix-server.conf
fi
if use proxy; then
doinitd "${FILESDIR}/3.0"/init.d/zabbix-proxy
dosbin src/zabbix_proxy/zabbix_proxy
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_proxy.conf
dodir /usr/share/zabbix
/bin/cp -R "${S}/database/" "${D}"/usr/share/zabbix/
systemd_dounit "${FILESDIR}/zabbix-proxy.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-proxy.tmpfiles" zabbix-proxy.conf
fi
if use agent; then
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_agentd.conf
doinitd "${FILESDIR}/3.0"/init.d/zabbix-agentd
dosbin src/zabbix_agent/zabbix_agentd
dobin \
src/zabbix_sender/zabbix_sender \
src/zabbix_get/zabbix_get
fowners zabbix:zabbix /etc/zabbix/zabbix_agentd.conf
fperms 0640 /etc/zabbix/zabbix_agentd.conf
systemd_dounit "${FILESDIR}/zabbix-agentd.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-agentd.tmpfiles" zabbix-agentd.conf
fi
fowners zabbix:zabbix \
/etc/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 frontends/php/* "${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-0.9.27.jar \
src/zabbix_java/lib/logback-console.xml \
src/zabbix_java/lib/logback-core-0.9.27.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.6.1.jar
fowners -R zabbix:zabbix /${ZABBIXJAVA_BASE}
doinitd "${FILESDIR}"/3.0/init.d/zabbix-jmx-proxy
doconfd "${FILESDIR}"/3.0/conf.d/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 (e.g. ~/.sendxmpprc when"
ewarn "using sendxmpp for Jabber alerts)."
ewarn
ewarn "To change the homedir use:"
ewarn " usermod -d /var/lib/zabbix/home zabbix"
ewarn
fi
fi
if use server; then
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
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
}

View File

@@ -0,0 +1,329 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
# needed to make webapp-config dep optional
WEBAPP_OPTIONAL="yes"
inherit flag-o-matic webapp java-pkg-opt-2 user systemd toolchain-funcs
DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers"
HOMEPAGE="http://www.zabbix.com/"
MY_P=${P/_/}
MY_PV=${PV/_/}
SRC_URI="http://prdownloads.sourceforge.net/zabbix/${MY_P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
WEBAPP_MANUAL_SLOT="yes"
KEYWORDS="~amd64 ~x86"
IUSE="+agent java curl frontend ipv6 xmpp ldap libxml2 mysql openipmi oracle +postgres proxy server ssh ssl snmp sqlite odbc static"
REQUIRED_USE="|| ( agent frontend proxy server )
proxy? ( ^^ ( mysql oracle postgres sqlite odbc ) )
server? ( ^^ ( mysql oracle postgres odbc ) )
static? ( !oracle !snmp )"
COMMON_DEPEND="snmp? ( net-analyzer/net-snmp )
ldap? (
net-nds/openldap
=dev-libs/cyrus-sasl-2*
net-libs/gnutls
)
mysql? ( >=virtual/mysql-5.0.3 )
sqlite? ( >=dev-db/sqlite-3.3.5 )
postgres? ( dev-db/postgresql:* )
oracle? ( >=dev-db/oracle-instantclient-basic-10.0.0.0 )
xmpp? ( dev-libs/iksemel )
libxml2? ( dev-libs/libxml2 )
curl? ( net-misc/curl )
openipmi? ( sys-libs/openipmi )
ssh? ( net-libs/libssh2 )
java? ( virtual/jdk:* )
odbc? ( dev-db/unixODBC )
ssl? ( dev-libs/openssl:=[-bindist] )"
RDEPEND="${COMMON_DEPEND}
proxy? ( net-analyzer/fping[suid] )
server? ( net-analyzer/fping[suid]
app-admin/webapp-config
dev-libs/libevent )
java? (
>=virtual/jre-1.4
dev-java/slf4j-api
)
frontend? (
>=dev-lang/php-5.3.0[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode]
|| ( dev-lang/php[apache2] dev-lang/php[cgi] dev-lang/php[fpm] )
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] )
media-libs/gd[png]
app-admin/webapp-config )"
DEPEND="${COMMON_DEPEND}
static? (
ldap? (
net-nds/openldap[static-libs]
=dev-libs/cyrus-sasl-2*[static-libs]
net-libs/gnutls[static-libs]
)
mysql? ( >=virtual/mysql-5.0.3[static-libs] )
sqlite? ( >=dev-db/sqlite-3.3.5[static-libs] )
postgres? ( dev-db/postgresql:*[static-libs] )
libxml2? ( dev-libs/libxml2[static-libs] )
curl? ( net-misc/curl[static-libs] )
ssh? ( net-libs/libssh2[static-libs] )
odbc? ( dev-db/unixODBC[static-libs] )
)
virtual/pkgconfig"
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
if has_version 'dev-db/oracle-instantclient-basic'; then
ewarn
ewarn "Please ensure you have a full install of the Oracle client."
ewarn "dev-db/oracle-instantclient* is NOT sufficient."
ewarn
fi
fi
if use frontend; then
webapp_pkg_setup
fi
enewgroup zabbix
enewuser zabbix -1 -1 /var/lib/zabbix/home zabbix
}
java_prepare() {
cd "${S}/src/zabbix_java/lib"
rm -v *.jar || die
java-pkg_jar-from slf4j-api
}
src_prepare() {
default
}
src_configure() {
econf \
$(use_enable server) \
$(use_enable proxy) \
$(use_enable agent) \
$(use_enable ipv6) \
$(use_enable static) \
$(use_enable java) \
$(use_with ldap) \
$(use_with snmp net-snmp) \
$(use_with mysql) \
$(use_with postgres postgresql) \
$(use_with oracle) \
$(use_with sqlite sqlite3) \
$(use_with xmpp jabber) \
$(use_with curl libcurl) \
$(use_with openipmi openipmi) \
$(use_with ssh ssh2) \
$(use_with libxml2) \
$(use_with odbc unixodbc) \
$(use_with ssl openssl) \
|| die "econf failed"
}
src_compile() {
if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then
emake AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" || die "emake failed"
fi
}
src_install() {
dodir \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
keepdir \
/etc/zabbix \
/var/lib/zabbix \
/var/lib/zabbix/home \
/var/lib/zabbix/scripts \
/var/lib/zabbix/alertscripts \
/var/lib/zabbix/externalscripts \
/var/log/zabbix
if use server; then
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_server.conf
doinitd "${FILESDIR}/3.0"/init.d/zabbix-server
dosbin src/zabbix_server/zabbix_server
fowners zabbix:zabbix /etc/zabbix/zabbix_server.conf
fperms 0640 /etc/zabbix/zabbix_server.conf
dodir /usr/share/zabbix
/bin/cp -R "${S}/database/" "${D}"/usr/share/zabbix/
systemd_dounit "${FILESDIR}/zabbix-server.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-server.tmpfiles" zabbix-server.conf
fi
if use proxy; then
doinitd "${FILESDIR}/3.0"/init.d/zabbix-proxy
dosbin src/zabbix_proxy/zabbix_proxy
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_proxy.conf
dodir /usr/share/zabbix
/bin/cp -R "${S}/database/" "${D}"/usr/share/zabbix/
systemd_dounit "${FILESDIR}/zabbix-proxy.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-proxy.tmpfiles" zabbix-proxy.conf
fi
if use agent; then
insinto /etc/zabbix
doins "${FILESDIR}/3.0"/zabbix_agentd.conf
doinitd "${FILESDIR}/3.0"/init.d/zabbix-agentd
dosbin src/zabbix_agent/zabbix_agentd
dobin \
src/zabbix_sender/zabbix_sender \
src/zabbix_get/zabbix_get
fowners zabbix:zabbix /etc/zabbix/zabbix_agentd.conf
fperms 0640 /etc/zabbix/zabbix_agentd.conf
systemd_dounit "${FILESDIR}/zabbix-agentd.service"
systemd_newtmpfilesd "${FILESDIR}/zabbix-agentd.tmpfiles" zabbix-agentd.conf
fi
fowners zabbix:zabbix \
/etc/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 frontends/php/* "${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-0.9.27.jar \
src/zabbix_java/lib/logback-console.xml \
src/zabbix_java/lib/logback-core-0.9.27.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.6.1.jar
fowners -R zabbix:zabbix /${ZABBIXJAVA_BASE}
doinitd "${FILESDIR}"/3.0/init.d/zabbix-jmx-proxy
doconfd "${FILESDIR}"/3.0/conf.d/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 (e.g. ~/.sendxmpprc when"
ewarn "using sendxmpp for Jabber alerts)."
ewarn
ewarn "To change the homedir use:"
ewarn " usermod -d /var/lib/zabbix/home zabbix"
ewarn
fi
fi
if use server; then
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
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
}