net-analyzer/zabbix: Bump
authorPatrick Lauer <patrick@gentoo.org>
Tue, 25 Apr 2017 11:36:35 +0000 (13:36 +0200)
committerPatrick Lauer <patrick@gentoo.org>
Tue, 25 Apr 2017 11:36:58 +0000 (13:36 +0200)
Package-Manager: Portage-2.3.5, Repoman-2.3.2

net-analyzer/zabbix/Manifest
net-analyzer/zabbix/zabbix-2.2.18.ebuild [new file with mode: 0644]
net-analyzer/zabbix/zabbix-3.0.9.ebuild [new file with mode: 0644]
net-analyzer/zabbix/zabbix-3.2.5.ebuild [new file with mode: 0644]

index 76f3fd70d06a01c516f049bca2c0167af797a6a6..8e13438b5fd5d45e9d906c68f36487af54032a20 100644 (file)
@@ -1,7 +1,10 @@
 DIST zabbix-2.2.16.tar.gz 15498413 SHA256 3cfcd8c7c11a2e18298e93f33701210b963a7c0e61d8c14fccfd9a8beef08041 SHA512 5d92c17e86608359fff220416d5eed2d4ac10edfe56f4162f4b7660c472cf6f609ba01034d76e5b7164c22d55a1fc5be753f5d0e0ce7ac71d00a6f68dca14afd WHIRLPOOL 2b219d17624ef40a8844193a3d836326160249549775db31c7c68597d17d9fa3d71ddbc9aa30e73c2255606957d0d2f5f562fbf2b0c0654d794c8e61e96e7ead
 DIST zabbix-2.2.17.tar.gz 15494053 SHA256 cf42c5db31c27466a9ec33b6bf22289bbc43ee4e5711e6d323d71644b743e535 SHA512 1abd60d05443cdb7b7ecdeca4d0b97414b249fe8be8c3ceaca137722af93e77101151bde59faaac4a3b61b8256bab68b0d1416192d8f72480703575794068a1f WHIRLPOOL 0ab0df7723ac6403fb26d53369fbc1d207b08343bd24f27832b2a2c7a1f043e6fe95ae99d79210f5baa5e5bd9ed9dd89acb74ce66114dfe4702d7913a26a4bb9
+DIST zabbix-2.2.18.tar.gz 15495920 SHA256 b87e7dadec65d04711fcd66dba398b213452453c5f0c3fc5490d1ab68a41abde SHA512 3e24827b2739aefa12e3d189b856d836b85a1fa45928343c08620ce1ef16c664a8ad806d051f5cffed10837a326245dd5617034f83cdd00432b81eb05be40491 WHIRLPOOL 7936219b6ea6b0db4251db494731b0cbd40a5b774467314a6011434b2c11111e21998217efb3a6925a7d4067da6fc04a4aea9d271f0568101f1ebe660244e378
 DIST zabbix-3.0.6.tar.gz 15513412 SHA256 4fe972b061cae8cc91bf2870f2caabc967096f31def5a3f53e8789154b05a97b SHA512 ccffc58f3555bea62011bad272e8a3085d1723d8cb200e00a3e657696104c3fd055b8b963a26d9c726ef45a5381c7f9625498e99b756a3dd97b147d8b7884d1f WHIRLPOOL 137eb724b5205e5d38d00f96c62da5f96ef91c57b01280489bafb67c54d10e7c40304b4674fcefedda9381dfe6d2721b81dbcda1822f56f6d538e067c2588fea
 DIST zabbix-3.0.8.tar.gz 15514547 SHA256 1df3e106427ed21547b8119049a161092f597d04507f9eb535951a9ee887a476 SHA512 9f5fec7f3888f34ad9659a5d34d5fc089efc86a5fcf78f8cabf6704fbf95fd52a8caaab6f4291cb76d15cc2d69c986c95346fbe4fdfdc407c5506f3b8946aa1a WHIRLPOOL 83a391ee2d60e974fa4e569050b62af69df192d24ad8dd151d39b668a170980f4dc448e3564a823662aecf5a2f03adca9e32c37b4949c95cab71425e786ab0bb
