From 6abbf81ef2f298e3221ff5e67a1f3c5f23958212 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 14 Dec 2020 13:26:14 +0000 Subject: gentoo resync : 14.12.2020 --- net-analyzer/zabbix/Manifest | 18 +- net-analyzer/zabbix/zabbix-3.0.31-r1.ebuild | 351 ---------------------------- net-analyzer/zabbix/zabbix-3.0.31-r2.ebuild | 351 ++++++++++++++++++++++++++++ net-analyzer/zabbix/zabbix-4.0.25-r1.ebuild | 350 +++++++++++++++++++++++++++ net-analyzer/zabbix/zabbix-4.0.25.ebuild | 350 --------------------------- net-analyzer/zabbix/zabbix-4.0.26-r1.ebuild | 350 +++++++++++++++++++++++++++ net-analyzer/zabbix/zabbix-4.0.26.ebuild | 350 --------------------------- net-analyzer/zabbix/zabbix-4.0.27-r1.ebuild | 350 +++++++++++++++++++++++++++ net-analyzer/zabbix/zabbix-5.0.4-r1.ebuild | 347 +++++++++++++++++++++++++++ net-analyzer/zabbix/zabbix-5.0.4.ebuild | 347 --------------------------- net-analyzer/zabbix/zabbix-5.0.5-r1.ebuild | 347 +++++++++++++++++++++++++++ net-analyzer/zabbix/zabbix-5.0.5.ebuild | 347 --------------------------- net-analyzer/zabbix/zabbix-5.0.6-r1.ebuild | 347 +++++++++++++++++++++++++++ net-analyzer/zabbix/zabbix-5.2.1-r1.ebuild | 347 +++++++++++++++++++++++++++ net-analyzer/zabbix/zabbix-5.2.1.ebuild | 347 --------------------------- net-analyzer/zabbix/zabbix-5.2.2-r1.ebuild | 347 +++++++++++++++++++++++++++ 16 files changed, 3148 insertions(+), 2098 deletions(-) delete mode 100644 net-analyzer/zabbix/zabbix-3.0.31-r1.ebuild create mode 100644 net-analyzer/zabbix/zabbix-3.0.31-r2.ebuild create mode 100644 net-analyzer/zabbix/zabbix-4.0.25-r1.ebuild delete mode 100644 net-analyzer/zabbix/zabbix-4.0.25.ebuild create mode 100644 net-analyzer/zabbix/zabbix-4.0.26-r1.ebuild delete mode 100644 net-analyzer/zabbix/zabbix-4.0.26.ebuild create mode 100644 net-analyzer/zabbix/zabbix-4.0.27-r1.ebuild create mode 100644 net-analyzer/zabbix/zabbix-5.0.4-r1.ebuild delete mode 100644 net-analyzer/zabbix/zabbix-5.0.4.ebuild create mode 100644 net-analyzer/zabbix/zabbix-5.0.5-r1.ebuild delete mode 100644 net-analyzer/zabbix/zabbix-5.0.5.ebuild create mode 100644 net-analyzer/zabbix/zabbix-5.0.6-r1.ebuild create mode 100644 net-analyzer/zabbix/zabbix-5.2.1-r1.ebuild delete mode 100644 net-analyzer/zabbix/zabbix-5.2.1.ebuild create mode 100644 net-analyzer/zabbix/zabbix-5.2.2-r1.ebuild (limited to 'net-analyzer/zabbix') diff --git a/net-analyzer/zabbix/Manifest b/net-analyzer/zabbix/Manifest index 6286e812ee48..2520c9f5e6bc 100644 --- a/net-analyzer/zabbix/Manifest +++ b/net-analyzer/zabbix/Manifest @@ -16,13 +16,19 @@ AUX zabbix-server.tmpfiles 35 BLAKE2B 98e917ef03bd6dc5d73e5cbdb140c7e115c7593d5c DIST zabbix-3.0.31.tar.gz 14698394 BLAKE2B b8b5f94fe7fe08385b1b358c628b2047b437e6068dab8c3dbdab03e55e95e27f1b77ede4a1a57c4f79bf4a629d9dc5671bd144c002ace7c915f2fed382ac13b2 SHA512 35fec45667cdf217c2be21a164181f92f8f11ef9bcfb0c8dad914726e7c436bae5f8a97aebc3af82499e37125f4d1896ef74ad061a1ee3cbb674562c22a832b1 DIST zabbix-4.0.25.tar.gz 17414403 BLAKE2B 5b84c5d61c90b4fbc94ea64994a7b4216fe1e728e3bf71afb5cfa674f3f24bd8d9ab91dbd9d869d5bef8fc83ef168a952ba45db8abeabf51402d92dd4487d8dc SHA512 741373adeab5ad4adccc8909e7adf7c8d2172b49e6c5e23cda057be3b82ea237fabcaa787557ea391861a6c2ad42efb695d36836ce8dfd1532e8a3cf394a7cfb DIST zabbix-4.0.26.tar.gz 17412367 BLAKE2B 7b75eeaa1146faed5e7aeeb3944eeb68df9c3e608beddb5b12ccbc8998ee6f0c3913b5f5cfe2b63dbf154a43e8393fc64b8286f805b8d3d08edbd25f21b66ce1 SHA512 7dc54176bd40cd73e2e82844caa317747df611e61b5d2d13a3516d143af9ede29ba5407bfca8aec21c9afcb77f53494ee469a2fc62cef3b91cedfce71803cac3 +DIST zabbix-4.0.27.tar.gz 17426383 BLAKE2B 33381d3705bc7cb9d451b1a536fbb4f92a9e7e321afbe9363a7879cbea3cc5977a4866a5f4d1fb70120804edaffaf869ba8c4321a67898c42c9abe2341ee118b SHA512 54690dd778d09d7309c2e2ea3f0bfc6053ef097888bfccd140484e4677766ded829757eb4dfde7da8ce19335307ddbfbb1c132feabc13cc6727a6d28c1591cfa DIST zabbix-5.0.4.tar.gz 19039167 BLAKE2B 82fb27076febe5ba43ff6c829ae22c5b4928d74f14e429c602442c90dfd5d1ce112b66d1782bd313b3300c66c774da4403a2150be7ed6ae56ae4b03a608dd018 SHA512 8ac6b56a221fe73982c30dc7dd2f2b036fa10a2fc38ef54e24dc0dd5d56a096f9c0779965afcaa5d26ee893a9f5fc8189ebc67d4244b325acb851cd8b5b6af73 DIST zabbix-5.0.5.tar.gz 19153153 BLAKE2B 6f78e690b5a8325739148802a8933d6b1e45a7c08c6f384643d4f85dc8a502be73ff2873cf3ec40cc96c2d892c8866c9f07847b055bef80fda9b00f7333727c5 SHA512 5397672fa170e12120526793b48d01764013467cc259eca61991bc52251c25888dd318ccffa6ed30ac3643104e715ceb70baaeec6eeaddb115ed294c22f5e619 +DIST zabbix-5.0.6.tar.gz 19359566 BLAKE2B 375fcbed08be46c1f17c7979763dcdfb8a51a25c2523037a1992dbb7ceb798a665f5d01e97e2e6ef023d5170e3e71df933e0fc41d27fd905ba190497d6bcd28d SHA512 c136536eab3c0e3527e8db8528656776de8849554e0a85a1644000e51c66b09044b176985de1c6d1dcc1d4ec03fc2456111c4df8d896ca276eeed2744cdd48be DIST zabbix-5.2.1.tar.gz 19579218 BLAKE2B 32f8955af5e15dd72f660a2fe1153c8c3d582d9470a87def756516db53a512605fcb67263317ef5980d597d1124324dc15c404e31aa96201105fbd5821549bb8 SHA512 deb69250a91abe24c7988011bfaa369cc13639636b37668ec12e310d92813288adc8e3a2ea7a2a51b0f54d7e6f594277778bb37a481b8f9c3dbb02e528a0cfa0 -EBUILD zabbix-3.0.31-r1.ebuild 9257 BLAKE2B 0fdd5d2a46f61939912b2ad0ebc088f4b77ee1792ee5876845f6aee190396c1418ca40f7da3ab3973f457f66bb0b94a8ac4f98e5fee18a24c35ac86491f294c4 SHA512 fe6705253dec2a4b82698cfc17963d55bee700b974ce6be5c848f0029a875a84599b3919e78915a9662cf47360154cfef60f2604dacd8414f2ca3a7dff46cb47 -EBUILD zabbix-4.0.25.ebuild 9231 BLAKE2B d51de21f9a13f9b4812eef4c3e052f4d807efeb2dfa0ad36cdcbb964e4295fd5cf6642a5f8d578fd9c84f3e43c15ea7a1e7121071cf0bdb2429327c3f627372b SHA512 f35b6ede0825eac946723baf4e5fd75a86d336c2e6df154225c549c8c3097b9c0098c10cee55ebbb39c6cee32d70891d7f131d9fb4525c36fa6e3dfce911fc12 -EBUILD zabbix-4.0.26.ebuild 9233 BLAKE2B 88c1ed41839445811f8ed60013f1d6db671f3ae1b7622fe38460ebf4e1f71594f0d567b28ea268b9859a81ba7df2a0dfaef960c0687a2ed6164699b6430493de SHA512 99f22868531dbd8f9574b5bc7ca96f0c7cfbffad22ffee95d7dba7f90cc89ec9166cfa0a8cdcec2070a49722b6c39a283f82b986dc8886532d6b06d94905bab1 -EBUILD zabbix-5.0.4.ebuild 9100 BLAKE2B 58767e6ebb13985bf734c2afde4c28f49ee125328934cac0e82d8ec6b6fbfd82472c007d7d8821f20e1414659356fe0f2be2b7efe4350e27405c69018b7d8a0d SHA512 afd232493c12f1f2494e31a8776b57fc22d269d2f6f7c1341757ebf3e4808ffd0de06a75e5d16fb1a904a766545c831aa65ddd2b6c1e06b83d1c9969b1525af3 -EBUILD zabbix-5.0.5.ebuild 9102 BLAKE2B 03f011a80a0b3ee224c24ab3d4cfeef0e0307a70202cb7af82b8b043fc6729fe9e1750d018422e50106f2f60b15c09e7ab1becacc271d39e8e6178de67d2fc11 SHA512 f50a8b85390edbf70fac2edd58dba016e69360a36e3485bf5633f59f4dabf6994924b134d42ab7386329e0658e3bc3979ad90b3759c905ac322870b5b97e3839 -EBUILD zabbix-5.2.1.ebuild 9102 BLAKE2B 03f011a80a0b3ee224c24ab3d4cfeef0e0307a70202cb7af82b8b043fc6729fe9e1750d018422e50106f2f60b15c09e7ab1becacc271d39e8e6178de67d2fc11 SHA512 f50a8b85390edbf70fac2edd58dba016e69360a36e3485bf5633f59f4dabf6994924b134d42ab7386329e0658e3bc3979ad90b3759c905ac322870b5b97e3839 +DIST zabbix-5.2.2.tar.gz 19745101 BLAKE2B 651184d4645ff4cfac1317326bd846b4707d8556a30c64dd0b5ac923fb2bb4439b120a4c2bf43c1f73b57a919d5f3bfba28e3d9efde6a3f48587c5b7d0b1d7db SHA512 7bb79111ff809a90a5911d7f94f86eddec3a3fa4f91fdfbf013178442de81d22dc13359679570b8d62fe41b664c764c42cbe98936fd195521951aab507933d9b +EBUILD zabbix-3.0.31-r2.ebuild 9272 BLAKE2B 952241486756f5705a6d90677bcd792f5fe6a71808510af248ac297e53d5918129cc7d54365368d874139a52b50a06d6d38bee4b79705da1b6ae074d5e375107 SHA512 7faa241ec721d93a91ad1a51bafbd4b3c37bc8a0d85d2ed4855f3e59d1cd19719888a9306bfab5cc2848a85e1f849949879c5511c24e795a81445c15c49ea162 +EBUILD zabbix-4.0.25-r1.ebuild 9246 BLAKE2B b86b928260077f788d8ea1a5c083873fd2335242e74c88f9eede8838e6d580cce27500ee4838689811b5e8fb17c3aaf834d607294411b00614ab964ec5e8a685 SHA512 1956f1119adf155f9eaa3a47869bbbd487e1aea6b5d711e44604f286cf497c183949ad521fb7d794b3d1a5b53c6f51ce1b102719c5ef507f7702eef48c80c812 +EBUILD zabbix-4.0.26-r1.ebuild 9247 BLAKE2B cfd0080e536041cb26b8a148e7e5e1af5cfde637eb4fdbdebff1345d198b4e1ee5b6e3b1907c26eefec008f14ef22f8983431bdba3346d8a8255c879aac46d53 SHA512 0d57d119cb94fb448c735f9a8cecccfc3cd20ef5cd1631fc646b21eddfb5c3d20104c3a4b6b47d57d0693b51c032effd982f863f6ee89dfa5745de833aaac079 +EBUILD zabbix-4.0.27-r1.ebuild 9248 BLAKE2B ec957d89d392344529536c0d0c80d4f22db4db467f82374d9add67d70c5d9643401775d0452d4fa84bf72c98f96b33fd2d462f8cf6951e6312644c301959d628 SHA512 b8afdd2e70ec8944aa601aaac86d1a38d172395eb21e19bc714dcecbd86b1b57af387769b5fe29baf2cdddee2db33867a803b07599d774c6909142cc148c442d +EBUILD zabbix-5.0.4-r1.ebuild 9115 BLAKE2B 112d020bc615f0596ad5645677cf2277e87542b69c54aac714eddff16ef2fdc031d8f1bb0dc77de09e3ab4654321ac6da9f278be322d999a5e3861814aa8e912 SHA512 6f9e91dd505359fe9dd3ad0d064e6726c02137fd1c37c11b7b4d445ba04c7e1c59ba25ff2c602a68c5aed9f132befb09cd0c7c74a9994f64675a93cf44966fa3 +EBUILD zabbix-5.0.5-r1.ebuild 9116 BLAKE2B 836123e564143d2dd7b126e07c482a66b34240f1e9ae667991dd6791a99058e1aa5aedc781c35f2675fb4bfbfe8e6da923a7ffe3f4187644acfe404e2d457799 SHA512 83abc4baaa8ecc3dc25124ad2051b5120cf2a9be42d0597997477d29b2cdd01da269498e34114678ae9300bb5ba5c8b8a7ffd1d9f274cfc224f09daa212c5012 +EBUILD zabbix-5.0.6-r1.ebuild 9117 BLAKE2B c6790c4db86c73cbb8a2fac2cb74605955a42e62ecb90facbec16bec640047b880e0415752455fd3ef394c638f47c1a0fd2058f02ca8e6284b70b77e7f342fac SHA512 a6d8c38b0cf507e102c4f428afd9a207559e3b3e0aebb0b0c0c710915109172279dc63c57756870837a8ab2841072a84502d8738675f4096a4a8950efda03f4f +EBUILD zabbix-5.2.1-r1.ebuild 9116 BLAKE2B 836123e564143d2dd7b126e07c482a66b34240f1e9ae667991dd6791a99058e1aa5aedc781c35f2675fb4bfbfe8e6da923a7ffe3f4187644acfe404e2d457799 SHA512 83abc4baaa8ecc3dc25124ad2051b5120cf2a9be42d0597997477d29b2cdd01da269498e34114678ae9300bb5ba5c8b8a7ffd1d9f274cfc224f09daa212c5012 +EBUILD zabbix-5.2.2-r1.ebuild 9117 BLAKE2B c6790c4db86c73cbb8a2fac2cb74605955a42e62ecb90facbec16bec640047b880e0415752455fd3ef394c638f47c1a0fd2058f02ca8e6284b70b77e7f342fac SHA512 a6d8c38b0cf507e102c4f428afd9a207559e3b3e0aebb0b0c0c710915109172279dc63c57756870837a8ab2841072a84502d8738675f4096a4a8950efda03f4f MISC metadata.xml 1518 BLAKE2B 3ec0ec6fcb2e8d92209689d685171ad4d97a81d89f60719cc1de88b88c0f91a86a5422359e84c665ed140b6dc764164a75177ac1cc2fa0d624599bcc050d057e SHA512 6a131659395d29c72126ea38648ec273c444497f592f830af6afb7791eff4063de1349059ae11917a3356c22b38f5ac954593394ab03b955183ae8011dd4b173 diff --git a/net-analyzer/zabbix/zabbix-3.0.31-r1.ebuild b/net-analyzer/zabbix/zabbix-3.0.31-r1.ebuild deleted file mode 100644 index e33f3eee4220..000000000000 --- a/net-analyzer/zabbix/zabbix-3.0.31-r1.ebuild +++ /dev/null @@ -1,351 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# 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="https://www.zabbix.com/" -MY_P=${P/_/} -MY_PV=${PV/_/} -SRC_URI="https://cdn.zabbix.com/stable/${PV}/${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=" - curl? ( net-misc/curl ) - 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 ) - oracle? ( dev-db/oracle-instantclient-basic ) - postgres? ( dev-db/postgresql:* ) - proxy? ( sys-libs/zlib ) - server? ( - dev-libs/libevent - sys-libs/zlib - ) - snmp? ( net-analyzer/net-snmp ) - sqlite? ( dev-db/sqlite ) - ssh? ( net-libs/libssh2 ) - ssl? ( dev-libs/openssl:=[-bindist] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${COMMON_DEPEND} - java? ( >=virtual/jre-1.8:* ) - mysql? ( virtual/mysql ) - proxy? ( net-analyzer/fping[suid] ) - server? ( - app-admin/webapp-config - dev-libs/libevent - dev-libs/libpcre - net-analyzer/fping[suid] - ) - frontend? ( - app-admin/webapp-config - dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] - media-libs/gd[png] - virtual/httpd-php:* - mysql? ( dev-lang/php[mysqli] ) - odbc? ( dev-lang/php[odbc] ) - oracle? ( dev-lang/php[oci8-instant-client] ) - postgres? ( dev-lang/php[postgres] ) - sqlite? ( dev-lang/php[sqlite] ) - ) -" -DEPEND="${COMMON_DEPEND} - static? ( - curl? ( net-misc/curl[static-libs] ) - ldap? ( - =dev-libs/cyrus-sasl-2*[static-libs] - net-libs/gnutls[static-libs] - net-nds/openldap[static-libs] - ) - libxml2? ( dev-libs/libxml2[static-libs] ) - mysql? ( dev-db/mysql-connector-c[static-libs] ) - odbc? ( dev-db/unixODBC[static-libs] ) - postgres? ( dev-db/postgresql:*[static-libs] ) - sqlite? ( dev-db/sqlite[static-libs] ) - ssh? ( net-libs/libssh2 ) - ) -" -BDEPEND=" - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" - "${FILESDIR}/${PN}-3.0.30-mysql8.patch" - "${FILESDIR}/${P}-fix-cve-2020-15803.patch" -) - -S=${WORKDIR}/${MY_P} - -ZABBIXJAVA_BASE="opt/zabbix_java" - -pkg_setup() { - if use oracle; then - if [ -z "${ORACLE_HOME}" ]; then - eerror - eerror "The environment variable ORACLE_HOME must be set" - eerror "and point to the correct location." - eerror "It looks like you don't have Oracle installed." - eerror - die "Environment variable ORACLE_HOME is not set" - fi - 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-pkg-opt-2_pkg_setup -} - -src_prepare() { - default -} - -src_configure() { - econf \ - $(use_enable agent) \ - $(use_enable ipv6) \ - $(use_enable java) \ - $(use_enable proxy) \ - $(use_enable server) \ - $(use_enable static) \ - $(use_with curl libcurl) \ - $(use_with ldap) \ - $(use_with libxml2) \ - $(use_with mysql) \ - $(use_with odbc unixodbc) \ - $(use_with openipmi openipmi) \ - $(use_with oracle) \ - $(use_with postgres postgresql) \ - $(use_with snmp net-snmp) \ - $(use_with sqlite sqlite3) \ - $(use_with ssh ssh2) \ - $(use_with ssl openssl) \ - $(use_with xmpp jabber) -} - -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 - dodir "${dir}" - 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.init zabbix-server - - dosbin src/zabbix_server/zabbix_server - - insinto /usr/share/zabbix - doins -r "${S}"/database/ - - systemd_dounit "${FILESDIR}"/zabbix-server.service - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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 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 - 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 (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 " - 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.31-r2.ebuild b/net-analyzer/zabbix/zabbix-3.0.31-r2.ebuild new file mode 100644 index 000000000000..40121fa75537 --- /dev/null +++ b/net-analyzer/zabbix/zabbix-3.0.31-r2.ebuild @@ -0,0 +1,351 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="https://www.zabbix.com/" +MY_P=${P/_/} +MY_PV=${PV/_/} +SRC_URI="https://cdn.zabbix.com/stable/${PV}/${P}.tar.gz" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) + xmpp? ( dev-libs/iksemel ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" + "${FILESDIR}/${PN}-3.0.30-mysql8.patch" + "${FILESDIR}/${P}-fix-cve-2020-15803.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) \ + $(use_with xmpp jabber) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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 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 + 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 (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 " + 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-4.0.25-r1.ebuild b/net-analyzer/zabbix/zabbix-4.0.25-r1.ebuild new file mode 100644 index 000000000000..c3e0e8de2db6 --- /dev/null +++ b/net-analyzer/zabbix/zabbix-4.0.25-r1.ebuild @@ -0,0 +1,350 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="https://www.zabbix.com/" +MY_P=${P/_/} +MY_PV=${PV/_/} +SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/4.0/${P}.tar.gz" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) + xmpp? ( dev-libs/iksemel ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) \ + $(use_with xmpp jabber) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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 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 + 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 (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 " + 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-4.0.25.ebuild b/net-analyzer/zabbix/zabbix-4.0.25.ebuild deleted file mode 100644 index 065c01ba723d..000000000000 --- a/net-analyzer/zabbix/zabbix-4.0.25.ebuild +++ /dev/null @@ -1,350 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# 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="https://www.zabbix.com/" -MY_P=${P/_/} -MY_PV=${PV/_/} -SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/4.0/${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=" - curl? ( net-misc/curl ) - 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 ) - oracle? ( dev-db/oracle-instantclient-basic ) - postgres? ( dev-db/postgresql:* ) - proxy? ( sys-libs/zlib ) - server? ( - dev-libs/libevent - sys-libs/zlib - ) - snmp? ( net-analyzer/net-snmp ) - sqlite? ( dev-db/sqlite ) - ssh? ( net-libs/libssh2 ) - ssl? ( dev-libs/openssl:=[-bindist] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${COMMON_DEPEND} - java? ( >=virtual/jre-1.8:* ) - mysql? ( virtual/mysql ) - proxy? ( net-analyzer/fping[suid] ) - server? ( - app-admin/webapp-config - dev-libs/libevent - dev-libs/libpcre - net-analyzer/fping[suid] - ) - frontend? ( - app-admin/webapp-config - dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] - media-libs/gd[png] - virtual/httpd-php:* - mysql? ( dev-lang/php[mysqli] ) - odbc? ( dev-lang/php[odbc] ) - oracle? ( dev-lang/php[oci8-instant-client] ) - postgres? ( dev-lang/php[postgres] ) - sqlite? ( dev-lang/php[sqlite] ) - ) -" -DEPEND="${COMMON_DEPEND} - static? ( - curl? ( net-misc/curl[static-libs] ) - ldap? ( - =dev-libs/cyrus-sasl-2*[static-libs] - net-libs/gnutls[static-libs] - net-nds/openldap[static-libs] - ) - libxml2? ( dev-libs/libxml2[static-libs] ) - mysql? ( dev-db/mysql-connector-c[static-libs] ) - odbc? ( dev-db/unixODBC[static-libs] ) - postgres? ( dev-db/postgresql:*[static-libs] ) - sqlite? ( dev-db/sqlite[static-libs] ) - ssh? ( net-libs/libssh2 ) - ) -" -BDEPEND=" - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" - "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" -) - -S=${WORKDIR}/${MY_P} - -ZABBIXJAVA_BASE="opt/zabbix_java" - -pkg_setup() { - if use oracle; then - if [ -z "${ORACLE_HOME}" ]; then - eerror - eerror "The environment variable ORACLE_HOME must be set" - eerror "and point to the correct location." - eerror "It looks like you don't have Oracle installed." - eerror - die "Environment variable ORACLE_HOME is not set" - fi - 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-pkg-opt-2_pkg_setup -} - -src_prepare() { - default -} - -src_configure() { - econf \ - $(use_enable agent) \ - $(use_enable ipv6) \ - $(use_enable java) \ - $(use_enable proxy) \ - $(use_enable server) \ - $(use_enable static) \ - $(use_with curl libcurl) \ - $(use_with ldap) \ - $(use_with libxml2) \ - $(use_with mysql) \ - $(use_with odbc unixodbc) \ - $(use_with openipmi openipmi) \ - $(use_with oracle) \ - $(use_with postgres postgresql) \ - $(use_with snmp net-snmp) \ - $(use_with sqlite sqlite3) \ - $(use_with ssh ssh2) \ - $(use_with ssl openssl) \ - $(use_with xmpp jabber) -} - -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 - dodir "${dir}" - 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.init zabbix-server - - dosbin src/zabbix_server/zabbix_server - - insinto /usr/share/zabbix - doins -r "${S}"/database/ - - systemd_dounit "${FILESDIR}"/zabbix-server.service - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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 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 - 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 (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 " - 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-4.0.26-r1.ebuild b/net-analyzer/zabbix/zabbix-4.0.26-r1.ebuild new file mode 100644 index 000000000000..d7ad8e740a55 --- /dev/null +++ b/net-analyzer/zabbix/zabbix-4.0.26-r1.ebuild @@ -0,0 +1,350 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="https://www.zabbix.com/" +MY_P=${P/_/} +MY_PV=${PV/_/} +SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/4.0/${P}.tar.gz" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) + xmpp? ( dev-libs/iksemel ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) \ + $(use_with xmpp jabber) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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 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 + 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 (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 " + 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-4.0.26.ebuild b/net-analyzer/zabbix/zabbix-4.0.26.ebuild deleted file mode 100644 index 844a2e68741e..000000000000 --- a/net-analyzer/zabbix/zabbix-4.0.26.ebuild +++ /dev/null @@ -1,350 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# 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="https://www.zabbix.com/" -MY_P=${P/_/} -MY_PV=${PV/_/} -SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/4.0/${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=" - curl? ( net-misc/curl ) - 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 ) - oracle? ( dev-db/oracle-instantclient-basic ) - postgres? ( dev-db/postgresql:* ) - proxy? ( sys-libs/zlib ) - server? ( - dev-libs/libevent - sys-libs/zlib - ) - snmp? ( net-analyzer/net-snmp ) - sqlite? ( dev-db/sqlite ) - ssh? ( net-libs/libssh2 ) - ssl? ( dev-libs/openssl:=[-bindist] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${COMMON_DEPEND} - java? ( >=virtual/jre-1.8:* ) - mysql? ( virtual/mysql ) - proxy? ( net-analyzer/fping[suid] ) - server? ( - app-admin/webapp-config - dev-libs/libevent - dev-libs/libpcre - net-analyzer/fping[suid] - ) - frontend? ( - app-admin/webapp-config - dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] - media-libs/gd[png] - virtual/httpd-php:* - mysql? ( dev-lang/php[mysqli] ) - odbc? ( dev-lang/php[odbc] ) - oracle? ( dev-lang/php[oci8-instant-client] ) - postgres? ( dev-lang/php[postgres] ) - sqlite? ( dev-lang/php[sqlite] ) - ) -" -DEPEND="${COMMON_DEPEND} - static? ( - curl? ( net-misc/curl[static-libs] ) - ldap? ( - =dev-libs/cyrus-sasl-2*[static-libs] - net-libs/gnutls[static-libs] - net-nds/openldap[static-libs] - ) - libxml2? ( dev-libs/libxml2[static-libs] ) - mysql? ( dev-db/mysql-connector-c[static-libs] ) - odbc? ( dev-db/unixODBC[static-libs] ) - postgres? ( dev-db/postgresql:*[static-libs] ) - sqlite? ( dev-db/sqlite[static-libs] ) - ssh? ( net-libs/libssh2 ) - ) -" -BDEPEND=" - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" - "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" -) - -S=${WORKDIR}/${MY_P} - -ZABBIXJAVA_BASE="opt/zabbix_java" - -pkg_setup() { - if use oracle; then - if [ -z "${ORACLE_HOME}" ]; then - eerror - eerror "The environment variable ORACLE_HOME must be set" - eerror "and point to the correct location." - eerror "It looks like you don't have Oracle installed." - eerror - die "Environment variable ORACLE_HOME is not set" - fi - 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-pkg-opt-2_pkg_setup -} - -src_prepare() { - default -} - -src_configure() { - econf \ - $(use_enable agent) \ - $(use_enable ipv6) \ - $(use_enable java) \ - $(use_enable proxy) \ - $(use_enable server) \ - $(use_enable static) \ - $(use_with curl libcurl) \ - $(use_with ldap) \ - $(use_with libxml2) \ - $(use_with mysql) \ - $(use_with odbc unixodbc) \ - $(use_with openipmi openipmi) \ - $(use_with oracle) \ - $(use_with postgres postgresql) \ - $(use_with snmp net-snmp) \ - $(use_with sqlite sqlite3) \ - $(use_with ssh ssh2) \ - $(use_with ssl openssl) \ - $(use_with xmpp jabber) -} - -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 - dodir "${dir}" - 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.init zabbix-server - - dosbin src/zabbix_server/zabbix_server - - insinto /usr/share/zabbix - doins -r "${S}"/database/ - - systemd_dounit "${FILESDIR}"/zabbix-server.service - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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 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 - 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 (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 " - 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-4.0.27-r1.ebuild b/net-analyzer/zabbix/zabbix-4.0.27-r1.ebuild new file mode 100644 index 000000000000..c097176110ef --- /dev/null +++ b/net-analyzer/zabbix/zabbix-4.0.27-r1.ebuild @@ -0,0 +1,350 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="https://www.zabbix.com/" +MY_P=${P/_/} +MY_PV=${PV/_/} +SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/4.0/${P}.tar.gz" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) + xmpp? ( dev-libs/iksemel ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) \ + $(use_with xmpp jabber) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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 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 + 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 (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 " + 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-5.0.4-r1.ebuild b/net-analyzer/zabbix/zabbix-5.0.4-r1.ebuild new file mode 100644 index 000000000000..04c629c2aced --- /dev/null +++ b/net-analyzer/zabbix/zabbix-5.0.4-r1.ebuild @@ -0,0 +1,347 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="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" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="amd64 x86" +IUSE="+agent java curl frontend ipv6 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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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-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 + 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 + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n " + 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-5.0.4.ebuild b/net-analyzer/zabbix/zabbix-5.0.4.ebuild deleted file mode 100644 index c105a7d5d7ea..000000000000 --- a/net-analyzer/zabbix/zabbix-5.0.4.ebuild +++ /dev/null @@ -1,347 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# 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="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" -LICENSE="GPL-2" -SLOT="0" -WEBAPP_MANUAL_SLOT="yes" -KEYWORDS="amd64 x86" -IUSE="+agent java curl frontend ipv6 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=" - curl? ( net-misc/curl ) - 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 ) - oracle? ( dev-db/oracle-instantclient-basic ) - postgres? ( dev-db/postgresql:* ) - proxy? ( sys-libs/zlib ) - server? ( - dev-libs/libevent - sys-libs/zlib - ) - snmp? ( net-analyzer/net-snmp ) - sqlite? ( dev-db/sqlite ) - ssh? ( net-libs/libssh2 ) - ssl? ( dev-libs/openssl:=[-bindist] ) -" - -RDEPEND="${COMMON_DEPEND} - java? ( >=virtual/jre-1.8:* ) - mysql? ( virtual/mysql ) - proxy? ( net-analyzer/fping[suid] ) - server? ( - app-admin/webapp-config - dev-libs/libevent - dev-libs/libpcre - net-analyzer/fping[suid] - ) - frontend? ( - app-admin/webapp-config - dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] - media-libs/gd[png] - virtual/httpd-php:* - mysql? ( dev-lang/php[mysqli] ) - odbc? ( dev-lang/php[odbc] ) - oracle? ( dev-lang/php[oci8-instant-client] ) - postgres? ( dev-lang/php[postgres] ) - sqlite? ( dev-lang/php[sqlite] ) - ) -" -DEPEND="${COMMON_DEPEND} - static? ( - curl? ( net-misc/curl[static-libs] ) - ldap? ( - =dev-libs/cyrus-sasl-2*[static-libs] - net-libs/gnutls[static-libs] - net-nds/openldap[static-libs] - ) - libxml2? ( dev-libs/libxml2[static-libs] ) - mysql? ( dev-db/mysql-connector-c[static-libs] ) - odbc? ( dev-db/unixODBC[static-libs] ) - postgres? ( dev-db/postgresql:*[static-libs] ) - sqlite? ( dev-db/sqlite[static-libs] ) - ssh? ( net-libs/libssh2 ) - ) -" -BDEPEND=" - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" - "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" -) - -S=${WORKDIR}/${MY_P} - -ZABBIXJAVA_BASE="opt/zabbix_java" - -pkg_setup() { - if use oracle; then - if [ -z "${ORACLE_HOME}" ]; then - eerror - eerror "The environment variable ORACLE_HOME must be set" - eerror "and point to the correct location." - eerror "It looks like you don't have Oracle installed." - eerror - die "Environment variable ORACLE_HOME is not set" - fi - 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-pkg-opt-2_pkg_setup -} - -src_prepare() { - default -} - -src_configure() { - econf \ - $(use_enable agent) \ - $(use_enable ipv6) \ - $(use_enable java) \ - $(use_enable proxy) \ - $(use_enable server) \ - $(use_enable static) \ - $(use_with curl libcurl) \ - $(use_with ldap) \ - $(use_with libxml2) \ - $(use_with mysql) \ - $(use_with odbc unixodbc) \ - $(use_with openipmi openipmi) \ - $(use_with oracle) \ - $(use_with postgres postgresql) \ - $(use_with snmp net-snmp) \ - $(use_with sqlite sqlite3) \ - $(use_with ssh ssh2) \ - $(use_with ssl openssl) -} - -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 - dodir "${dir}" - 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.init zabbix-server - - dosbin src/zabbix_server/zabbix_server - - insinto /usr/share/zabbix - doins -r "${S}"/database/ - - systemd_dounit "${FILESDIR}"/zabbix-server.service - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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-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 - 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 - elog - elog "For distributed monitoring you have to run:" - elog - elog "zabbix_server -n " - 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-5.0.5-r1.ebuild b/net-analyzer/zabbix/zabbix-5.0.5-r1.ebuild new file mode 100644 index 000000000000..7fdc79246f1d --- /dev/null +++ b/net-analyzer/zabbix/zabbix-5.0.5-r1.ebuild @@ -0,0 +1,347 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="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" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="~amd64 x86" +IUSE="+agent java curl frontend ipv6 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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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-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 + 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 + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n " + 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-5.0.5.ebuild b/net-analyzer/zabbix/zabbix-5.0.5.ebuild deleted file mode 100644 index e393d4a24eba..000000000000 --- a/net-analyzer/zabbix/zabbix-5.0.5.ebuild +++ /dev/null @@ -1,347 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# 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="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" -LICENSE="GPL-2" -SLOT="0" -WEBAPP_MANUAL_SLOT="yes" -KEYWORDS="~amd64 ~x86" -IUSE="+agent java curl frontend ipv6 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=" - curl? ( net-misc/curl ) - 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 ) - oracle? ( dev-db/oracle-instantclient-basic ) - postgres? ( dev-db/postgresql:* ) - proxy? ( sys-libs/zlib ) - server? ( - dev-libs/libevent - sys-libs/zlib - ) - snmp? ( net-analyzer/net-snmp ) - sqlite? ( dev-db/sqlite ) - ssh? ( net-libs/libssh2 ) - ssl? ( dev-libs/openssl:=[-bindist] ) -" - -RDEPEND="${COMMON_DEPEND} - java? ( >=virtual/jre-1.8:* ) - mysql? ( virtual/mysql ) - proxy? ( net-analyzer/fping[suid] ) - server? ( - app-admin/webapp-config - dev-libs/libevent - dev-libs/libpcre - net-analyzer/fping[suid] - ) - frontend? ( - app-admin/webapp-config - dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] - media-libs/gd[png] - virtual/httpd-php:* - mysql? ( dev-lang/php[mysqli] ) - odbc? ( dev-lang/php[odbc] ) - oracle? ( dev-lang/php[oci8-instant-client] ) - postgres? ( dev-lang/php[postgres] ) - sqlite? ( dev-lang/php[sqlite] ) - ) -" -DEPEND="${COMMON_DEPEND} - static? ( - curl? ( net-misc/curl[static-libs] ) - ldap? ( - =dev-libs/cyrus-sasl-2*[static-libs] - net-libs/gnutls[static-libs] - net-nds/openldap[static-libs] - ) - libxml2? ( dev-libs/libxml2[static-libs] ) - mysql? ( dev-db/mysql-connector-c[static-libs] ) - odbc? ( dev-db/unixODBC[static-libs] ) - postgres? ( dev-db/postgresql:*[static-libs] ) - sqlite? ( dev-db/sqlite[static-libs] ) - ssh? ( net-libs/libssh2 ) - ) -" -BDEPEND=" - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" - "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" -) - -S=${WORKDIR}/${MY_P} - -ZABBIXJAVA_BASE="opt/zabbix_java" - -pkg_setup() { - if use oracle; then - if [ -z "${ORACLE_HOME}" ]; then - eerror - eerror "The environment variable ORACLE_HOME must be set" - eerror "and point to the correct location." - eerror "It looks like you don't have Oracle installed." - eerror - die "Environment variable ORACLE_HOME is not set" - fi - 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-pkg-opt-2_pkg_setup -} - -src_prepare() { - default -} - -src_configure() { - econf \ - $(use_enable agent) \ - $(use_enable ipv6) \ - $(use_enable java) \ - $(use_enable proxy) \ - $(use_enable server) \ - $(use_enable static) \ - $(use_with curl libcurl) \ - $(use_with ldap) \ - $(use_with libxml2) \ - $(use_with mysql) \ - $(use_with odbc unixodbc) \ - $(use_with openipmi openipmi) \ - $(use_with oracle) \ - $(use_with postgres postgresql) \ - $(use_with snmp net-snmp) \ - $(use_with sqlite sqlite3) \ - $(use_with ssh ssh2) \ - $(use_with ssl openssl) -} - -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 - dodir "${dir}" - 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.init zabbix-server - - dosbin src/zabbix_server/zabbix_server - - insinto /usr/share/zabbix - doins -r "${S}"/database/ - - systemd_dounit "${FILESDIR}"/zabbix-server.service - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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-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 - 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 - elog - elog "For distributed monitoring you have to run:" - elog - elog "zabbix_server -n " - 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-5.0.6-r1.ebuild b/net-analyzer/zabbix/zabbix-5.0.6-r1.ebuild new file mode 100644 index 000000000000..b95dbdcff0ce --- /dev/null +++ b/net-analyzer/zabbix/zabbix-5.0.6-r1.ebuild @@ -0,0 +1,347 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="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" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="~amd64 ~x86" +IUSE="+agent java curl frontend ipv6 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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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-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 + 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 + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n " + 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-5.2.1-r1.ebuild b/net-analyzer/zabbix/zabbix-5.2.1-r1.ebuild new file mode 100644 index 000000000000..7fdc79246f1d --- /dev/null +++ b/net-analyzer/zabbix/zabbix-5.2.1-r1.ebuild @@ -0,0 +1,347 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="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" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="~amd64 x86" +IUSE="+agent java curl frontend ipv6 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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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-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 + 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 + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n " + 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-5.2.1.ebuild b/net-analyzer/zabbix/zabbix-5.2.1.ebuild deleted file mode 100644 index e393d4a24eba..000000000000 --- a/net-analyzer/zabbix/zabbix-5.2.1.ebuild +++ /dev/null @@ -1,347 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# 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="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" -LICENSE="GPL-2" -SLOT="0" -WEBAPP_MANUAL_SLOT="yes" -KEYWORDS="~amd64 ~x86" -IUSE="+agent java curl frontend ipv6 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=" - curl? ( net-misc/curl ) - 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 ) - oracle? ( dev-db/oracle-instantclient-basic ) - postgres? ( dev-db/postgresql:* ) - proxy? ( sys-libs/zlib ) - server? ( - dev-libs/libevent - sys-libs/zlib - ) - snmp? ( net-analyzer/net-snmp ) - sqlite? ( dev-db/sqlite ) - ssh? ( net-libs/libssh2 ) - ssl? ( dev-libs/openssl:=[-bindist] ) -" - -RDEPEND="${COMMON_DEPEND} - java? ( >=virtual/jre-1.8:* ) - mysql? ( virtual/mysql ) - proxy? ( net-analyzer/fping[suid] ) - server? ( - app-admin/webapp-config - dev-libs/libevent - dev-libs/libpcre - net-analyzer/fping[suid] - ) - frontend? ( - app-admin/webapp-config - dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] - media-libs/gd[png] - virtual/httpd-php:* - mysql? ( dev-lang/php[mysqli] ) - odbc? ( dev-lang/php[odbc] ) - oracle? ( dev-lang/php[oci8-instant-client] ) - postgres? ( dev-lang/php[postgres] ) - sqlite? ( dev-lang/php[sqlite] ) - ) -" -DEPEND="${COMMON_DEPEND} - static? ( - curl? ( net-misc/curl[static-libs] ) - ldap? ( - =dev-libs/cyrus-sasl-2*[static-libs] - net-libs/gnutls[static-libs] - net-nds/openldap[static-libs] - ) - libxml2? ( dev-libs/libxml2[static-libs] ) - mysql? ( dev-db/mysql-connector-c[static-libs] ) - odbc? ( dev-db/unixODBC[static-libs] ) - postgres? ( dev-db/postgresql:*[static-libs] ) - sqlite? ( dev-db/sqlite[static-libs] ) - ssh? ( net-libs/libssh2 ) - ) -" -BDEPEND=" - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" - "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" -) - -S=${WORKDIR}/${MY_P} - -ZABBIXJAVA_BASE="opt/zabbix_java" - -pkg_setup() { - if use oracle; then - if [ -z "${ORACLE_HOME}" ]; then - eerror - eerror "The environment variable ORACLE_HOME must be set" - eerror "and point to the correct location." - eerror "It looks like you don't have Oracle installed." - eerror - die "Environment variable ORACLE_HOME is not set" - fi - 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-pkg-opt-2_pkg_setup -} - -src_prepare() { - default -} - -src_configure() { - econf \ - $(use_enable agent) \ - $(use_enable ipv6) \ - $(use_enable java) \ - $(use_enable proxy) \ - $(use_enable server) \ - $(use_enable static) \ - $(use_with curl libcurl) \ - $(use_with ldap) \ - $(use_with libxml2) \ - $(use_with mysql) \ - $(use_with odbc unixodbc) \ - $(use_with openipmi openipmi) \ - $(use_with oracle) \ - $(use_with postgres postgresql) \ - $(use_with snmp net-snmp) \ - $(use_with sqlite sqlite3) \ - $(use_with ssh ssh2) \ - $(use_with ssl openssl) -} - -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 - dodir "${dir}" - 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.init zabbix-server - - dosbin src/zabbix_server/zabbix_server - - insinto /usr/share/zabbix - doins -r "${S}"/database/ - - systemd_dounit "${FILESDIR}"/zabbix-server.service - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${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 - systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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-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 - 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 - elog - elog "For distributed monitoring you have to run:" - elog - elog "zabbix_server -n " - 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-5.2.2-r1.ebuild b/net-analyzer/zabbix/zabbix-5.2.2-r1.ebuild new file mode 100644 index 000000000000..b95dbdcff0ce --- /dev/null +++ b/net-analyzer/zabbix/zabbix-5.2.2-r1.ebuild @@ -0,0 +1,347 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# 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="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" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="~amd64 ~x86" +IUSE="+agent java curl frontend ipv6 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=" + curl? ( net-misc/curl ) + 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 ) + oracle? ( dev-db/oracle-instantclient-basic ) + postgres? ( dev-db/postgresql:* ) + proxy? ( sys-libs/zlib ) + server? ( + dev-libs/libevent + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + ssl? ( dev-libs/openssl:=[-bindist] ) +" + +RDEPEND="${COMMON_DEPEND} + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( net-analyzer/fping[suid] ) + server? ( + app-admin/webapp-config + dev-libs/libevent + dev-libs/libpcre + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + 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-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(use_with ssl openssl) +} + +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 + dodir "${dir}" + 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.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${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 + systemd_newtmpfilesd "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.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-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 + 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 + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n " + 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 +} -- cgit v1.2.3