diff options
-rw-r--r-- | .SRCINFO | 24 | ||||
-rw-r--r-- | PKGBUILD | 60 | ||||
-rw-r--r-- | turnserver.install | 20 | ||||
-rw-r--r-- | turnserver.service | 11 | ||||
-rw-r--r-- | turnserver.tmpfiles.d | 1 |
5 files changed, 116 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..811da8e88b56 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,24 @@ +pkgbase = coturn + pkgdesc = Free open source implementation of TURN and STUN Server + pkgver = 4.5.0.2 + pkgrel = 1 + url = https://github.com/coturn/coturn + install = turnserver.install + arch = i686 x86_64 + license = custom:New BSD + depends = libevent + depends = postgresql-libs + depends = libmysqlclient + depends = hiredis + depends = sqlite + conflicts = rfc5766-turn-server + provides = rfc5766-turn-server + source = http://turnserver.open-sys.org/downloads/v4.5.0.2/turnserver-4.5.0.2.tar.gz + source = turnserver.service + source = turnserver.tmpfiles.d + sha256sums = 435241425002d0fe193090107fb3daa9b6abb138c4f7ed2ad242c4c16c1852ca + sha256sums = 319030c1916d353bfc3375626cc7f60d6eeca762fe4fce354f010212902c49dc + sha256sums = fe7ed64dc6844aabdfa00b76134b22d69d9097bd3f77120d704d0ee08c036c21 + +pkgname = coturn + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..78e0505bd119 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,60 @@ +# Original Maintainer: Vladimir Tsanev <tsachev@gmail.com> +# Maintainer: MoeRT09 <https://aur.archlinux.org/account/MoeRT09> + +pkgname=coturn +_portname=turnserver +pkgver=4.5.0.2 +pkgrel=1 +pkgdesc="Free open source implementation of TURN and STUN Server" +arch=('i686' 'x86_64') +url="https://github.com/coturn/coturn" +license=('custom:New BSD') +depends=('libevent' 'postgresql-libs' 'libmysqlclient' 'hiredis' 'sqlite') +conflicts=('rfc5766-turn-server') +provides=('rfc5766-turn-server') +install="$_portname.install" +backup=("etc/turnserver.conf") +source=(http://$_portname.open-sys.org/downloads/v$pkgver/$_portname-$pkgver.tar.gz $_portname.service $_portname.tmpfiles.d) + +sha256sums=('435241425002d0fe193090107fb3daa9b6abb138c4f7ed2ad242c4c16c1852ca' + '319030c1916d353bfc3375626cc7f60d6eeca762fe4fce354f010212902c49dc' + 'fe7ed64dc6844aabdfa00b76134b22d69d9097bd3f77120d704d0ee08c036c21') + +build() { + cd "$srcdir/$_portname-$pkgver" + + ./configure --prefix=/usr --manprefix=/usr/share --examplesdir="/usr/share/$_portname/examples" --disable-rpath + + make +} + +check() { + cd "$srcdir/$_portname-$pkgver" + + make check +} + +package() { + cd "$srcdir/$_portname-$pkgver" + + make DESTDIR="$pkgdir" install + + install -D "$pkgdir/usr/share/$_portname/examples/etc/turnserver.conf" "$pkgdir/etc/turnserver.conf" + + rm -r "$pkgdir/usr/etc" + + chmod 644 "$pkgdir/usr/lib/libturnclient.a" + + install -Dm 644 "../$_portname.service" "$pkgdir/usr/lib/systemd/system/$_portname.service" + + install -Dm 644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + + sed \ + -e '/^#log-file=\/var\/tmp\/turn.log$/c log-file=\/var\/log\/turnserver\/turn.log' \ + -i "$pkgdir/etc/turnserver.conf" + sed \ + -e '/^#pidfile="\/var\/run\/turnserver.pid"$/c pidfile="\/var\/run\/turnserver\/turnserver.pid"' \ + -i "$pkgdir/etc/turnserver.conf" + + install -Dm644 "$srcdir/$_portname.tmpfiles.d" "$pkgdir/usr/lib/tmpfiles.d/$_portname.conf" +} diff --git a/turnserver.install b/turnserver.install new file mode 100644 index 000000000000..4d4aab1ad73b --- /dev/null +++ b/turnserver.install @@ -0,0 +1,20 @@ +post_install() { + + id turnserver &>/dev/null || \ + useradd -r -g daemon -M -s /usr/bin/false turnserver + + install -dm 755 "/var/log/turnserver" + chown -R turnserver:daemon /var/log/turnserver + + systemd-tmpfiles --create turnserver.conf + + echo "start server by issuing \"systemctl start turnserver.service\" or calling \"turnserver\"" +} + +post_upgrade() { + post_install +} + +pre_remove() { + userdel turnserver +} diff --git a/turnserver.service b/turnserver.service new file mode 100644 index 000000000000..8e267b2e0b8a --- /dev/null +++ b/turnserver.service @@ -0,0 +1,11 @@ +[Unit] +Description=STUN and TURN Relay Server for VoIP and WebRTC +After=network.target + +[Service] +Type=forking +User=turnserver +ExecStart=/usr/bin/turnserver -c /etc/turnserver.conf -o -v + +[Install] +WantedBy=multi-user.target diff --git a/turnserver.tmpfiles.d b/turnserver.tmpfiles.d new file mode 100644 index 000000000000..ec1a897582b8 --- /dev/null +++ b/turnserver.tmpfiles.d @@ -0,0 +1 @@ +d /run/turnserver 0755 turnserver daemon - |