+DIST zabbix-3.0.9.tar.gz 15516440 SHA256 4445f26c025009681c29c9b350aa6c4ee7b124ddcaf1609ae36c55997bcb8cf2 SHA512 f34d0fde48e64dfb6bea152ab6c63eb28be66e3647cc781d430b56b13bc91ac9f194ac80d264b2e837f8fceb929e0ebeda0221bf8363eb0a66e53461088a4ef9 WHIRLPOOL dae1417efa8df60633a950473af7cf9b533dc63abfdd95b2f2edb30fc07d074fa8ef626927e578911eead45461cdc4918f92be17c21d494d6f198519c117a74d
 DIST zabbix-3.2.2.tar.gz 15915015 SHA256 f9760dde57b1faee4bbecf00c39877678d58aaf4b6205e010d6b049d9cf4535e SHA512 1f6cb6344d24ed91c49fa116d6862cfd78caab9cd3297329369dd2df5cf9c83fda67bc9faa1a59f2b605bfeda73a69a3e29653fca320eda1b67f4d0931bfdb9b WHIRLPOOL a3e9c22459376b29b3f041f0e57b369976e2fa6eb752dd79e3f862a3095c216c91e08854dff350505c33c0a5e1b73b0c4b677d5a2bb1c0c872791023c741ac77
 DIST zabbix-3.2.3.tar.gz 15922416 SHA256 e6dba74039d8d6efff86ec3da99909f4daeaeb66d48781bbb666e3094533da25 SHA512 5a704282765fa66d1aa53ae546d3a49a35050d6830a25a3a9ad64d73f8aff48b31e8d13f37d147c8d6244bb0f2dab21bceb5d022f1c3ffa726c10edc6e7bd1f6 WHIRLPOOL cab23a3edfa53f7b505f0d7e03fbcf0a2f59a52e441e195b5f7ff5555ee7bd0258ba7cb93e45f894e16ba4ad1a1b236cfef0cc65c7b7905ee0ebde2e11972710
 DIST zabbix-3.2.4.tar.gz 15924840 SHA256 22cf19ef5a9478df2281bf518e8be38adc7dbc508bf63111e02388ca7aabeef4 SHA512 62e532bcf6a5ab82b1f943e28d46d1e64782758a405680d2c1a54e9c1092a340a50987045acbbad2b57439e3c2640d8a11fe1a29a234764859befa6a7fd779d1 WHIRLPOOL 8cac552472bb186a1e16bc809d68a7dd7a63eaec7503f204bec58cd03ce9f813247d47e95b6a17baa3765dca9a51835c2dc4d6efbc69bcf03ff64cb976ac716f
+DIST zabbix-3.2.5.tar.gz 15931390 SHA256 2f25d4622f85f9faa9626c9d5b3dbd9bf098f494fae007fecd52c8dc5545504e SHA512 313eda7d26d4fe443440ff20f355a51ee0a14d7dbce2aef7ce21f95543588eb69f111dc4b19e17024f82e629bcb8fdf5739dace6f05517aee744f4e68518ea37 WHIRLPOOL 1bdb93ba3f82cda5389e68f8e9468836e2e111133f3ccb983095ab45b866d1cb483cf05522c8bb13524d77ae8f09f753158af73ba73f3f8b6c1b098e28c6bebe
diff --git a/net-analyzer/zabbix/zabbix-2.2.18.ebuild b/net-analyzer/zabbix/zabbix-2.2.18.ebuild
new file mode 100644 (file)
index 0000000..6a20156
--- /dev/null
@@ -0,0 +1,341 @@
+# Copyright 1999-2017 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
+}
diff --git a/net-analyzer/zabbix/zabbix-3.0.9.ebuild b/net-analyzer/zabbix/zabbix-3.0.9.ebuild
new file mode 100644 (file)
index 0000000..13448bd
--- /dev/null
@@ -0,0 +1,331 @@
+# Copyright 1999-2017 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
+}
diff --git a/net-analyzer/zabbix/zabbix-3.2.5.ebuild b/net-analyzer/zabbix/zabbix-3.2.5.ebuild
new file mode 100644 (file)
index 0000000..31176f5
--- /dev/null
@@ -0,0 +1,328 @@
+# Copyright 1999-2017 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
+}