diff options
author | Graham Edgecombe | 2013-12-15 23:29:35 +0000 |
---|---|---|
committer | Graham Edgecombe | 2013-12-15 23:39:45 +0000 |
commit | 3270d2d9469b04771584ade27259a67a5efcd996 (patch) | |
tree | f3481d29e039d6b5584ed9f38c2048549c151d97 | |
parent | e0fa89fe78520e626c85d6efc2b0515f3536ca5b (diff) | |
download | aur-3270d2d9469b04771584ade27259a67a5efcd996.tar.gz |
Overhaul most of the packaging.
- Replace rc.d file with systemd service file.
- Run as unprivileged user (rwhod) instead of root.
- Split PKGBUILD build() function into build() and package().
- Update to upstream version 0.17-3.
- Remove netkit-rwho conflict (this package does not seem to exist in
either the official repositories or the AUR.)
- Improve PKGBUILD conventions.
-rw-r--r-- | .SRCINFO | 15 | ||||
-rw-r--r-- | .gitignore | 6 | ||||
-rw-r--r-- | PKGBUILD | 47 | ||||
-rw-r--r-- | rwhod.conf | 2 | ||||
-rw-r--r-- | rwhod.install | 32 | ||||
-rw-r--r-- | rwhod.rc | 40 | ||||
-rw-r--r-- | rwhod.service | 11 |
7 files changed, 84 insertions, 69 deletions
@@ -1,23 +1,22 @@ pkgbase = netkit-rwho-debian pkgdesc = Remote who pkgver = 0.17 - pkgrel = 2 + pkgrel = 3 url = ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/ install = rwhod.install arch = i686 arch = x86_64 license = GPL depends = glibc - conflicts = netkit-rwho backup = etc/conf.d/rwhod - source = http://ftp.de.debian.org/debian/pool/main/n/netkit-rwho/netkit-rwho_0.17.orig.tar.gz - source = http://ftp.de.debian.org/debian/pool/main/n/netkit-rwho/netkit-rwho_0.17-12.diff.gz - source = rwhod.rc + source = http://ftp.debian.org/debian/pool/main/n/netkit-rwho/netkit-rwho_0.17.orig.tar.gz + source = http://ftp.debian.org/debian/pool/main/n/netkit-rwho/netkit-rwho_0.17-13.debian.tar.gz source = rwhod.conf + source = rwhod.service md5sums = 0f71620d45d472f89134ba0d74242e75 - md5sums = ccbb57e61d8594aa37c33cc906071ce1 - md5sums = 5ab5042d60e508658e0a676d13556acb - md5sums = d052293ac9c851ba8093338c530b349e + md5sums = 82ed5a3c6b0bbf00b36508b9787963b9 + md5sums = 6f0db2a76fc465cc2e2d37dc0c4aa19d + md5sums = d8ff594a2235fb7a0b3328f6f2459e60 pkgname = netkit-rwho-debian diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..f7ddb86b1dc5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +/netkit-rwho_*.tar.gz +/src +/pkg +*.pkg.tar.xz +*.pkg.tar.xz.sig +*.src.tar.gz @@ -1,27 +1,46 @@ +# Maintainer: Graham Edgecombe <graham@grahamedgecombe.com> +# Contributor: mortzu pkgname=netkit-rwho-debian pkgver=0.17 -pkgrel=2 +pkgrel=3 +_debrev=13 arch=('i686' 'x86_64') license=('GPL') pkgdesc="Remote who" depends=('glibc') -conflicts=('netkit-rwho') -url="ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/" +url='ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/' install=rwhod.install -backup=(etc/conf.d/rwhod) -source=(http://ftp.de.debian.org/debian/pool/main/n/netkit-rwho/netkit-rwho_0.17.orig.tar.gz http://ftp.de.debian.org/debian/pool/main/n/netkit-rwho/netkit-rwho_$pkgver-12.diff.gz rwhod.rc rwhod.conf) -md5sums=('0f71620d45d472f89134ba0d74242e75' 'ccbb57e61d8594aa37c33cc906071ce1' '5ab5042d60e508658e0a676d13556acb' 'd052293ac9c851ba8093338c530b349e') +backup=('etc/conf.d/rwhod') +source=(http://ftp.debian.org/debian/pool/main/n/netkit-rwho/netkit-rwho_${pkgver}.orig.tar.gz + http://ftp.debian.org/debian/pool/main/n/netkit-rwho/netkit-rwho_${pkgver}-${_debrev}.debian.tar.gz + rwhod.conf rwhod.service) +md5sums=('0f71620d45d472f89134ba0d74242e75' + '82ed5a3c6b0bbf00b36508b9787963b9' + '6f0db2a76fc465cc2e2d37dc0c4aa19d' + 'd8ff594a2235fb7a0b3328f6f2459e60') build() { cd $srcdir/netkit-rwho-$pkgver - patch -Np1 -i ../netkit-rwho_$pkgver-12.diff + + while read patch; do + patch -Np1 -i ../debian/patches/$patch + done < ../debian/patches/series + ./configure --prefix=/usr --installroot=$pkgdir - make || return 1 - mkdir -p $pkgdir/usr/{bin,sbin,man/man1,man/man8} $pkgdir/etc/rc.d - make install || return 1 - mkdir -p $pkgdir/var/spool/rwho - install -m755 $srcdir/rwhod.rc $pkgdir/etc/rc.d/rwhod || return 1 - install -m644 -D $srcdir/rwhod.conf $pkgdir/etc/conf.d/rwhod || return 1 + make } -# end of file # +package() { + cd $srcdir/netkit-rwho-$pkgver + + mkdir -p $pkgdir/usr/{bin,sbin,share,man/man1,man/man8} $pkgdir/var/spool/rwho + make install + + mv $pkgdir/usr/man $pkgdir/usr/share/man + + mv $pkgdir/usr/sbin/rwhod $pkgdir/usr/bin + rmdir $pkgdir/usr/sbin + + install -Dm644 $srcdir/rwhod.conf $pkgdir/etc/conf.d/rwhod + install -Dm644 $srcdir/rwhod.service $pkgdir/usr/lib/systemd/system/rwhod.service +} diff --git a/rwhod.conf b/rwhod.conf index 1eff3eef59bc..cdf5baad5743 100644 --- a/rwhod.conf +++ b/rwhod.conf @@ -1 +1 @@ -RWHOD_OPTS="-fau root" +RWHOD_OPTS="-fau rwhod" diff --git a/rwhod.install b/rwhod.install index 5e863eb832bc..3ee05942f75e 100644 --- a/rwhod.install +++ b/rwhod.install @@ -1,7 +1,27 @@ -post_install () { - echo ">> Place 'rwhod' in DAEMONS= in /etc/rc.conf to enable rwhod on system boot." +post_install() { + if ! getent group rwhod &>/dev/null; then + groupadd -r rwhod &>/dev/null + fi + + if ! getent passwd rwhod &>/dev/null; then + useradd -s /bin/false -d /var/spool/rwho -g rwhod -M -r rwhod &>/dev/null + fi + + chown -R rwhod:rwhod /var/spool/rwho +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + if getent passwd rwhod &>/dev/null; then + userdel rwhod &>/dev/null + fi + + if getent group rwhod &>/dev/null; then + groupdel rwhod &>/dev/null + fi + + rm -rf /var/spool/rwhod/* &>/dev/null || true } -op=$1 -shift -$op $* -
\ No newline at end of file diff --git a/rwhod.rc b/rwhod.rc deleted file mode 100644 index f165c62955b9..000000000000 --- a/rwhod.rc +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/rwhod - -PID=`pidof -o %PPID /usr/sbin/rwhod` -case "$1" in - start) - stat_busy "Starting Remote WHO Daemon" - if [ -z "$PID" ]; then - /usr/sbin/rwhod $RWHOD_OPTS & - fi - if [ ! -z "$PID" ]; then - stat_fail - else - PID=`pidof -o %PPID /usr/sbin/rwhod` - echo $PID > /var/run/rwhod.pid - add_daemon rwhod - stat_done - fi - ;; - stop) - stat_busy "Stopping Remote WHO Daemon" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon rwhod - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac diff --git a/rwhod.service b/rwhod.service new file mode 100644 index 000000000000..a25e2b0998b4 --- /dev/null +++ b/rwhod.service @@ -0,0 +1,11 @@ +[Unit] +Description=Remote WHO Daemon +After=syslog.target network.target + +[Service] +Type=forking +EnvironmentFile=/etc/conf.d/rwhod +ExecStart=/usr/bin/rwhod $RWHOD_OPTS + +[Install] +WantedBy=multi-user.target |