summaryrefslogtreecommitdiff
path: root/community/collectd
diff options
context:
space:
mode:
authorParabola <dev@list.parabolagnulinux.org>2011-04-05 14:26:38 +0000
committerParabola <dev@list.parabolagnulinux.org>2011-04-05 14:26:38 +0000
commit415856bdd4f48ab4f2732996f0bae58595092bbe (patch)
treeede2018b591f6dfb477fe9341ba17b9bc000fab9 /community/collectd
Tue Apr 5 14:26:38 UTC 2011
Diffstat (limited to 'community/collectd')
-rw-r--r--community/collectd/PKGBUILD69
-rw-r--r--community/collectd/install8
-rw-r--r--community/collectd/libnotify-0.7.patch12
-rw-r--r--community/collectd/rc.d39
4 files changed, 128 insertions, 0 deletions
diff --git a/community/collectd/PKGBUILD b/community/collectd/PKGBUILD
new file mode 100644
index 000000000..9753a9104
--- /dev/null
+++ b/community/collectd/PKGBUILD
@@ -0,0 +1,69 @@
+# $Id: PKGBUILD 44254 2011-04-04 21:24:15Z bisson $
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+# Contributor: Gerhard Brauer <gerhard.brauer@web.de>
+
+pkgname=collectd
+pkgver=5.0.0
+pkgrel=1
+pkgdesc='Daemon which collects system performance statistics periodically'
+arch=('i686' 'x86_64')
+url='http://collectd.org/'
+license=('GPL')
+options=('!libtool')
+backup=('etc/collectd.conf')
+
+optdepends=('curl: apache, ascent, curl, nginx, and write_http plugins'
+ 'libdbi: dbi plugin'
+ 'libesmtp: notify_email plugin'
+ 'libgcrypt: encryption and authentication for network plugin'
+ 'iptables: iptables plugin'
+ 'libmemcached: memcachec plugin'
+ 'libmysqlclient: mysql plugin'
+ 'iproute2: netlink plugin'
+ 'net-snmp: snmp plugin'
+ 'libnotify: notify_desktop plugin'
+ 'liboping: ping plugin'
+ 'libpcap: dns plugin'
+ 'perl: perl plugin'
+ 'postgresql-libs: postgresql plugin'
+ 'python2: python plugin'
+ 'rrdtool: rrdtool and rrdcached plugins'
+ 'lm_sensors: lm_sensors and sensors plugins'
+ 'libvirt: libvirt plugin'
+ 'libxml2: ascent and libvirt plugins'
+ 'xmms: xmms plugin'
+ 'yajl: curl_json plugin')
+
+makedepends=('curl' 'libdbi' 'libesmtp' 'libgcrypt' 'iptables' 'libmemcached'
+ 'libmysqlclient' 'iproute2' 'net-snmp' 'libnotify' 'liboping'
+ 'libpcap' 'postgresql-libs' 'python2' 'rrdtool' 'lm_sensors'
+ 'libvirt' 'libxml2' 'xmms' 'yajl')
+
+depends=('libtool')
+
+source=("${url}files/$pkgname-$pkgver.tar.gz"
+ 'libnotify-0.7.patch'
+ 'rc.d')
+sha1sums=('026e5121348f0e525dedb3844fe61c7713994bb7'
+ 'f6fed097c16f6c9c90b9a32a5b8e48d54b35b337'
+ '0f441718d5519cb043b1130e5a1d0379078adbcc')
+
+install=install
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ unset LDFLAGS # or perl not found
+ patch -p1 -i ../libnotify-0.7.patch
+ sed -i 's/ipt_error_target/bozo_error_target/g' src/owniptc/libiptc.c
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --enable-static=no --with-python=/usr/bin/python2
+ make all
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir/" install
+ install -D -m 755 ../rc.d "$pkgdir/etc/rc.d/$pkgname"
+ install -D -m 644 contrib/collectd2html.pl \
+ "$pkgdir"/usr/share/collectd/collectd2html.pl
+}
diff --git a/community/collectd/install b/community/collectd/install
new file mode 100644
index 000000000..54cc0e1b3
--- /dev/null
+++ b/community/collectd/install
@@ -0,0 +1,8 @@
+post_install() {
+ cat <<EOF
+==> Customize your /etc/collectd.conf (you really want to).
+==> Then start and stop the daemon using: /etc/rc.d/collectd
+==> To see some result of collected data, use the Perl script:
+==> /usr/share/collectd/collectd2html.pl
+EOF
+}
diff --git a/community/collectd/libnotify-0.7.patch b/community/collectd/libnotify-0.7.patch
new file mode 100644
index 000000000..5ea67047a
--- /dev/null
+++ b/community/collectd/libnotify-0.7.patch
@@ -0,0 +1,12 @@
+diff -aur old/src/notify_desktop.c new/src/notify_desktop.c
+--- old/src/notify_desktop.c 2011-03-07 23:50:24.096691200 +0100
++++ new/src/notify_desktop.c 2011-03-07 23:52:35.486691201 +0100
+@@ -95,7 +95,7 @@
+ : (NOTIF_WARNING == n->severity) ? "WARNING"
+ : (NOTIF_OKAY == n->severity) ? "OKAY" : "UNKNOWN");
+
+- notification = notify_notification_new (summary, n->message, NULL, NULL);
++ notification = notify_notification_new (summary, n->message, NULL);
+ if (NULL == notification) {
+ log_err ("Failed to create a new notification.");
+ return -1;
diff --git a/community/collectd/rc.d b/community/collectd/rc.d
new file mode 100644
index 000000000..442f2324a
--- /dev/null
+++ b/community/collectd/rc.d
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+name=collectd
+prog="/usr/sbin/collectdmon"
+
+PID=$(pidof -o %PPID $prog)
+
+case "$1" in
+start)
+ stat_busy "Starting $name daemon"
+ [[ -z "$PID" ]] && $prog \
+ && { add_daemon $name; stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+stop)
+ stat_busy "Stopping $name daemon"
+ [[ -n "$PID" ]] && kill $PID &>/dev/null \
+ && { rm_daemon $name; stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+restart)
+ $0 stop
+ sleep 2
+ $0 start
+ ;;
+reload)
+ stat_busy "Sending SIGHUP to $name daemon"
+ [[ -n "$PID" ]] && kill -HUP $PID &>/dev/null \
+ && { stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+*)
+ echo "usage: $0 {start|stop|restart|reload}"
+ exit 1
+ ;;
+esac