summaryrefslogtreecommitdiff
path: root/core/rpcbind
diff options
context:
space:
mode:
authorNicolás Reynolds <fauno@endefensadelsl.org>2014-06-27 03:56:37 +0000
committerNicolás Reynolds <fauno@endefensadelsl.org>2014-06-27 03:56:37 +0000
commit2676c8b3a08c1af42cabaa11ac68985ef635eca3 (patch)
treee04aef3931197d9020ca26e75c3f8f62e666041c /core/rpcbind
parent76b667b6360f6f7e97f13392cf156f197dc4017b (diff)
Fri Jun 27 03:52:25 UTC 2014
Diffstat (limited to 'core/rpcbind')
-rw-r--r--core/rpcbind/PKGBUILD28
-rw-r--r--core/rpcbind/rpcbind.conf3
-rw-r--r--core/rpcbind/rpcbind.service12
-rw-r--r--core/rpcbind/rpcbind.socket8
4 files changed, 38 insertions, 13 deletions
diff --git a/core/rpcbind/PKGBUILD b/core/rpcbind/PKGBUILD
index d50b2bf4c..25b600581 100644
--- a/core/rpcbind/PKGBUILD
+++ b/core/rpcbind/PKGBUILD
@@ -1,23 +1,28 @@
-# $Id: PKGBUILD 193786 2013-08-31 10:51:12Z tpowa $
+# $Id: PKGBUILD 215487 2014-06-26 19:15:57Z tpowa $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=rpcbind
pkgver=0.2.1
-pkgrel=2
+pkgrel=5
pkgdesc="portmap replacement which supports RPC over various protocols"
arch=(i686 x86_64)
+backup=('etc/conf.d/rpcbind')
depends=('bash' 'glibc' 'libtirpc')
url="http://rpcbind.sourceforge.net"
license=('custom')
replaces=('portmap')
source=(http://downloads.sourceforge.net/sourceforge/rpcbind/rpcbind-0.2.1.tar.bz2
rpcbind-sunrpc.patch
- rpcbind.service)
+ rpcbind.service
+ rpcbind.socket
+ rpcbind.conf)
install=rpcbind.install
md5sums=('0a5f9c2142af814c55d957aaab3bcc68'
'c02ac36a98baac70b8a26190524b7b73'
- 'a7b23a32be2eb52d7dec52da36d4eba1'
-)
+ '0f493a590c250267034e230e7bf1f894'
+ 'e5a205cd7402fedaf74a744b2a22f0ad'
+ 'd4c74d1be9f98344af138a15ad3b6f8c')
+
prepare() {
cd $srcdir/$pkgname-$pkgver
# patch for iana services file
@@ -26,7 +31,7 @@ prepare() {
build() {
cd $srcdir/$pkgname-$pkgver
- ./configure --prefix=/usr --with-rpcuser=rpc --enable-warmstarts --with-statedir=/run
+ ./configure --prefix=/usr --with-rpcuser=rpc --enable-warmstarts --with-statedir=/var/lib/rpcbind
make
}
@@ -38,10 +43,21 @@ check() {
package() {
cd $srcdir/$pkgname-$pkgver
make DESTDIR=$pkgdir install
+ # install rpcbind config file
+ install -D -m644 $srcdir/rpcbind.conf $pkgdir/etc/conf.d/rpcbind
# install missing man page - https://bugs.archlinux.org/task/21271
install -m644 man/rpcinfo.8 $pkgdir/usr/share/man/man8/
# install systemd service file
install -D -m644 $srcdir/rpcbind.service $pkgdir/usr/lib/systemd/system/rpcbind.service
+ # install system socket activation
+ install -D -m644 $srcdir/rpcbind.socket $pkgdir/usr/lib/systemd/system/rpcbind.socket
+ # add symlinks
+ mkdir $pkgdir/usr/lib/systemd/system/sockets.target.wants
+ mkdir $pkgdir/usr/lib/systemd/system/multi-user.target.wants
+ ln -sf ../rpcbind.socket $pkgdir/usr/lib/systemd/system/sockets.target.wants/rpcbind.socket
+ ln -sf ../rpcbind.service $pkgdir/usr/lib/systemd/system/multi-user.target.wants/rpcbind.service
+ # add state directory
+ install -d -m 700 -o 32 -g 32 $pkgdir/var/lib/rpcbind
# install license
install -D -m644 COPYING $pkgdir/usr/share/licenses/rpcbind/COPYING
}
diff --git a/core/rpcbind/rpcbind.conf b/core/rpcbind/rpcbind.conf
new file mode 100644
index 000000000..4b35e3749
--- /dev/null
+++ b/core/rpcbind/rpcbind.conf
@@ -0,0 +1,3 @@
+#
+# Optional arguments passed to rpcbind. See rpcbind(8)
+RPCBIND_ARGS=""
diff --git a/core/rpcbind/rpcbind.service b/core/rpcbind/rpcbind.service
index 3bc764efc..1cb27e5c8 100644
--- a/core/rpcbind/rpcbind.service
+++ b/core/rpcbind/rpcbind.service
@@ -1,13 +1,11 @@
[Unit]
-Description=RPC Bind
-After=network.target
-Wants=rpcbind.target
-Before=rpcbind.target
+Description=RPC bind service
+Requires=rpcbind.socket
[Service]
Type=forking
-ExecStart=/usr/bin/rpcbind
-Restart=always
+EnvironmentFile=/etc/conf.d/rpcbind
+ExecStart=/usr/bin/rpcbind -w ${RPCBIND_ARGS}
[Install]
-WantedBy=multi-user.target
+Also=rpcbind.socket
diff --git a/core/rpcbind/rpcbind.socket b/core/rpcbind/rpcbind.socket
new file mode 100644
index 000000000..d63c1d972
--- /dev/null
+++ b/core/rpcbind/rpcbind.socket
@@ -0,0 +1,8 @@
+[Unit]
+Description=RPCbind Server Activation Socket
+
+[Socket]
+ListenStream=/var/run/rpcbind.sock
+
+[Install]
+WantedBy=sockets.target