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
|
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jeff Bilyk <jbilyk@gmail.com>
pkgname=nagios-plugins
pkgver=2.2.1
pkgrel=2
pkgdesc="Plugins for Nagios to check services on hosts"
url="https://nagios-plugins.org"
arch="all"
license="GPL2"
depends=""
depends_by_ssh="openssh-client"
depends_dig="bind-tools"
depends_disk_smb="samba-client"
depends_dns="bind-tools"
depends_fping="fping"
depends_log="grep"
depends_rcp="rpcbind"
depends_sensors="grep lm_sensors"
depends_snmp="net-snmp-tools"
makedepends="openssh-client bind-tools samba-client fping grep rpcbind
lm_sensors net-snmp-tools
file freeradius-client-dev libdbi-dev libpq linux-headers mariadb-dev
net-snmp-dev openldap-dev opensmtpd libressl-dev postgresql-dev"
install="$pkgname.post-upgrade"
pkgusers="nagios"
pkggroups="nagios"
options="suid"
source="https://www.nagios-plugins.org/download/$pkgname-$pkgver.tar.gz
check_openrc
nagios-openrc.sudoers"
builddir="$srcdir/$pkgname-$pkgver"
_plugins_dir="/usr/lib/nagios/plugins"
# Note: Split function takes $name*, so ntp must be before nt etc.
_plugins="breeze by_ssh cluster dbi dhcp dig disk_smb disk dns dummy file_age
fping hpjd http icmp ide_smart ifoperstatus ifstatus ircd ldap load log
mailq mrtgtraf mrtg mysql nagios ntp nt nwstat overcr pgsql ping
procs radius real rpc sensors smtp snmp ssh swap time ups uptime users
wave"
for _sub in $_plugins; do
subpackages="$subpackages $pkgname-$_sub:_plugin"
done
subpackages="$subpackages
$pkgname-openrc:_openrc:noarch
$pkgname-tcp
$pkgname-all:_all" # all must be the last
_plugins="$_plugins openrc tcp"
prepare() {
cd "$builddir"
update_config_sub
}
build() {
cd "$builddir"
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--bindir=/usr/sbin \
--libexecdir="/$_plugins_dir" \
--localstatedir=/var/nagios \
--with-ipv6 \
--with-ps-command="/bin/ps -o stat,pid,ppid,vsz,rss,comm,args" \
--with-ps-format="%s %d %d %d %d %s %n" \
--with-ps-varlist="procstat,&procpid,&procppid,&procvsz,&procrss,procprog,&pos" \
--with-ps-cols=7 \
--with-ping-command="/bin/ping -c %d %s" \
--disable-nls
make all
}
package() {
cd "$builddir"
make DESTDIR="$pkgdir" install
# Remove plugins that are useless or doesn't work on Alpine.
local name; for name in apt flexlm oracle; do
rm "$pkgdir/$_plugins_dir"/check_$name
done
rm -rf "$pkgdir"/usr/lib/charset.alias
rmdir -p "$pkgdir"/usr/lib "$pkgdir"/usr/include 2>/dev/null || true
}
tcp() {
local plugins=" clamd ftp imap jabber nntp nntps pop simap spop ssmtp udp"
local destdir="$subpkgdir/$_plugins_dir"
pkgdesc="Nagios plugins check_tcp${plugins// /, check_}"
provides="${plugins// /$pkgname-}"
mkdir -p "$destdir"
local name; for name in tcp $plugins; do
mv "$pkgdir/$_plugins_dir"/check_$name "$destdir"/
done
}
_openrc() {
pkgdesc="Nagios plugin check_openrc"
depends="$pkgname openrc sudo"
install -m 755 -D "$srcdir"/check_openrc \
"$subpkgdir"/$_plugins_dir/check_openrc
install -m 600 -D "$srcdir"/nagios-openrc.sudoers \
"$subpkgdir"/etc/sudoers.d/nagios-openrc
}
_plugin() {
local name="${subpkgname#$pkgname-}"
local destdir="$subpkgdir/$_plugins_dir"
pkgdesc="Nagios plugin check_$name"
depends="$pkgname $(eval "echo \$depends_$name")"
mkdir -p "$destdir"
mv "$pkgdir/$_plugins_dir"/check_$name* "$destdir"/
if file -bi "$destdir"/* | grep -qw text/x-perl; then
depends="$depends perl"
fi
# if ! file -bi "$destdir"/* | grep -qw application/x-sharedlib; then
# arch="noarch"
# fi
}
_all() {
pkgdesc="Metapackage that installs *all* Nagios plugins from the nagios-plugins package"
depends=''
local plugin; for plugin in $_plugins; do
depends="$depends $pkgname-$plugin"
done
mkdir -p "$subpkgdir"
# We exploit the fact that the -all subpackage is created last
# and check if all the plugins have been moved to subpackages.
local path= retval=0
for path in "$pkgdir/$_plugins_dir"/check_*; do
[ -r "$path" ] || continue
error "Please create a subpackage for ${path##*/} or remove it"
retval=1
done
return $retval
}
sha512sums="6ffe313a56a305b382f62abc0f0958d7078f9050e1340f30721d6e6f71944b57b1650e90e6835c35dd7c9f3f4b4cee9f235b8382b0811db30b3729daaafc9bc3 nagios-plugins-2.2.1.tar.gz
12d87542631494df1c961e547c19107a025829509e174e8208111736141c12e20dbf490c55d487af39d47cefca5507cd98c973b7b20ae3f961dcbfd167195d8e check_openrc
171c9ad14d1027541b78df76063e6d34483dd536219fb83e0346e191739529d59c8d6be468af7f1c4c93b20baf9a32879510f15ec3d06aa1eefaf5d785ea8546 nagios-openrc.sudoers"
|