summaryrefslogtreecommitdiffstats
path: root/abs/extra/rsync
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/rsync')
-rw-r--r--abs/extra/rsync/PKGBUILD39
-rw-r--r--abs/extra/rsync/rsync.xinetd11
-rw-r--r--abs/extra/rsync/rsyncd37
-rw-r--r--abs/extra/rsync/rsyncd.conf10
-rw-r--r--abs/extra/rsync/rsyncd.service10
5 files changed, 107 insertions, 0 deletions
diff --git a/abs/extra/rsync/PKGBUILD b/abs/extra/rsync/PKGBUILD
new file mode 100644
index 0000000..1224537
--- /dev/null
+++ b/abs/extra/rsync/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 160933 2012-06-07 05:56:33Z pierre $
+
+pkgname=rsync
+pkgver=3.0.9
+pkgrel=3
+pkgdesc="A file transfer program to keep remote files in sync"
+arch=('i686' 'x86_64')
+url="http://samba.anu.edu.au/rsync/"
+license=('GPL3')
+depends=('perl')
+backup=('etc/rsyncd.conf' 'etc/xinetd.d/rsync')
+source=("http://rsync.samba.org/ftp/rsync/$pkgname-$pkgver.tar.gz"
+ 'rsyncd.conf' 'rsyncd' 'rsync.xinetd' 'rsyncd.service')
+md5sums=('5ee72266fe2c1822333c407e1761b92b'
+ 'bce64d122a8e0f86872a4a21a03bc7f3'
+ 'ba413da4ebca05c57860151fda21efbc'
+ 'ea3e9277dc908bc51f9eddc0f6b935c1'
+ 'ec96f9089d71109557cdcaa3f0633ed6')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr --with-included-popt
+ make
+}
+
+check() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make test
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+ install -Dm755 ../rsyncd "$pkgdir/etc/rc.d/rsyncd"
+ install -Dm644 ../rsyncd.conf "$pkgdir/etc/rsyncd.conf"
+ install -Dm644 ../rsync.xinetd "$pkgdir/etc/xinetd.d/rsync"
+ install -Dm644 ../rsyncd.service "$pkgdir/usr/lib/systemd/system/rsyncd.service"
+ install -Dm755 support/rrsync "$pkgdir/usr/lib/rsync/rrsync"
+}
diff --git a/abs/extra/rsync/rsync.xinetd b/abs/extra/rsync/rsync.xinetd
new file mode 100644
index 0000000..f5b6b1e
--- /dev/null
+++ b/abs/extra/rsync/rsync.xinetd
@@ -0,0 +1,11 @@
+service rsync
+{
+ socket_type = stream
+ wait = no
+ user = root
+ server = /usr/bin/rsync
+ server_args = --daemon
+ log_on_success += HOST DURATION
+ log_on_failure += HOST
+ disable = yes
+}
diff --git a/abs/extra/rsync/rsyncd b/abs/extra/rsync/rsyncd
new file mode 100644
index 0000000..27836d5
--- /dev/null
+++ b/abs/extra/rsync/rsyncd
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+[ -f /etc/conf.d/rsyncd ] && . /etc/conf.d/rsyncd
+
+case "$1" in
+ start)
+ stat_busy "Starting rsyncd"
+ [ ! -f /run/daemons/rsyncd ] && /usr/bin/rsync --daemon $RSYNCD_ARGS
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon rsyncd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping rsyncd"
+ [ -f /run/rsyncd.pid ] && kill `cat /run/rsyncd.pid`
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon rsyncd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/abs/extra/rsync/rsyncd.conf b/abs/extra/rsync/rsyncd.conf
new file mode 100644
index 0000000..1521060
--- /dev/null
+++ b/abs/extra/rsync/rsyncd.conf
@@ -0,0 +1,10 @@
+uid = nobody
+gid = nobody
+use chroot = no
+max connections = 4
+syslog facility = local5
+pid file = /run/rsyncd.pid
+
+[ftp]
+ path = /srv/ftp
+ comment = ftp area
diff --git a/abs/extra/rsync/rsyncd.service b/abs/extra/rsync/rsyncd.service
new file mode 100644
index 0000000..ea2e32c
--- /dev/null
+++ b/abs/extra/rsync/rsyncd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=A file transfer program to keep remote files in sync
+
+[Service]
+EnvironmentFile=-/etc/conf.d/rsyncd
+ExecStart=/usr/bin/rsync --daemon --no-detach ${RSYNCD_ARGS}
+RestartSec=1
+
+[Install]
+WantedBy=multi-user.target