summaryrefslogtreecommitdiff
path: root/community/darkstat
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2013-08-13 01:33:19 -0700
committerroot <root@rshg054.dnsready.net>2013-08-13 01:33:19 -0700
commit7a65a910b77ad191d69881098c47f9b0c852d92e (patch)
tree9564e611af1442f8952a8cbddb3b0ad25ed71aab /community/darkstat
parent60da6abff6c9577a783d72865f11de7a585e912e (diff)
Tue Aug 13 01:31:08 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..b6383d380
--- /dev/null
+++ b/community/darkstat/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 95314 2013-08-09 09:09:16Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+
+pkgname=darkstat
+pkgver=3.0.716
+pkgrel=1
+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=('f334d3b8acd45cd06b5929a249abebe2'
+ '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