# Contributor: Ɓukasz Jendrysik # Contributor: Jakub Jirutka # Maintainer: Jeff Bilyk pkgname=nagios-plugins pkgver=2.2.1 pkgrel=0 pkgdesc="Plugins for Nagios to check services on hosts" url="http://nagiosplugins.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" 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-tcp $pkgname-all:_all" # all must be the last 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 \ || return 1 make all } package() { cd "$builddir" make DESTDIR="$pkgdir" install || return 1 # 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"/ || return 1 done } _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"/ || return 1 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="$pkgname-tcp" 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"