diff options
Diffstat (limited to 'net-analyzer')
-rw-r--r-- | net-analyzer/Manifest.gz | bin | 43271 -> 43275 bytes | |||
-rw-r--r-- | net-analyzer/zabbix/Manifest | 11 | ||||
-rw-r--r-- | net-analyzer/zabbix/zabbix-4.0.50.ebuild | 368 | ||||
-rw-r--r-- | net-analyzer/zabbix/zabbix-5.0.39.ebuild | 400 | ||||
-rw-r--r-- | net-analyzer/zabbix/zabbix-6.0.23.ebuild | 403 | ||||
-rw-r--r-- | net-analyzer/zabbix/zabbix-6.4.8.ebuild | 404 |
6 files changed, 1586 insertions, 0 deletions
diff --git a/net-analyzer/Manifest.gz b/net-analyzer/Manifest.gz Binary files differindex 15e5ae4878a8..4f1629fdcfeb 100644 --- a/net-analyzer/Manifest.gz +++ b/net-analyzer/Manifest.gz diff --git a/net-analyzer/zabbix/Manifest b/net-analyzer/zabbix/Manifest index 9bfcf2439ad1..f68fb5730473 100644 --- a/net-analyzer/zabbix/Manifest +++ b/net-analyzer/zabbix/Manifest @@ -20,24 +20,35 @@ AUX zabbix-server.service 429 BLAKE2B 1727ad52441b8e1ef31ee0f7faaa9d9964ee4ca5e2 AUX zabbix-server.tmpfiles 35 BLAKE2B 98e917ef03bd6dc5d73e5cbdb140c7e115c7593d5cebf2df9bf3d15713b16c6a44b165a3f68fd36a9119163144a2761457d16ce318bd094ed76ae6040c8b09df SHA512 3c63a2791e6ac77cb3144eb47a275cc8748f5c8943a076052300d6964994b95b18d60f504584fdcb683739dc514261402895e3f30ae2fbdb218acbc42c3d72df DIST zabbix-4.0.48.tar.gz 17895197 BLAKE2B 0a0b43084ab2babf305330d46f0841f741d1d7df3581602ee35e9be11c07210cd2d3e3779fb05c77ccaee0734f78217fbe8a5fc7c52246d3fbca00cf1c56487f SHA512 6dc403bcd9ec1747473f64f82e919aa196f35a2f2b8006ed9dcf114e10c4f542ae61cd86cd80c1c6a043b32281e1263c9a67acc2909265391777ab71358a7e5a DIST zabbix-4.0.49.tar.gz 17902486 BLAKE2B 01338b31507b70d053a0b8254d7a5249c8e42f40a4b67d4368160e4815eb9d5fa3cd23e5495805ca51e9135b95110824abaafd9d58a6b3fcb0622a1a0c14ec2c SHA512 630480875d4b0bf2666cc8717ad59001d6f01940488e7cd0c1e0cf44ca6bf9fa7d73dfcf80a3a0158d445c0118c1c3f09fb69bb4bfb471118f9d87b1f8743ba1 +DIST zabbix-4.0.50.tar.gz 17902204 BLAKE2B d03a1703fe9cdaff6c50479f1ad9d55d3978aaaa5819dee5561bd3a06e9e03e8ed446fdc816a5a4eaa1f67a58a1cd08a4edf38df184086d97f7f9af16aff0ffc SHA512 df744280be35ccc895e48e292c0358fafd5218ee4a205fd03c75887513203839b5ae36755700e957443752970b12f8981e04e8d5c391728af4f9759969765f45 DIST zabbix-5.0.37-go-deps.tar.xz 27507708 BLAKE2B 3f682c8cd377c47e5c812a5d9cd0ed75c06dd29df4bd75b75d4fd67812de9bba11d17150fe3fdde3569f36519d204d0864e450cea9eebbc8d791148fd3d70deb SHA512 4794e5ff4a37ed3771788add433222b05e2477106a914909358af6ef8bbcb1b0b55c5fb1afdf0e572ca361edb3dbe7f041a11f8adf493b3ac22b5e9252f63fb8 DIST zabbix-5.0.37.tar.gz 21815459 BLAKE2B c357ce0f3c3a90e80f9ddd939d8295356c4d2d7f27391a0a67c8e08f7d559a8fa40d9d4ccd81cb7fc7f6d0d9a250573ab53cb33c367e69d9813c39fe38a202e9 SHA512 5e9a8351a2e34864629ee47458275c0921da461a9c2a320574c763476f15c1399fb6dd21eb578d94a7ea9055dc8750f54cf1aa9ecf5e438bae997fc59ce1637f DIST zabbix-5.0.38-go-deps.tar.xz 27498720 BLAKE2B 2ce7066ea6738a8153c44df79298a18eb4bacc0c3b59c3fb571f07e6d9069afc1d591b8e4b2e4a8ec6e087412082732926620b76f898fed31bff4e39468a03c4 SHA512 d04db567ab307d66328041ea24e20ec2147213cbac7e26701a3c6c55d778015da941fb43027077d9d1b3908b01409da28a9f0d4e17febb5e885c334e87c676ad DIST zabbix-5.0.38.tar.gz 21820861 BLAKE2B 08bb13254eeba65ec5f93c593d50b75a9afdbc7a4d42c9684744e527d73174e485c56bd2004a366dfd430376d39c101e20ee93bf3a258217b1a324d97f2e36fa SHA512 17297ddedc58577b8cb2c0b5fda9383bd2a78afc2fbbf210b3c0224fb230e8b2e2bfba7f78853737dd2e768bb4dc3db31975a0274380c6984fa7962f8a2c6474 +DIST zabbix-5.0.39-go-deps.tar.xz 27798636 BLAKE2B ba01a443170fef0a1a1014c2921fa8158fd107dd6bd797c09dfc916143da64c91c3251a1e900b25286a6d6828981a1b6fe025f720b94cb65f323811c307508ae SHA512 26536fbfbe9dc9a5ff5fd6923e6fe2750624b32f5bbfd308d05ac2f4fd03600eb529b5b72836f596176e2e7ffaa56c51df9f2a3259658b63e033585234623bbd +DIST zabbix-5.0.39.tar.gz 21823775 BLAKE2B 9e77b936644de0f200bdf4142ddd0a361f825c5b0eeb44f02e42e8ca72da3c0f02d13bac44a06b46ca4cc2fb570b7d6f142295e9bd098b5a89782a79f08cd03f SHA512 f175a911ee6c26ff6dcc9f94173924986055fd08c69465e7b73f5416fe05189f58584766f68748ea41ee52ee1dcc38da764bae34a349f5b2066889c61d6a572b DIST zabbix-6.0.21-go-deps.tar.xz 17966972 BLAKE2B 829fa0054e17972c8b128f8f87a3136e8933be3bdd920992d72f09fd7e4c0282e036d81850c7fcfff2979e8ddb656b8d158601e3955204100be782ed6ed972f3 SHA512 27c7c2c06a02190bd04a3d541ec9c08cc7287bd7c090c6cec59e9faaa8f8dc81c4ed2d3375275195a987584079424903bbfb3b4304852174ac08fd03d06b7cdd DIST zabbix-6.0.21.tar.gz 42294969 BLAKE2B 0928695a5f2729765a5b1fa31df410d585b50ef40a9d8379d6243c256c88234ac916bfaf13f62a8e28bb8fb4be48e83c1aecfd01f66dc45d4e25a20761d8ef82 SHA512 3fe667a68ecf86de479facdd373557425bd3734debd58113fface810171583fc05adb24662e5fe3b0b447492b2b79654196313acb2950bbd0686a86e4c2d59b1 DIST zabbix-6.0.22-go-deps.tar.xz 17998956 BLAKE2B 119760405c8ca9d2ccd35d18ec76b32d87109dcf24abbd64e56ad63faea0491a2ef433e84468c91a9b9f11bbdd0dfcc15b5590de64c3259c028da1e5c97f1f48 SHA512 0bb50ca3a6c8d21356a963572189fc55565dc061638067eb4ae6986d68de32989d48fb63dc3165f6b965f80c296da5d082b61383229a5003c7232387011cabed DIST zabbix-6.0.22.tar.gz 42590907 BLAKE2B bba7911a24b00827c58d84938b5786d07f1eb44cbcad94cddf68b484ac9a2f514beb60225d006b8cefc5bbf92e51da27f26d9f6681e10f6322ed0841394e8d9d SHA512 d26903d6272e22dd960d3bac5d93857de09a9f64a91e542a43fe1169ed1a7d7fbcf69975d152a227028ebbeb250cd0dd96501d15cbd7c8f7bdd7222a0b97a2a2 +DIST zabbix-6.0.23-go-deps.tar.xz 18007028 BLAKE2B 8be3e80dd1ac8cdb9f534adb3833732ec2e96cc38617c48e46fb98d2ae91badd2fca2277720db5f55774e533b47dc9726c1fceda5ec46191409cb052fa9461f4 SHA512 0f32e2996e819bf798ddad3c5381873ba0d9d0713ec9ee39c92d9c9280b28d433a58d489da39b18e29419d5cc3f76551bfacd6f0ca3b841e43b03158441c8952 +DIST zabbix-6.0.23.tar.gz 42896964 BLAKE2B 7b2529b16c706fed07d630965b9da833acb605315c178e48d2fcc7bd52dc6df71777e15f6fda805e1e65c5806a7c6dcbdd6ef4c71acb7a089df39279236711e1 SHA512 baaa65ef8715182f5e2b499ff15e0fa158f6202280b52190b7ef9454251292fdd41ad0cf11cf2658e1ca6fbf08d41295c97eb7bace8baef3f86fc50f7961623b DIST zabbix-6.4.6-go-deps.tar.xz 20617588 BLAKE2B e58a3e119753b60710077179161bc2796a8d775042ff14a8b2b4f1dc9f6da06e9839e8680fdb0e380bde59807f17bc1110a5593b9c56d906a212278dbbcdb382 SHA512 289e1e268ba49ca5ab027b15a5fa1e0c3d43ae14238ed793224f3a7a51a8558501455490a18d2a05dea00ffc5e8946039a1da5ba64da8f36df7fbc88585f2389 DIST zabbix-6.4.6.tar.gz 43744978 BLAKE2B e9c315425365380f6206e508aeb8f48070e830aed4f9d8506f8d8e696fdef673d3242d0e50763933cab604e9d82663f8efc94e54ba3fb237843578be998a7895 SHA512 f343441fb301d05165945ce355e752ce3638d4b12d99dc0eaaed8f70122cddb37a638e274ce999fcee0e1afc9e656ec771d0a208c08d1898999ea24338d8325d DIST zabbix-6.4.7-go-deps.tar.xz 20645004 BLAKE2B 49902be533dcf0ccc283f208e5edccf5b5e0afaf501f2a1fe2ae19c60bc603bba4a812a676080044b26eea9f72886c44444fcd4f4471074ad8f726fc4b854f94 SHA512 1e9b89f1c83361c2ef83d589560c64428e62628330ac3e224f8e80f24fc47a38df05d60eca448fa8d5d1ba0c9ce5d93348be858d4e03d7f205b75b6bbf7ef11a DIST zabbix-6.4.7.tar.gz 44036704 BLAKE2B 0ebd9e4393746469d44a0c4e6eddb2721a3a82b9df5a6388a0eed6d6f685ff983d9949eb41fa71e8982cad9f2c61da141beac55bd2fe18c0a55227a5ddcd0fd8 SHA512 6296ac5873ec4d6c92ff4a89e429ee28645b61c181e1cf5d98612b8d4536a4196baa52c8aaaa7a9ba02f98301f73b3d982a15692a9750f61326968c01a02f7a2 +DIST zabbix-6.4.8-go-deps.tar.xz 20645996 BLAKE2B 59e7349fd18ffa76dbb7207b649aad8ebf767423085b603b2a677ad680b1dce4c7474e4892d11df0aa38a7c0b63e3f3944bf612dbbc3eebef6e995220dea4a60 SHA512 a8860440010f85c12325048a3590a0a594af151566b40d88a02656469e2f46a9988fa4c21c6582bcaf37aa096dab9b06d08a45cbba52736732905744c4996d97 +DIST zabbix-6.4.8.tar.gz 44165922 BLAKE2B ac01f9fc1546a936bc57d2c97da2ec95bdf6b467d24a4ce6f08d34a40a94725a7f64c62253c1386e58ea601f0d739d8276713a16d0f35a4d9746d68cda21d0af SHA512 712e9f3fdb772475137c7238e8ca26f510180c147b7aa74b29567033f62d4beb00275b96aaf05c978fec341b08c82102ecf1976a5e8af257e848ae3974a6fec9 EBUILD zabbix-4.0.48.ebuild 9473 BLAKE2B 64dc377510b3c302c2dbff46e91fee4703f5160818b60d4b65c9210b9ded6a70b8e464385f6f57b431b3b2dcb3134faac6f922b847aca576c9ba5d7afa26cbbd SHA512 f8370f98efdf8132604747672756e9bdaf2dd9492d433528ee764e5dc345ef2a48a816867567981489f744ade8175d8d16498d7d814efc374b76143753d78181 EBUILD zabbix-4.0.49.ebuild 9475 BLAKE2B bb4ae6c9f45ef2ed0aef21ae811f616f5291ffd50beb14c691fa113483123e391024e490b88fafa538adf93aa595e3e9126c92c666dabb4fd1ad4566e16ab556 SHA512 822bc6e3309999df1b68cae6e572563b621352ad4a70f683ab28876ec5384fd56721fad612ce411f6d25c270b7ca228857b7894efd1c49a48131f7bb68b0d3ed +EBUILD zabbix-4.0.50.ebuild 9475 BLAKE2B bb4ae6c9f45ef2ed0aef21ae811f616f5291ffd50beb14c691fa113483123e391024e490b88fafa538adf93aa595e3e9126c92c666dabb4fd1ad4566e16ab556 SHA512 822bc6e3309999df1b68cae6e572563b621352ad4a70f683ab28876ec5384fd56721fad612ce411f6d25c270b7ca228857b7894efd1c49a48131f7bb68b0d3ed EBUILD zabbix-5.0.37.ebuild 10211 BLAKE2B b3d83063fd0eede55297bbf1f8abf508552c8ddeedec6258059535f25e0d3782a0c71cceb41927b940955f280aa62a0199384e5809fe545fdc2dcf11f3198fd8 SHA512 65be7901db65457233cd531f5f9c70a4c790af35d943cb3c19a17066a4e70fddfbcab6daa8129b8ef87cda067ec79fd1998e63b5ee1855d6e1ad025fc4d16d86 EBUILD zabbix-5.0.38.ebuild 10213 BLAKE2B ae48266f797d9cd21b1755736e18f8f989fc8f8aed716bb9f0c07004e9b0d09ced4c6aa8eab1085e735908908d97a458796719e99cbfb64c00574557aa31c91c SHA512 c010a156388b85a8ffe39a96664a050ca8254a7d6c1135c66283efa92ea6c9b05a36306c7a37bc3c36d804b6c160c17de5889d3050a64715c6d0d656a174ed23 +EBUILD zabbix-5.0.39.ebuild 10213 BLAKE2B ae48266f797d9cd21b1755736e18f8f989fc8f8aed716bb9f0c07004e9b0d09ced4c6aa8eab1085e735908908d97a458796719e99cbfb64c00574557aa31c91c SHA512 c010a156388b85a8ffe39a96664a050ca8254a7d6c1135c66283efa92ea6c9b05a36306c7a37bc3c36d804b6c160c17de5889d3050a64715c6d0d656a174ed23 EBUILD zabbix-6.0.21.ebuild 10304 BLAKE2B e1d97c6370841c2c5e5e398f14b554b8dc52fe6b9e300815c4beaf431ce3cc7f2a0e907bd97bb660a906a02fdc0249c22840bbf689f51a9497e4e8001fe3f76c SHA512 0ace52bdf3dc46d86989de727f7861d272a43b6d7dfda3958e5ae1c60e7847081cd6e6f92a76f32eb60b4d22634f211531fc92ca843b2d135b488c562bb2ecb8 EBUILD zabbix-6.0.22.ebuild 10306 BLAKE2B 154a523e599b49e096108a039167055406c49b3e105db12b9b2f8ca642e8c700ad8ca350eae501c78fdfbc44ec84fab1ca86cc88d76670c1e45e35e1580bfaf4 SHA512 b9cc74be94b36c1be64c9a9b286a6c48e465ebdb29f449e9db9f64ebb1498e722addd841137bd108f0905cc556a646777987859826a14732bd5a3221cf78f788 +EBUILD zabbix-6.0.23.ebuild 10306 BLAKE2B 154a523e599b49e096108a039167055406c49b3e105db12b9b2f8ca642e8c700ad8ca350eae501c78fdfbc44ec84fab1ca86cc88d76670c1e45e35e1580bfaf4 SHA512 b9cc74be94b36c1be64c9a9b286a6c48e465ebdb29f449e9db9f64ebb1498e722addd841137bd108f0905cc556a646777987859826a14732bd5a3221cf78f788 EBUILD zabbix-6.4.6.ebuild 10302 BLAKE2B d50a42379d68ebc24961c882fdba705e063cb9dd501f977e47f0563db22958b40e4e74e13e2cc5adab8840ed6f2988e7291380a77960464401e1d958589792b1 SHA512 02c5f0b3cc8ddc76dbfea09a74e9c8afeee76d0e3b088c9032b4663ce362396a35804e36db3894502da9114be7b03eaf8497a08c6744fcffd54f038b03483981 EBUILD zabbix-6.4.7.ebuild 10355 BLAKE2B 067a8d0f9c6bd868055ccb73b7e38ca6f1de505c59423be025de7c15a6aa26a2d6e8df4f9d52a68440dba0bfe2501f40a11fbed6f34679284ed9c27a6d90750b SHA512 ce64072648c55fe071728350a60f95b451acf99f95141219776337e59ed7e23a00f9d2fe43da11130a9f21f17b488f0c8cd972114ce2da6550b33ece48384944 +EBUILD zabbix-6.4.8.ebuild 10355 BLAKE2B 067a8d0f9c6bd868055ccb73b7e38ca6f1de505c59423be025de7c15a6aa26a2d6e8df4f9d52a68440dba0bfe2501f40a11fbed6f34679284ed9c27a6d90750b SHA512 ce64072648c55fe071728350a60f95b451acf99f95141219776337e59ed7e23a00f9d2fe43da11130a9f21f17b488f0c8cd972114ce2da6550b33ece48384944 MISC metadata.xml 1655 BLAKE2B 46ab1f5adaff6069890380b23a6edaf8f0f7380ffc4a320f17df52f2e59867bdcf09633d9c6e242434919d3512d557c2f623d2826b1453424c43dc0b0ee0a262 SHA512 62e5a8853c13dac034360bd1a7b61987b548641b76860f05a8f75181b8d8029e06bc9cbf136d42836e714cf0c193b04a589d214a7864d607bf93dd97066f1a70 diff --git a/net-analyzer/zabbix/zabbix-4.0.50.ebuild b/net-analyzer/zabbix/zabbix-4.0.50.ebuild new file mode 100644 index 000000000000..249e6dc9f35f --- /dev/null +++ b/net-analyzer/zabbix/zabbix-4.0.50.ebuild @@ -0,0 +1,368 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# needed to make webapp-config dep optional +WEBAPP_OPTIONAL="yes" +inherit webapp java-pkg-opt-2 systemd toolchain-funcs tmpfiles user-info + +DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers" +HOMEPAGE="https://www.zabbix.com/" +MY_P=${P/_/} +MY_PV=${PV/_/} +SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/$(ver_cut 1-2)/${P}.tar.gz" +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="~amd64 ~x86" +IUSE="+agent curl frontend gnutls ipv6 java ldap libxml2 mbedtls mysql odbc openipmi +openssl oracle +postgres proxy selinux server snmp sqlite ssh static xmpp" +REQUIRED_USE="|| ( agent frontend proxy server ) + ?? ( gnutls mbedtls openssl ) + proxy? ( ^^ ( mysql oracle postgres sqlite ) ) + server? ( ^^ ( mysql oracle postgres ) !sqlite ) + static? ( !oracle !snmp )" + +COMMON_DEPEND=" + curl? ( net-misc/curl ) + gnutls? ( net-libs/gnutls:0= ) + java? ( >=virtual/jdk-1.8:* ) + ldap? ( + =dev-libs/cyrus-sasl-2* + net-libs/gnutls:= + net-nds/openldap:= + ) + libxml2? ( dev-libs/libxml2 ) + mbedtls? ( net-libs/mbedtls:0= ) + mysql? ( dev-db/mysql-connector-c:= ) + odbc? ( dev-db/unixODBC ) + openipmi? ( sys-libs/openipmi ) + openssl? ( dev-libs/openssl:=[-bindist(-)] ) + oracle? ( dev-db/oracle-instantclient[odbc,sdk] ) + postgres? ( dev-db/postgresql:* ) + proxy? ( + dev-libs/libevent:= + sys-libs/zlib + ) + server? ( + dev-libs/libevent:= + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp:= ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) + xmpp? ( dev-libs/iksemel ) +" + +RDEPEND="${COMMON_DEPEND} + acct-group/zabbix + acct-user/zabbix + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( + dev-libs/libpcre + net-analyzer/fping[suid] + ) + selinux? ( sec-policy/selinux-zabbix ) + server? ( + app-admin/webapp-config + 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 + fi + + if use frontend; then + webapp_pkg_setup + fi + + 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 gnutls) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mbedtls) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with openssl) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) \ + $(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-r1.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + newtmpfiles "${FILESDIR}"/zabbix-server.tmpfiles zabbix-server.conf + fi + + if use proxy; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_proxy.conf + fperms 0640 /etc/zabbix/zabbix_proxy.conf + fowners root:zabbix /etc/zabbix/zabbix_proxy.conf + + newinitd "${FILESDIR}"/zabbix-proxy.init zabbix-proxy + + dosbin src/zabbix_proxy/zabbix_proxy + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-proxy.service + newtmpfiles "${FILESDIR}"/zabbix-proxy.tmpfiles zabbix-proxy.conf + fi + + if use agent; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_agentd.conf + fperms 0640 /etc/zabbix/zabbix_agentd.conf + fowners root:zabbix /etc/zabbix/zabbix_agentd.conf + + newinitd "${FILESDIR}"/zabbix-agentd.init zabbix-agentd + + dosbin src/zabbix_agent/zabbix_agentd + dobin \ + src/zabbix_sender/zabbix_sender \ + src/zabbix_get/zabbix_get + + systemd_dounit "${FILESDIR}"/zabbix-agentd.service + newtmpfiles "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.conf + fi + + 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-1.2.9.jar \ + src/zabbix_java/lib/logback-console.xml \ + src/zabbix_java/lib/logback-core-1.2.9.jar \ + src/zabbix_java/lib/logback.xml \ + src/zabbix_java/lib/android-json-4.3_r3.1.jar \ + src/zabbix_java/lib/slf4j-api-1.7.32.jar + newinitd "${FILESDIR}"/zabbix-jmx-proxy.init zabbix-jmx-proxy + newconfd "${FILESDIR}"/zabbix-jmx-proxy.conf zabbix-jmx-proxy + fi +} + +pkg_postinst() { + if use server || use proxy ; then + elog + elog "You may need to configure your database for Zabbix" + elog "if you have not already done so." + elog + + zabbix_homedir=$(egethome zabbix) + if [ -n "${zabbix_homedir}" ] && \ + [ "${zabbix_homedir}" != "/var/lib/zabbix/home" ]; then + ewarn + ewarn "The user 'zabbix' should have his homedir changed" + ewarn "to /var/lib/zabbix/home if you want to use" + ewarn "custom alert scripts." + ewarn + ewarn "A real homedir might be needed for configfiles" + ewarn "for custom alert scripts (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 + tmpfiles_process zabbix-server.conf + + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n <nodeid>" + elog + elog "This will convert database data for use with Node ID" + elog "and also adds a local node." + elog + fi + + if use proxy; then + tmpfiles_process zabbix-proxy.conf + fi + + if use agent; then + tmpfiles_process zabbix-agentd.conf + fi + + elog "--" + elog + elog "You may need to add these lines to /etc/services:" + elog + elog "zabbix-agent 10050/tcp Zabbix Agent" + elog "zabbix-agent 10050/udp Zabbix Agent" + elog "zabbix-trapper 10051/tcp Zabbix Trapper" + elog "zabbix-trapper 10051/udp Zabbix Trapper" + elog + + if use server || use proxy ; then + # check for fping + fping_perms=$(stat -c %a /usr/sbin/fping 2>/dev/null) + case "${fping_perms}" in + 4[157][157][157]) + ;; + *) + ewarn + ewarn "If you want to use the checks 'icmpping' and 'icmppingsec'," + ewarn "you have to make /usr/sbin/fping setuid root and executable" + ewarn "by everyone. Run the following command to fix it:" + ewarn + ewarn " chmod u=rwsx,g=rx,o=rx /usr/sbin/fping" + ewarn + ewarn "Please be aware that this might impose a security risk," + ewarn "depending on the code quality of fping." + ewarn + ;; + esac + fi +} + +pkg_prerm() { + (use frontend || use server) && webapp_pkg_prerm +} diff --git a/net-analyzer/zabbix/zabbix-5.0.39.ebuild b/net-analyzer/zabbix/zabbix-5.0.39.ebuild new file mode 100644 index 000000000000..391cccd87bd4 --- /dev/null +++ b/net-analyzer/zabbix/zabbix-5.0.39.ebuild @@ -0,0 +1,400 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# To create the go modules tarball: +# cd src/go +# GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw +# tar -acf zabbix-${PV}-go-deps.tar.xz go-mod + +EAPI=8 + +GO_OPTIONAL="yes" +# needed to make webapp-config dep optional +WEBAPP_OPTIONAL="yes" +inherit webapp java-pkg-opt-2 systemd tmpfiles toolchain-funcs go-module user-info + +DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers" +HOMEPAGE="https://www.zabbix.com/" +MY_P=${P/_/} +MY_PV=${PV/_/} +SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/$(ver_cut 1-2)/${P}.tar.gz + agent2? ( https://dev.gentoo.org/~fordfrog/distfiles/${P}-go-deps.tar.xz ) +" + +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="~amd64 ~x86" +IUSE="+agent +agent2 curl frontend gnutls ipv6 java ldap libxml2 mysql odbc openipmi +openssl oracle +postgres proxy selinux server snmp sqlite ssh static" +REQUIRED_USE="|| ( agent agent2 frontend proxy server ) + ?? ( gnutls openssl ) + agent2? ( !gnutls ) + proxy? ( ^^ ( mysql oracle postgres sqlite ) ) + server? ( ^^ ( mysql oracle postgres ) !sqlite ) + static? ( !oracle !snmp )" + +COMMON_DEPEND=" + curl? ( net-misc/curl ) + gnutls? ( net-libs/gnutls:0= ) + java? ( >=virtual/jdk-1.8:* ) + ldap? ( + =dev-libs/cyrus-sasl-2* + net-libs/gnutls:= + net-nds/openldap:= + ) + libxml2? ( dev-libs/libxml2 ) + mysql? ( dev-db/mysql-connector-c:= ) + odbc? ( dev-db/unixODBC ) + openipmi? ( sys-libs/openipmi ) + openssl? ( dev-libs/openssl:=[-bindist(-)] ) + oracle? ( dev-db/oracle-instantclient[odbc,sdk] ) + postgres? ( dev-db/postgresql:* ) + proxy? ( + dev-libs/libevent:= + sys-libs/zlib + ) + server? ( + dev-libs/libevent:= + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp:= ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) +" + +RDEPEND="${COMMON_DEPEND} + acct-group/zabbix + acct-user/zabbix + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( + dev-libs/libpcre + net-analyzer/fping[suid] + ) + selinux? ( sec-policy/selinux-zabbix ) + server? ( + app-admin/webapp-config + 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 + agent2? ( + >=dev-lang/go-1.12 + app-arch/unzip + ) +" + +# upstream tests fail for agent2 +RESTRICT="test" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" + "${FILESDIR}/${PN}-5.0.22-system.sw.packages.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + fi + + if use frontend; then + webapp_pkg_setup + fi + + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + econf \ + $(use_enable agent) \ + $(use_enable agent2) \ + $(use_enable ipv6) \ + $(use_enable java) \ + $(use_enable proxy) \ + $(use_enable server) \ + $(use_enable static) \ + $(use_with curl libcurl) \ + $(use_with gnutls) \ + $(use_with ldap) \ + $(use_with libxml2) \ + $(use_with mysql) \ + $(use_with odbc unixodbc) \ + $(use_with openipmi openipmi) \ + $(use_with openssl) \ + $(use_with oracle) \ + $(use_with postgres postgresql) \ + $(use_with snmp net-snmp) \ + $(use_with sqlite sqlite3) \ + $(use_with ssh ssh2) +} + +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-r1.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + newtmpfiles "${FILESDIR}"/zabbix-server.tmpfiles zabbix-server.conf + fi + + if use proxy; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_proxy.conf + fperms 0640 /etc/zabbix/zabbix_proxy.conf + fowners root:zabbix /etc/zabbix/zabbix_proxy.conf + + newinitd "${FILESDIR}"/zabbix-proxy.init zabbix-proxy + + dosbin src/zabbix_proxy/zabbix_proxy + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-proxy.service + newtmpfiles "${FILESDIR}"/zabbix-proxy.tmpfiles zabbix-proxy.conf + fi + + if use agent; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_agentd.conf + fperms 0640 /etc/zabbix/zabbix_agentd.conf + fowners root:zabbix /etc/zabbix/zabbix_agentd.conf + + newinitd "${FILESDIR}"/zabbix-agentd.init zabbix-agentd + + dosbin src/zabbix_agent/zabbix_agentd + dobin \ + src/zabbix_sender/zabbix_sender \ + src/zabbix_get/zabbix_get + + systemd_dounit "${FILESDIR}"/zabbix-agentd.service + newtmpfiles "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.conf + fi + + if use agent2; then + insinto /etc/zabbix + doins "${S}"/src/go/conf/zabbix_agent2.conf + fperms 0640 /etc/zabbix/zabbix_agent2.conf + fowners root:zabbix /etc/zabbix/zabbix_agent2.conf + + newinitd "${FILESDIR}"/zabbix-agent2.init zabbix-agent2 + + dosbin src/go/bin/zabbix_agent2 + + systemd_dounit "${FILESDIR}"/zabbix-agent2.service + newtmpfiles "${FILESDIR}"/zabbix-agent2.tmpfiles zabbix-agent2.conf + fi + + fowners root:zabbix /etc/zabbix + fowners zabbix:zabbix \ + /var/lib/zabbix \ + /var/lib/zabbix/home \ + /var/lib/zabbix/scripts \ + /var/lib/zabbix/alertscripts \ + /var/lib/zabbix/externalscripts \ + /var/log/zabbix + fperms 0750 \ + /etc/zabbix \ + /var/lib/zabbix \ + /var/lib/zabbix/home \ + /var/lib/zabbix/scripts \ + /var/lib/zabbix/alertscripts \ + /var/lib/zabbix/externalscripts \ + /var/log/zabbix + + dodoc README INSTALL NEWS ChangeLog \ + conf/zabbix_agentd.conf \ + conf/zabbix_proxy.conf \ + conf/zabbix_agentd/userparameter_examples.conf \ + conf/zabbix_agentd/userparameter_mysql.conf \ + conf/zabbix_server.conf + + if use frontend; then + webapp_src_preinst + cp -R ui/* "${D}/${MY_HTDOCSDIR}" + webapp_configfile \ + "${MY_HTDOCSDIR}"/include/db.inc.php \ + "${MY_HTDOCSDIR}"/include/config.inc.php + webapp_src_install + fi + + if use java; then + dodir \ + /${ZABBIXJAVA_BASE} \ + /${ZABBIXJAVA_BASE}/bin \ + /${ZABBIXJAVA_BASE}/lib + keepdir /${ZABBIXJAVA_BASE} + exeinto /${ZABBIXJAVA_BASE}/bin + doexe src/zabbix_java/bin/zabbix-java-gateway-${MY_PV}.jar + exeinto /${ZABBIXJAVA_BASE}/lib + doexe \ + src/zabbix_java/lib/logback-classic-1.2.9.jar \ + src/zabbix_java/lib/logback-console.xml \ + src/zabbix_java/lib/logback-core-1.2.9.jar \ + src/zabbix_java/lib/logback.xml \ + src/zabbix_java/lib/android-json-4.3_r3.1.jar \ + src/zabbix_java/lib/slf4j-api-1.7.32.jar + newinitd "${FILESDIR}"/zabbix-jmx-proxy.init zabbix-jmx-proxy + newconfd "${FILESDIR}"/zabbix-jmx-proxy.conf zabbix-jmx-proxy + fi +} + +pkg_postinst() { + if use server || use proxy ; then + elog + elog "You may need to configure your database for Zabbix" + elog "if you have not already done so." + elog + + zabbix_homedir=$(egethome zabbix) + if [ -n "${zabbix_homedir}" ] && \ + [ "${zabbix_homedir}" != "/var/lib/zabbix/home" ]; then + ewarn + ewarn "The user 'zabbix' should have his homedir changed" + ewarn "to /var/lib/zabbix/home if you want to use" + ewarn "custom alert scripts." + ewarn + ewarn "A real homedir might be needed for configfiles" + ewarn "for custom alert scripts." + ewarn + ewarn "To change the homedir use:" + ewarn " usermod -d /var/lib/zabbix/home zabbix" + ewarn + fi + fi + + if use server; then + tmpfiles_process zabbix-server.conf + + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n <nodeid>" + elog + elog "This will convert database data for use with Node ID" + elog "and also adds a local node." + elog + fi + + if use proxy; then + tmpfiles_process zabbix-proxy.conf + fi + + if use agent; then + tmpfiles_process zabbix-agentd.conf + fi + + if use agent2; then + tmpfiles_process zabbix-agent2.conf + fi + + elog "--" + elog + elog "You may need to add these lines to /etc/services:" + elog + elog "zabbix-agent 10050/tcp Zabbix Agent" + elog "zabbix-agent 10050/udp Zabbix Agent" + elog "zabbix-trapper 10051/tcp Zabbix Trapper" + elog "zabbix-trapper 10051/udp Zabbix Trapper" + elog + + if use server || use proxy ; then + # check for fping + fping_perms=$(stat -c %a /usr/sbin/fping 2>/dev/null) + case "${fping_perms}" in + 4[157][157][157]) + ;; + *) + ewarn + ewarn "If you want to use the checks 'icmpping' and 'icmppingsec'," + ewarn "you have to make /usr/sbin/fping setuid root and executable" + ewarn "by everyone. Run the following command to fix it:" + ewarn + ewarn " chmod u=rwsx,g=rx,o=rx /usr/sbin/fping" + ewarn + ewarn "Please be aware that this might impose a security risk," + ewarn "depending on the code quality of fping." + ewarn + ;; + esac + fi +} + +pkg_prerm() { + (use frontend || use server) && webapp_pkg_prerm +} diff --git a/net-analyzer/zabbix/zabbix-6.0.23.ebuild b/net-analyzer/zabbix/zabbix-6.0.23.ebuild new file mode 100644 index 000000000000..fe2ed884f7c1 --- /dev/null +++ b/net-analyzer/zabbix/zabbix-6.0.23.ebuild @@ -0,0 +1,403 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# To create the go modules tarball: +# cd src/go +# GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw +# tar -acf zabbix-${PV}-go-deps.tar.xz go-mod + +EAPI=8 + +GO_OPTIONAL="yes" +# needed to make webapp-config dep optional +WEBAPP_OPTIONAL="yes" +inherit webapp java-pkg-opt-2 systemd tmpfiles toolchain-funcs go-module user-info + +DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers" +HOMEPAGE="https://www.zabbix.com/" +MY_P=${P/_/} +MY_PV=${PV/_/} +SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/$(ver_cut 1-2)/${P}.tar.gz + agent2? ( https://dev.gentoo.org/~fordfrog/distfiles/${P}-go-deps.tar.xz ) +" + +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="~amd64 ~x86" +IUSE="agent +agent2 curl frontend gnutls ipv6 java ldap libxml2 mysql odbc openipmi +openssl oracle +postgres proxy selinux server snmp sqlite ssh static" +REQUIRED_USE="|| ( agent agent2 frontend proxy server ) + ?? ( gnutls openssl ) + agent2? ( !gnutls ) + proxy? ( ^^ ( mysql oracle postgres sqlite ) ) + server? ( ^^ ( mysql oracle postgres ) !sqlite ) + static? ( !oracle !snmp )" + +COMMON_DEPEND=" + curl? ( net-misc/curl ) + gnutls? ( net-libs/gnutls:0= ) + java? ( >=virtual/jdk-1.8:* ) + ldap? ( + =dev-libs/cyrus-sasl-2* + net-libs/gnutls:= + net-nds/openldap:= + ) + libxml2? ( dev-libs/libxml2 ) + mysql? ( dev-db/mysql-connector-c:= ) + odbc? ( dev-db/unixODBC ) + openipmi? ( sys-libs/openipmi ) + openssl? ( dev-libs/openssl:=[-bindist(-)] ) + oracle? ( dev-db/oracle-instantclient[odbc,sdk] ) + postgres? ( dev-db/postgresql:* ) + proxy? ( + dev-libs/libevent:= + sys-libs/zlib + ) + server? ( + dev-libs/libevent:= + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp:= ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) +" + +RDEPEND="${COMMON_DEPEND} + acct-group/zabbix + acct-user/zabbix + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( + dev-libs/libpcre2:= + net-analyzer/fping[suid] + ) + selinux? ( sec-policy/selinux-zabbix ) + server? ( + app-admin/webapp-config + dev-libs/libpcre2:= + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig + agent2? ( + >=dev-lang/go-1.12 + app-arch/unzip + ) +" + +# upstream tests fail for agent2 +RESTRICT="test" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" + "${FILESDIR}/${PN}-6.0.3-system.sw.packages.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + fi + + if use frontend; then + webapp_pkg_setup + fi + + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + local econf_args=( + --with-libpcre2 + "$(use_enable agent)" + "$(use_enable agent2)" + "$(use_enable ipv6)" + "$(use_enable java)" + "$(use_enable proxy)" + "$(use_enable server)" + "$(use_enable static)" + "$(use_with curl libcurl)" + "$(use_with gnutls)" + "$(use_with ldap)" + "$(use_with libxml2)" + "$(use_with mysql)" + "$(use_with odbc unixodbc)" + "$(use_with openipmi openipmi)" + "$(use_with openssl)" + "$(use_with oracle)" + "$(use_with postgres postgresql)" + "$(use_with snmp net-snmp)" + "$(use_with sqlite sqlite3)" + "$(use_with ssh ssh2)" + ) + + econf ${econf_args[@]} +} + +src_compile() { + if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then + emake AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" + fi +} + +src_install() { + local dirs=( + /etc/zabbix + /var/lib/zabbix + /var/lib/zabbix/home + /var/lib/zabbix/scripts + /var/lib/zabbix/alertscripts + /var/lib/zabbix/externalscripts + /var/log/zabbix + ) + + for dir in "${dirs[@]}"; do + keepdir "${dir}" + done + + if use server; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_server.conf + fperms 0640 /etc/zabbix/zabbix_server.conf + fowners root:zabbix /etc/zabbix/zabbix_server.conf + + newinitd "${FILESDIR}"/zabbix-server-r1.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + newtmpfiles "${FILESDIR}"/zabbix-server.tmpfiles zabbix-server.conf + fi + + if use proxy; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_proxy.conf + fperms 0640 /etc/zabbix/zabbix_proxy.conf + fowners root:zabbix /etc/zabbix/zabbix_proxy.conf + + newinitd "${FILESDIR}"/zabbix-proxy.init zabbix-proxy + + dosbin src/zabbix_proxy/zabbix_proxy + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-proxy.service + newtmpfiles "${FILESDIR}"/zabbix-proxy.tmpfiles zabbix-proxy.conf + fi + + if use agent; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_agentd.conf + fperms 0640 /etc/zabbix/zabbix_agentd.conf + fowners root:zabbix /etc/zabbix/zabbix_agentd.conf + + newinitd "${FILESDIR}"/zabbix-agentd.init zabbix-agentd + + dosbin src/zabbix_agent/zabbix_agentd + dobin \ + src/zabbix_sender/zabbix_sender \ + src/zabbix_get/zabbix_get + + systemd_dounit "${FILESDIR}"/zabbix-agentd.service + newtmpfiles "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.conf + fi + if use agent2; then + insinto /etc/zabbix + doins "${S}"/src/go/conf/zabbix_agent2.conf + fperms 0640 /etc/zabbix/zabbix_agent2.conf + fowners root:zabbix /etc/zabbix/zabbix_agent2.conf + keepdir /etc/zabbix/zabbix_agent2.d/plugins.d + + newinitd "${FILESDIR}"/zabbix-agent2.init zabbix-agent2 + + dosbin src/go/bin/zabbix_agent2 + + systemd_dounit "${FILESDIR}"/zabbix-agent2.service + newtmpfiles "${FILESDIR}"/zabbix-agent2.tmpfiles zabbix-agent2.conf + fi + + fowners root:zabbix /etc/zabbix + fowners zabbix:zabbix \ + /var/lib/zabbix \ + /var/lib/zabbix/home \ + /var/lib/zabbix/scripts \ + /var/lib/zabbix/alertscripts \ + /var/lib/zabbix/externalscripts \ + /var/log/zabbix + fperms 0750 \ + /etc/zabbix \ + /var/lib/zabbix \ + /var/lib/zabbix/home \ + /var/lib/zabbix/scripts \ + /var/lib/zabbix/alertscripts \ + /var/lib/zabbix/externalscripts \ + /var/log/zabbix + + dodoc README INSTALL NEWS ChangeLog \ + conf/zabbix_agentd.conf \ + conf/zabbix_proxy.conf \ + conf/zabbix_agentd/userparameter_examples.conf \ + conf/zabbix_agentd/userparameter_mysql.conf \ + conf/zabbix_server.conf + + if use frontend; then + webapp_src_preinst + cp -R ui/* "${D}/${MY_HTDOCSDIR}" + webapp_configfile \ + "${MY_HTDOCSDIR}"/include/db.inc.php \ + "${MY_HTDOCSDIR}"/include/config.inc.php + webapp_src_install + fi + + if use java; then + dodir \ + /${ZABBIXJAVA_BASE} \ + /${ZABBIXJAVA_BASE}/bin \ + /${ZABBIXJAVA_BASE}/lib + keepdir /${ZABBIXJAVA_BASE} + exeinto /${ZABBIXJAVA_BASE}/bin + doexe src/zabbix_java/bin/zabbix-java-gateway-"${MY_PV}".jar + exeinto /${ZABBIXJAVA_BASE}/lib + doexe \ + src/zabbix_java/lib/logback-classic-1.2.9.jar \ + src/zabbix_java/lib/logback-console.xml \ + src/zabbix_java/lib/logback-core-1.2.9.jar \ + src/zabbix_java/lib/logback.xml \ + src/zabbix_java/lib/android-json-4.3_r3.1.jar \ + src/zabbix_java/lib/slf4j-api-1.7.32.jar + newinitd "${FILESDIR}"/zabbix-jmx-proxy.init zabbix-jmx-proxy + newconfd "${FILESDIR}"/zabbix-jmx-proxy.conf zabbix-jmx-proxy + fi +} + +pkg_postinst() { + if use server || use proxy ; then + elog + elog "You may need to configure your database for Zabbix" + elog "if you have not already done so." + elog + + zabbix_homedir=$(egethome zabbix) + if [ -n "${zabbix_homedir}" ] && \ + [ "${zabbix_homedir}" != "/var/lib/zabbix/home" ]; then + ewarn + ewarn "The user 'zabbix' should have his homedir changed" + ewarn "to /var/lib/zabbix/home if you want to use" + ewarn "custom alert scripts." + ewarn + ewarn "A real homedir might be needed for configfiles" + ewarn "for custom alert scripts." + ewarn + ewarn "To change the homedir use:" + ewarn " usermod -d /var/lib/zabbix/home zabbix" + ewarn + fi + fi + + if use server; then + tmpfiles_process zabbix-server.conf + + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n <nodeid>" + elog + elog "This will convert database data for use with Node ID" + elog "and also adds a local node." + elog + fi + + if use proxy; then + tmpfiles_process zabbix-proxy.conf + fi + + if use agent; then + tmpfiles_process zabbix-agentd.conf + fi + + if use agent2; then + tmpfiles_process zabbix-agent2.conf + fi + + elog "--" + elog + elog "You may need to add these lines to /etc/services:" + elog + elog "zabbix-agent 10050/tcp Zabbix Agent" + elog "zabbix-agent 10050/udp Zabbix Agent" + elog "zabbix-trapper 10051/tcp Zabbix Trapper" + elog "zabbix-trapper 10051/udp Zabbix Trapper" + elog + + if use server || use proxy ; then + # check for fping + fping_perms=$(stat -c %a /usr/sbin/fping 2>/dev/null) + case "${fping_perms}" in + 4[157][157][157]) + ;; + *) + ewarn + ewarn "If you want to use the checks 'icmpping' and 'icmppingsec'," + ewarn "you have to make /usr/sbin/fping setuid root and executable" + ewarn "by everyone. Run the following command to fix it:" + ewarn + ewarn " chmod u=rwsx,g=rx,o=rx /usr/sbin/fping" + ewarn + ewarn "Please be aware that this might impose a security risk," + ewarn "depending on the code quality of fping." + ewarn + ;; + esac + fi +} + +pkg_prerm() { + (use frontend || use server) && webapp_pkg_prerm +} diff --git a/net-analyzer/zabbix/zabbix-6.4.8.ebuild b/net-analyzer/zabbix/zabbix-6.4.8.ebuild new file mode 100644 index 000000000000..30c139d2d3c5 --- /dev/null +++ b/net-analyzer/zabbix/zabbix-6.4.8.ebuild @@ -0,0 +1,404 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# To create the go modules tarball: +# cd src/go +# GOMODCACHE="${PWD}"/go-mod go mod download -modcacherw +# tar -acf zabbix-${PV}-go-deps.tar.xz go-mod + +EAPI=8 + +GO_OPTIONAL="yes" +# needed to make webapp-config dep optional +WEBAPP_OPTIONAL="yes" +inherit webapp java-pkg-opt-2 systemd tmpfiles toolchain-funcs go-module user-info + +DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers" +HOMEPAGE="https://www.zabbix.com/" +MY_P=${P/_/} +MY_PV=${PV/_/} +SRC_URI="https://cdn.zabbix.com/${PN}/sources/stable/$(ver_cut 1-2)/${P}.tar.gz + agent2? ( https://dev.gentoo.org/~fordfrog/distfiles/${P}-go-deps.tar.xz ) +" + +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +WEBAPP_MANUAL_SLOT="yes" +KEYWORDS="~amd64 ~x86" +IUSE="agent +agent2 curl frontend gnutls ipv6 java ldap libxml2 mysql odbc openipmi +openssl oracle +postgres proxy selinux server snmp sqlite ssh static" +REQUIRED_USE="|| ( agent agent2 frontend proxy server ) + ?? ( gnutls openssl ) + agent2? ( !gnutls ) + proxy? ( ^^ ( mysql oracle postgres sqlite ) ) + server? ( ^^ ( mysql oracle postgres ) !sqlite ) + static? ( !oracle !snmp )" + +COMMON_DEPEND=" + curl? ( net-misc/curl ) + gnutls? ( net-libs/gnutls:0= ) + java? ( >=virtual/jdk-1.8:* ) + ldap? ( + =dev-libs/cyrus-sasl-2* + net-libs/gnutls:= + net-nds/openldap:= + ) + libxml2? ( dev-libs/libxml2 ) + mysql? ( dev-db/mysql-connector-c:= ) + odbc? ( dev-db/unixODBC ) + openipmi? ( sys-libs/openipmi ) + openssl? ( dev-libs/openssl:=[-bindist(-)] ) + oracle? ( dev-db/oracle-instantclient[odbc,sdk] ) + postgres? ( dev-db/postgresql:* ) + proxy? ( + dev-libs/libevent:= + sys-libs/zlib + ) + server? ( + dev-libs/libevent:= + sys-libs/zlib + ) + snmp? ( net-analyzer/net-snmp:= ) + sqlite? ( dev-db/sqlite ) + ssh? ( net-libs/libssh2 ) +" + +RDEPEND="${COMMON_DEPEND} + acct-group/zabbix + acct-user/zabbix + java? ( >=virtual/jre-1.8:* ) + mysql? ( virtual/mysql ) + proxy? ( + dev-libs/libpcre2:= + net-analyzer/fping[suid] + ) + selinux? ( sec-policy/selinux-zabbix ) + server? ( + app-admin/webapp-config + dev-libs/libpcre2:= + net-analyzer/fping[suid] + ) + frontend? ( + app-admin/webapp-config + dev-lang/php:*[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode] + media-libs/gd[png] + virtual/httpd-php:* + mysql? ( dev-lang/php[mysqli] ) + odbc? ( dev-lang/php[odbc] ) + oracle? ( dev-lang/php[oci8-instant-client] ) + postgres? ( dev-lang/php[postgres] ) + sqlite? ( dev-lang/php[sqlite] ) + ) +" +DEPEND="${COMMON_DEPEND} + static? ( + curl? ( net-misc/curl[static-libs] ) + ldap? ( + =dev-libs/cyrus-sasl-2*[static-libs] + net-libs/gnutls[static-libs] + net-nds/openldap[static-libs] + ) + libxml2? ( dev-libs/libxml2[static-libs] ) + mysql? ( dev-db/mysql-connector-c[static-libs] ) + odbc? ( dev-db/unixODBC[static-libs] ) + postgres? ( dev-db/postgresql:*[static-libs] ) + sqlite? ( dev-db/sqlite[static-libs] ) + ssh? ( net-libs/libssh2 ) + ) +" +BDEPEND=" + virtual/pkgconfig + agent2? ( + >=dev-lang/go-1.12 + app-arch/unzip + ) +" + +# upstream tests fail for agent2 +RESTRICT="test" + +PATCHES=( + "${FILESDIR}/${PN}-4.0.18-modulepathfix.patch" + "${FILESDIR}/${PN}-3.0.30-security-disable-PidFile.patch" + "${FILESDIR}/${PN}-6.4.0-configure-sscanf.patch" + "${FILESDIR}/${PN}-6.4.6-clang16-build-fix.patch" +) + +S=${WORKDIR}/${MY_P} + +ZABBIXJAVA_BASE="opt/zabbix_java" + +pkg_setup() { + if use oracle; then + if [ -z "${ORACLE_HOME}" ]; then + eerror + eerror "The environment variable ORACLE_HOME must be set" + eerror "and point to the correct location." + eerror "It looks like you don't have Oracle installed." + eerror + die "Environment variable ORACLE_HOME is not set" + fi + fi + + if use frontend; then + webapp_pkg_setup + fi + + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + default +} + +src_configure() { + local econf_args=( + --with-libpcre2 + "$(use_enable agent)" + "$(use_enable agent2)" + "$(use_enable ipv6)" + "$(use_enable java)" + "$(use_enable proxy)" + "$(use_enable server)" + "$(use_enable static)" + "$(use_with curl libcurl)" + "$(use_with gnutls)" + "$(use_with ldap)" + "$(use_with libxml2)" + "$(use_with mysql)" + "$(use_with odbc unixodbc)" + "$(use_with openipmi openipmi)" + "$(use_with openssl)" + "$(use_with oracle)" + "$(use_with postgres postgresql)" + "$(use_with snmp net-snmp)" + "$(use_with sqlite sqlite3)" + "$(use_with ssh ssh2)" + ) + + econf ${econf_args[@]} +} + +src_compile() { + if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then + emake AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" + fi +} + +src_install() { + local dirs=( + /etc/zabbix + /var/lib/zabbix + /var/lib/zabbix/home + /var/lib/zabbix/scripts + /var/lib/zabbix/alertscripts + /var/lib/zabbix/externalscripts + /var/log/zabbix + ) + + for dir in "${dirs[@]}"; do + keepdir "${dir}" + done + + if use server; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_server.conf + fperms 0640 /etc/zabbix/zabbix_server.conf + fowners root:zabbix /etc/zabbix/zabbix_server.conf + + newinitd "${FILESDIR}"/zabbix-server-r1.init zabbix-server + + dosbin src/zabbix_server/zabbix_server + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-server.service + newtmpfiles "${FILESDIR}"/zabbix-server.tmpfiles zabbix-server.conf + fi + + if use proxy; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_proxy.conf + fperms 0640 /etc/zabbix/zabbix_proxy.conf + fowners root:zabbix /etc/zabbix/zabbix_proxy.conf + + newinitd "${FILESDIR}"/zabbix-proxy.init zabbix-proxy + + dosbin src/zabbix_proxy/zabbix_proxy + + insinto /usr/share/zabbix + doins -r "${S}"/database/ + + systemd_dounit "${FILESDIR}"/zabbix-proxy.service + newtmpfiles "${FILESDIR}"/zabbix-proxy.tmpfiles zabbix-proxy.conf + fi + + if use agent; then + insinto /etc/zabbix + doins "${S}"/conf/zabbix_agentd.conf + fperms 0640 /etc/zabbix/zabbix_agentd.conf + fowners root:zabbix /etc/zabbix/zabbix_agentd.conf + + newinitd "${FILESDIR}"/zabbix-agentd.init zabbix-agentd + + dosbin src/zabbix_agent/zabbix_agentd + dobin \ + src/zabbix_sender/zabbix_sender \ + src/zabbix_get/zabbix_get + + systemd_dounit "${FILESDIR}"/zabbix-agentd.service + newtmpfiles "${FILESDIR}"/zabbix-agentd.tmpfiles zabbix-agentd.conf + fi + if use agent2; then + insinto /etc/zabbix + doins "${S}"/src/go/conf/zabbix_agent2.conf + fperms 0640 /etc/zabbix/zabbix_agent2.conf + fowners root:zabbix /etc/zabbix/zabbix_agent2.conf + keepdir /etc/zabbix/zabbix_agent2.d/plugins.d + + newinitd "${FILESDIR}"/zabbix-agent2.init zabbix-agent2 + + dosbin src/go/bin/zabbix_agent2 + + systemd_dounit "${FILESDIR}"/zabbix-agent2.service + newtmpfiles "${FILESDIR}"/zabbix-agent2.tmpfiles zabbix-agent2.conf + fi + + fowners root:zabbix /etc/zabbix + fowners zabbix:zabbix \ + /var/lib/zabbix \ + /var/lib/zabbix/home \ + /var/lib/zabbix/scripts \ + /var/lib/zabbix/alertscripts \ + /var/lib/zabbix/externalscripts \ + /var/log/zabbix + fperms 0750 \ + /etc/zabbix \ + /var/lib/zabbix \ + /var/lib/zabbix/home \ + /var/lib/zabbix/scripts \ + /var/lib/zabbix/alertscripts \ + /var/lib/zabbix/externalscripts \ + /var/log/zabbix + + dodoc README INSTALL NEWS ChangeLog \ + conf/zabbix_agentd.conf \ + conf/zabbix_proxy.conf \ + conf/zabbix_agentd/userparameter_examples.conf \ + conf/zabbix_agentd/userparameter_mysql.conf \ + conf/zabbix_server.conf + + if use frontend; then + webapp_src_preinst + cp -R ui/* "${D}/${MY_HTDOCSDIR}" + webapp_configfile \ + "${MY_HTDOCSDIR}"/include/db.inc.php \ + "${MY_HTDOCSDIR}"/include/config.inc.php + webapp_src_install + fi + + if use java; then + dodir \ + /${ZABBIXJAVA_BASE} \ + /${ZABBIXJAVA_BASE}/bin \ + /${ZABBIXJAVA_BASE}/lib + keepdir /${ZABBIXJAVA_BASE} + exeinto /${ZABBIXJAVA_BASE}/bin + doexe src/zabbix_java/bin/zabbix-java-gateway-"${MY_PV}".jar + exeinto /${ZABBIXJAVA_BASE}/lib + doexe \ + src/zabbix_java/lib/logback-classic-1.2.9.jar \ + src/zabbix_java/lib/logback-console.xml \ + src/zabbix_java/lib/logback-core-1.2.9.jar \ + src/zabbix_java/lib/logback.xml \ + src/zabbix_java/lib/android-json-4.3_r3.1.jar \ + src/zabbix_java/lib/slf4j-api-1.7.32.jar + newinitd "${FILESDIR}"/zabbix-jmx-proxy.init zabbix-jmx-proxy + newconfd "${FILESDIR}"/zabbix-jmx-proxy.conf zabbix-jmx-proxy + fi +} + +pkg_postinst() { + if use server || use proxy ; then + elog + elog "You may need to configure your database for Zabbix" + elog "if you have not already done so." + elog + + zabbix_homedir=$(egethome zabbix) + if [ -n "${zabbix_homedir}" ] && \ + [ "${zabbix_homedir}" != "/var/lib/zabbix/home" ]; then + ewarn + ewarn "The user 'zabbix' should have his homedir changed" + ewarn "to /var/lib/zabbix/home if you want to use" + ewarn "custom alert scripts." + ewarn + ewarn "A real homedir might be needed for configfiles" + ewarn "for custom alert scripts." + ewarn + ewarn "To change the homedir use:" + ewarn " usermod -d /var/lib/zabbix/home zabbix" + ewarn + fi + fi + + if use server; then + tmpfiles_process zabbix-server.conf + + elog + elog "For distributed monitoring you have to run:" + elog + elog "zabbix_server -n <nodeid>" + elog + elog "This will convert database data for use with Node ID" + elog "and also adds a local node." + elog + fi + + if use proxy; then + tmpfiles_process zabbix-proxy.conf + fi + + if use agent; then + tmpfiles_process zabbix-agentd.conf + fi + + if use agent2; then + tmpfiles_process zabbix-agent2.conf + fi + + elog "--" + elog + elog "You may need to add these lines to /etc/services:" + elog + elog "zabbix-agent 10050/tcp Zabbix Agent" + elog "zabbix-agent 10050/udp Zabbix Agent" + elog "zabbix-trapper 10051/tcp Zabbix Trapper" + elog "zabbix-trapper 10051/udp Zabbix Trapper" + elog + + if use server || use proxy ; then + # check for fping + fping_perms=$(stat -c %a /usr/sbin/fping 2>/dev/null) + case "${fping_perms}" in + 4[157][157][157]) + ;; + *) + ewarn + ewarn "If you want to use the checks 'icmpping' and 'icmppingsec'," + ewarn "you have to make /usr/sbin/fping setuid root and executable" + ewarn "by everyone. Run the following command to fix it:" + ewarn + ewarn " chmod u=rwsx,g=rx,o=rx /usr/sbin/fping" + ewarn + ewarn "Please be aware that this might impose a security risk," + ewarn "depending on the code quality of fping." + ewarn + ;; + esac + fi +} + +pkg_prerm() { + (use frontend || use server) && webapp_pkg_prerm +} |