blob: 4abde50b9dd4d142f699de1cbb879d8424b29ad9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
|
# Contributor: Jeff Bilyk <jbilyk at gmail>
# Maintainer: Natanael Copa <natanael.copa@gmail.com>
pkgname=zabbix
pkgver=1.8.4
pkgrel=2
pkgdesc="Enterprise-class open source distributed monitoring"
url="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"
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-dn_skipname.patch
zabbix-getloadavg.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
}
build() {
# set default configure flags
_configure="--prefix=/usr \
--sysconfdir=/etc \
--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 pgsql mysql sqlite3; do
cd "$srcdir"
msg "Building for $db"
cp -r "$pkgname-$pkgver" "$pkgname-$pkgver-$db"
cd "$_builddir-$db"
./configure --with-$db \
$_configure
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/create
mv "$srcdir"/$pkgname-$pkgver/create/data \
"$subpkgdir"/usr/share/zabbix/create
mv "$srcdir"/$pkgname-$pkgver/create/schema \
"$subpkgdir"/usr/share/zabbix/create
}
_do_db() {
pkgdesc="Zabbix server with $1 database support"
depends=$pkgname
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
return 0
}
pgsql() { _do_db pgsql; }
mysql() { _do_db mysql; }
sqlite() { _do_db sqlite3; }
utils() {
pkgdesc="Zabbix client utilities"
depends=
mkdir -p "$subpkgdir"/usr/bin
mv "$_builddir-pgsql"/src/zabbix_get/zabbix_get \
"$subpkgdir"/usr/bin
mv "$_builddir-pgsql"/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"
_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-pgsql"/src/zabbix_agent/zabbix_agent \
"$subpkgdir"/usr/sbin/
mv "$_builddir-pgsql"/src/zabbix_agent/zabbix_agentd \
"$subpkgdir"/usr/sbin/
}
md5sums="969ce09317c98b205bc96157e16f5c8c zabbix-1.8.4.tar.gz
26b0401a83bdb1dce29338e5b2786620 zabbix_server.conf
9832a81e134c8e2c11e2a06b7adbf88f zabbix_trapper.conf
0310b92afb3f35c1075fff53db737212 zabbix_proxy.conf
721c18077fa739f956340afca9f067f4 zabbix_agentd.conf
d13166483792401be2d25b37b0170b82 zabbix-dn_skipname.patch
8d1d2e53479173aac0df0c38a4d6afda zabbix-getloadavg.patch
e42394e798ab98a8ff4babe68e04633a zabbix-server.initd
88374bba8a8fdfabfcfe9be6dd12095f zabbix-agentd.initd
32abde1cc00c2eeccddb7e038117d0ab zabbix-proxy.initd"
|