summaryrefslogtreecommitdiff
path: root/community/darkstat
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2013-07-19 01:10:32 -0700
committerroot <root@rshg054.dnsready.net>2013-07-19 01:10:32 -0700
commit8fbc0076a4827ddc6af92e0b9daa4c4c31450808 (patch)
tree03fd0e2921ebd53228d9a93e32ed3976b636cbea /community/darkstat
parente445a313723389ba9ee1fded025c567dae5b21ea (diff)
Fri Jul 19 01:09:18 PDT 2013
Diffstat (limited to 'community/darkstat')
-rw-r--r--community/darkstat/PKGBUILD32
-rw-r--r--community/darkstat/darkstat.conf2
-rw-r--r--community/darkstat/darkstat.install20
-rw-r--r--community/darkstat/darkstat.service17
4 files changed, 71 insertions, 0 deletions
diff --git a/community/darkstat/PKGBUILD b/community/darkstat/PKGBUILD
new file mode 100644
index 000000000..52526ad81
--- /dev/null
+++ b/community/darkstat/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 91854 2013-05-28 17:26:25Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+
+pkgname=darkstat
+pkgver=3.0.715
+pkgrel=10
+pkgdesc="Network statistics gatherer (packet sniffer)"
+url="http://dmr.ath.cx/net/darkstat/"
+license=("GPL")
+arch=(i686 x86_64)
+depends=('libpcap' 'zlib' 'gcc-libs')
+backup=('etc/conf.d/darkstat.conf')
+source=(http://dmr.ath.cx/net/darkstat/darkstat-$pkgver.tar.bz2
+ darkstat.service
+ darkstat.conf)
+install=darkstat.install
+md5sums=('5b7abc7538dcd8e30667dac150e81d77'
+ '91dd1cf9d01c2b37896f01b4570b5521'
+ 'aa9a9effd1e8f08860afcd6439fc94c5')
+
+build() {
+ cd $srcdir/darkstat-$pkgver
+ ./configure --prefix=/usr --sbindir=/usr/bin
+ make
+}
+
+package() {
+ cd $srcdir/darkstat-$pkgver
+ make DESTDIR=$pkgdir install
+ install -D -m644 "$srcdir"/darkstat.conf "$pkgdir"/etc/conf.d/darkstat.conf
+ install -Dm0644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system/$pkgname.service
+}
diff --git a/community/darkstat/darkstat.conf b/community/darkstat/darkstat.conf
new file mode 100644
index 000000000..63517ef9a
--- /dev/null
+++ b/community/darkstat/darkstat.conf
@@ -0,0 +1,2 @@
+DARKSTAT_IFACE="eth0"
+DARKSTAT_ARGS=""
diff --git a/community/darkstat/darkstat.install b/community/darkstat/darkstat.install
new file mode 100644
index 000000000..246bfd808
--- /dev/null
+++ b/community/darkstat/darkstat.install
@@ -0,0 +1,20 @@
+daemon_name=darkstat
+daemon_chroot=var/darkstat
+
+post_install() {
+ if [ ! -d "$daemon_chroot" ]; then
+ install -d "$daemon_chroot"
+ touch "$daemon_chroot/darkstat.dat"
+ fi
+ useradd \
+ --system \
+ --home /"$daemon_chroot" \
+ --shell /bin/false \
+ --no-user-group \
+ --gid nobody "$daemon_name"
+ chown -R "$daemon_name":nobody "/$daemon_chroot"
+}
+
+post_remove() {
+ userdel "$daemon_name"
+}
diff --git a/community/darkstat/darkstat.service b/community/darkstat/darkstat.service
new file mode 100644
index 000000000..b92eff85c
--- /dev/null
+++ b/community/darkstat/darkstat.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=Network statistics gatherer (packet sniffer)
+After=network.target
+
+[Service]
+Type=simple
+EnvironmentFile=/etc/conf.d/darkstat.conf
+PIDFile=/var/darkstat/darkstat.pid
+ExecStart=/usr/sbin/darkstat --user "darkstat" --chroot "/var/darkstat" \
+ --import "darkstat.dat" --export "darkstat.dat" \
+ --pidfile /var/darkstat/darkstat.pid \
+ -b 0.0.0.0 \
+ -i "$DARKSTAT_IFACE" $DARKSTAT_ARGS
+ExecStopPost=/bin/rm -f /var/darkstat/darkstat.pid
+
+[Install]
+WantedBy=multi-user.target