core/rpcbind/PKGBUILD
2017-12-08 17:04:51 +00:00

63 lines
2.0 KiB
Bash

pkgname=rpcbind
pkgver=0.2.4
pkgrel=1
pkgdesc="portmap replacement which supports RPC over various protocols"
arch=('x86_64')
backup=('etc/conf.d/rpcbind')
depends=('bash' 'glibc' 'libtirpc' 'systemd')
url="http://rpcbind.sourceforge.net"
license=('custom')
replaces=('portmap')
# see also http://git.infradead.org/users/steved/rpcbind.git
source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2
rpcbind-sunrpc.patch
rpcbind.conf
CVE-2017-8779.diff)
install=rpcbind.install
sha1sums=('8a6045dd3397e9f71bf3a7c9d269e255cca537bd'
'1b997ce76f9727efc8c72fc5f97189591c9a60e2'
'08246ff18d12cee01e5c9391c6ba8f5597cac936'
'38044ce8f3376a0b69da8e078e988fd1645bd435')
prepare() {
cd $pkgname-$pkgver
# patch for iana services file # FS#20273
patch -Np1 -i ../rpcbind-sunrpc.patch
# http://seclists.org/oss-sec/2017/q2/209
patch -Np1 -i ../CVE-2017-8779.diff
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--with-rpcuser=rpc \
--enable-warmstarts \
--with-statedir=/var/lib/rpcbind
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR=$pkgdir install
# install rpcbind config file
install -D -m644 ../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/
# 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
# add EnvironmentFile to systemd service
sed -i '14i EnvironmentFile=/etc/conf.d/rpcbind' $pkgdir/usr/lib/systemd/system/rpcbind.service
}