# Contributor: Jeff Bilyk # Maintainer: Natanael Copa pkgname=zabbix pkgver=2.0.7 pkgrel=0 pkgdesc="Enterprise-class open source distributed monitoring" url="http://www.zabbix.com" arch="all" license="GPL" depends="fping" makedepends="postgresql-dev curl-dev libiconv-dev net-snmp-dev sqlite-dev mysql-dev curl-dev autoconf automake" install="$pkgname.pre-install" pkgusers="zabbix" pkggroups="zabbix" subpackages="$pkgname-doc $pkgname-agent $pkgname-pgsql $pkgname-mysql $pkgname-webif $pkgname-sqlite $pkgname-utils $pkgname-setup" source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz zabbix_server.conf zabbix_trapper.conf zabbix_proxy.conf zabbix_agentd.conf zabbix-getloadavg.patch res_send.patch automake.patch zabbix-server.initd zabbix-agentd.initd zabbix-proxy.initd " _builddir="$srcdir"/$pkgname-$pkgver prepare() { cd "$_builddir" for i in $source; do case $i in *.patch) msg "Applying $i" patch -p1 -i "$srcdir"/$i || return 1 ;; esac done aclocal -I m4 && autoconf && autoheader \ && automake --add-missing || return 1 } build() { # set default configure flags _configure="--prefix=/usr \ --sysconfdir=/etc/zabbix \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --enable-server \ --enable-agent \ --enable-proxy \ --enable-ipv6 \ --with-net-snmp \ --with-libcurl " # we run build for each db type # make sure prepare is same for each db for db in postgresql mysql sqlite3; do cd "$srcdir" msg "Building for $db" cp -r "$pkgname-$pkgver" "$pkgname-$pkgver-$db" cd "$_builddir-$db" ./configure \ --build=$CBUILD \ --host=$CHOST \ --with-$db \ $_configure \ || return 1 make || return 1 done } package() { # doing manual install for i in agentd proxy server; do install -D -m755 "$_builddir"/man/zabbix_$i.man \ "$pkgdir"/usr/share/man/man8/zabbix_$i.8 done for i in get sender; do install -D -m755 "$_builddir"/man/zabbix_$i.man \ "$pkgdir"/usr/share/man/man1/zabbix_$i.1 done install -d -m0750 -o zabbix -g zabbix \ "$pkgdir"/var/run/zabbix "$pkgdir"/var/log/zabbix install -D -m0644 "$srcdir"/zabbix_server.conf \ "$pkgdir"/etc/zabbix/zabbix_server.conf install -D -m0644 "$srcdir"/zabbix_trapper.conf \ "$pkgdir"/etc/zabbix/zabbix_trapper.conf for i in server proxy; do install -D -m0755 "$srcdir"/zabbix-$i.initd \ "$pkgdir"/etc/init.d/zabbix-$i || return 1 done } setup() { pkgdesc="Zabbix images and sql files" depends= mkdir -p "$subpkgdir"/usr/share/zabbix/ || return 1 mv "$_builddir"/database "$subpkgdir"/usr/share/zabbix/ } _do_db() { pkgdesc="Zabbix server with $1 database support" depends=$pkgname local i= mkdir -p "$subpkgdir"/usr/sbin mv "$_builddir-$1"/src/zabbix_server/zabbix_server \ "$subpkgdir"/usr/sbin/ || return 1 mv "$_builddir-$1"/src/zabbix_proxy/zabbix_proxy \ "$subpkgdir"/usr/sbin/ || return 1 cd "$_builddir" for i in upgrades/dbpatches/*/$1; do [ -e $i ] || continue mkdir -p "$subpkgdir"/usr/share/zabbix/${i%/*} mv "$i" "$subpkgdir"/usr/share/zabbix/$i done return 0 } pgsql() { _do_db postgresql; } mysql() { _do_db mysql; } sqlite() { _do_db sqlite3; } utils() { pkgdesc="Zabbix client utilities" depends= mkdir -p "$subpkgdir"/usr/bin mv "$_builddir-postgresql"/src/zabbix_get/zabbix_get \ "$subpkgdir"/usr/bin mv "$_builddir-postgresql"/src/zabbix_sender/zabbix_sender \ "$subpkgdir"/usr/bin } webif() { pkgdesc="Zabbix web-interface" depends="php php-pgsql php-gd php-curl php-bcmath php-sockets php-iconv php-xmlreader php-ctype php-gettext" _wwwdir="$subpkgdir"/usr/share/webapps/zabbix mkdir -p $_wwwdir mv "$_builddir"/frontends/php/* "$_wwwdir" } agent() { pkgdesc="Zabbix Network Monitoring Agent" depends= install="$subpkgname.pre-install" install -d -m0750 -o zabbix -g zabbix \ "$subpkgdir"/var/run/zabbix "$subpkgdir"/var/log/zabbix install -D -m0644 "$srcdir"/zabbix_agentd.conf \ "$subpkgdir"/etc/zabbix/zabbix_agentd.conf install -D -m0755 "$srcdir"/zabbix-agentd.initd \ "$subpkgdir"/etc/init.d/zabbix-agentd mkdir -p "$subpkgdir"/usr/sbin mv "$_builddir-postgresql"/src/zabbix_agent/zabbix_agent \ "$subpkgdir"/usr/sbin/ mv "$_builddir-postgresql"/src/zabbix_agent/zabbix_agentd \ "$subpkgdir"/usr/sbin/ } md5sums="0e86f37e3acecc1e0b618af14edc5346 zabbix-2.0.7.tar.gz 26b0401a83bdb1dce29338e5b2786620 zabbix_server.conf 9832a81e134c8e2c11e2a06b7adbf88f zabbix_trapper.conf 0310b92afb3f35c1075fff53db737212 zabbix_proxy.conf 721c18077fa739f956340afca9f067f4 zabbix_agentd.conf 8d1d2e53479173aac0df0c38a4d6afda zabbix-getloadavg.patch b80eca2e260cc9e563f4b7a1b30bb158 res_send.patch 5f7b1815a309d8dade4a1d15d5048742 automake.patch d823c2ab6c2bbdd0ebd3511fac4a83b4 zabbix-server.initd 1a5c718bcf815fcf659e14fb0b576a1a zabbix-agentd.initd a99978139481e69434f78fc3e8c53441 zabbix-proxy.initd" sha256sums="9082f70cdf2dcd98f63a248396b9a230b844ec62691b3c635a50d7a230c92a90 zabbix-2.0.7.tar.gz 3b09a8fdc38216d859022c5966c36f0bcb6984974208cf4c69c17129649efdf5 zabbix_server.conf 3ae307895c9a7189e29c4ebf7479ce08d4c3bbe1a7f0a3554828170dac417bab zabbix_trapper.conf 0cd9cab17d1a2f791262b683aeedc5115722478a4847cb438aadb51198f67287 zabbix_proxy.conf 98343193215c9e1bc79ff332688c684f7023da38583bba800acc404b12c6cc51 zabbix_agentd.conf 1b26263896cd9adbe918e4251eba3d425993c3ad331076d6bc4e7f5fe4ab3eba zabbix-getloadavg.patch 552d14493b97e2ef082d4481bc4b128428ed44d46b63f8dee6e67cf0ab129d19 res_send.patch 4cd7ab9c6fa95aacab0c1f7b77bad18e9b500feca70b16c866a581775b4ad611 automake.patch f4e18cca40cd7299140aec3077cf39429487860094d7f5d88d76d8e040dca9b8 zabbix-server.initd 4f93c4868726a3e8fed12a030cfce8911f105217a59187d6b3e1565d8d3e76b5 zabbix-agentd.initd 60a01c08df054a0c1bcfb71e378544b4c4e489e6a6779d96383387ed34ddc0b0 zabbix-proxy.initd" sha512sums="3f28bfb62d3eba61f79cba1b3fb21137d77b6779fb81848021bc644ec040c430cee6a97c78b51c13f1a320bbcc780a3c1c3ab4d25ea2d833362dfdedc3e9382e zabbix-2.0.7.tar.gz 3170d56a61871e6efadf705c19f864fdecf9420c4263f2a1129245b3b55bd730d1ba5a6a26ea866fc7842c86f7745e51ea28878bb9e9267ed9176499cb75e8bb zabbix_server.conf cd08d907838de646f65316950e8c71deae25be1701e0cc22e5fd2f636c21ef2365a537d247277bafb694cae8c5dbd22eb725c1647797ad3e4ac4b3df2084ef07 zabbix_trapper.conf a3703641125dda8c13d658ad4e1cf2cde94af01ed953480a37006e354ff58ade4a99b3575e3f095d8639ac9c481be52e25120353d9a4cd2104a68aff4a5596e5 zabbix_proxy.conf 8a3298cb98787f89b4cc0faa6168a1ab59860c60bec159ecd341db25c0903e89061b40d2b37df9e2df99e08b71b57089bcb25f352e7edf09fbc1b0bd3f1034f6 zabbix_agentd.conf 74eb86fe665bf16f89683572915829022e816a954076a0faef1367ad4e0f096f54f1cec8e68f0609f8282d63808349a7b1cf67b7f6bcde63f68908f034b2e95a zabbix-getloadavg.patch a2d8d52bacd353363c22f89ca26deffdec722144dab4899987ef4b8479d0b0722007bf3e97f75403e8140153eefac72106985f2bfc0c03ad6d59bc630bf0fd43 res_send.patch 7aa59336e92d83eddff4bc18038820cfc25dc50f45327a2c0a6aa0e360fa742c9724d25e84152e3a14193c88ea5d6e66fdb99f2900c0bf8199cb2adf9e143415 automake.patch af0853d8c5a8b33399b87e7958a7ffd692fe18005dcc43af5f58e0fdf6bbee3dd66ec77a3840ae5e526a4c445b04425071f6796d726ff923aba9d3a78ca3c022 zabbix-server.initd 3ef0fe0c1c94f2f01a0c335a45ee0f3c0cd4b125d96b5eefa869a17efb352087a5dd18ef8e87c35e6816b6fb705b829f0a25452e7285637d3595ff4c103b7c21 zabbix-agentd.initd b305ea06641c6a331273f065a4a85fac92c45e107a30e85cb41be4ea36e2efbf5442c69cc6605ea3734a851808f7abba20042058d4b07832d858cdb63e98d405 zabbix-proxy.initd"