diff options
author | Florian Pritz <bluewind@xssn.at> | 2010-01-15 15:44:57 +0100 |
---|---|---|
committer | Florian Pritz <bluewind@xssn.at> | 2010-01-17 11:59:54 +0100 |
commit | 64006164bbad9e1a0a383dde8aa86a5316c1a66f (patch) | |
tree | 0b02e45d6d1b8fd53c846a8485b84c3992fcb78d | |
parent | 2f9f502d10d7ac92f051b40a71b31998c93e2607 (diff) | |
download | aur-packages-64006164bbad9e1a0a383dde8aa86a5316c1a66f.tar.gz aur-packages-64006164bbad9e1a0a383dde8aa86a5316c1a66f.tar.xz |
add murmur
Signed-off-by: Florian Pritz <bluewind@xssn.at>
-rw-r--r-- | murmur/ChangeLog | 28 | ||||
-rw-r--r-- | murmur/PKGBUILD | 85 | ||||
-rw-r--r-- | murmur/murmur.conf.d | 2 | ||||
-rw-r--r-- | murmur/murmur.dbus.conf | 22 | ||||
-rw-r--r-- | murmur/murmur.install | 44 | ||||
-rw-r--r-- | murmur/murmur.logrotate.d | 6 | ||||
-rwxr-xr-x | murmur/murmur.rc.d | 37 | ||||
-rw-r--r-- | murmur/murmur.sh | 9 |
8 files changed, 174 insertions, 59 deletions
diff --git a/murmur/ChangeLog b/murmur/ChangeLog new file mode 100644 index 0000000..f2dabfd --- /dev/null +++ b/murmur/ChangeLog @@ -0,0 +1,28 @@ +2009-12-18 Otto Allmendinger <otto.allmendinger@gmail.com> + * 1.2.0-8: + included dbus configuration file, changed default dbus settings + + * 1.2.0-7: + included manfile + renamed binary "murmur" to "murmurd" to be consistent with manfile + changed murmur user shell to /bin/false (shell access not required anymore) + +2009-12-17 Malte Rabenseifner <malte@zearan.de> + * 1.2.0-6: + included manfile + using mumbles included privilige dropping + added some files to backup array + added logrotate configuration file + +2009-12-15 Otto Allmendinger <otto.allmendinger@gmail.com> + * 1.2.0-5 : + simplified dependencies + increased visibility of install messages + + * 1.2.0-4 : + added boost to makedepends + + * 1.2.0-3 : + added ChangeLog + added post_upgrade() function + added x86_64 to arch diff --git a/murmur/PKGBUILD b/murmur/PKGBUILD index bc5ee00..46ea90c 100644 --- a/murmur/PKGBUILD +++ b/murmur/PKGBUILD @@ -1,45 +1,58 @@ -# Contributor: Sebastian.Salich@gmx.de -# Maintainer: Doc Angelo +# Maintainer: Otto Allmendinger <otto.allmendinger@googlemail.com> +# Contributor: Malte Rabenseifner <malte@zearan.de> pkgname=murmur -pkgver=1.1.8 -pkgrel=1 -arch=('i686' 'x86_64') +pkgver=1.2.0 +pkgrel=8 pkgdesc="The voice chat application server for Mumble" +arch=('i686' 'x86_64') +url="http://mumble.sourceforge.net" license=('GPL') -backup=('etc/murmurd.ini') -depends=('qt>=4.4.0' 'libcap') -makedepends=('pkgconfig') -conflicts=('mumble<=1.1.4' 'mumble-server') -options=('!libtool') -url="http://mumble.sourceforge.net/" -source=("http://downloads.sourceforge.net/mumble/mumble-$pkgver.tar.gz" \ - murmurd \ - murmur.install \ - murmur-config.sh) -md5sums=('a7da012922d39b87c45d9f481d4b5efb' - 'e3c7be4cc45ff64a7b9e36605ac24497' - '5a9f17491006e979037ac148a3881fe2' - 'ceb7bf98b02ce49837b2ea7640c4b68d') -install=murmur.install +depends=('avahi' 'lsb-release' 'protobuf' 'qt>=4.4.0') +makedepends=('boost') +conflicts=('murmur-ice' 'murmur-static' 'murmur-git') +backup=("etc/murmur.ini" + "etc/logrotate.d/murmur" + "etc/conf.d/murmur" ) +install="murmur.install" +source=("http://downloads.sourceforge.net/mumble/mumble-$pkgver.tar.gz" + "murmur.rc.d" + "murmur.conf.d" + "murmur.dbus.conf" + "murmur.logrotate.d" +) + +md5sums=('25872328c8bbc8282ad7ebdeacc0e8b6' + 'b99061be67c54bf0bb4a061fd1280281' + '11c1cc875e8021739ec2087252cf0533' + 'eddea4cdbd0bde4b960a67e16b5d5478' + 'c56726cb267ead68f37f35c28e36e6fa') build() { - cd $srcdir/mumble-$pkgver - - # Building murmur - /usr/bin/qmake main.pro "CONFIG+=no-client no-ice" || exit 1 - make || exit 1 + cd ${srcdir}/mumble-$pkgver + + qmake main.pro CONFIG+="no-client no-ice" || return 1 + make || return 1 - # create directories and copy files - install -m755 -D $startdir/murmurd $pkgdir/etc/rc.d/murmurd - install -m755 -D $startdir/murmur-config.sh $pkgdir/usr/bin/murmur-config.sh - install -m755 -D ./release/murmurd $pkgdir/usr/sbin/murmurd - install -m755 -d $pkgdir/usr/share/man/man1 - install -m644 -D ./man/mur* $pkgdir/usr/share/man/man1/ - install -m755 -d $pkgdir/var/lib/murmurd + sed -e "1i# vi:ft=cfg" \ + -e "s|database=|database=/var/lib/murmur/murmur.sqlite|" \ + -e "s|dbus=session|#dbus=system|" \ + -e "s|#logfile=murmur.log|logfile=/var/log/murmur/murmur.log|" \ + -e "s|#pidfile=|pidfile=/var/run/murmur/murmur.pid|" \ + -e "s|#uname=|uname=murmur|" \ + -i scripts/murmur.ini || return 1 - # copy and modify murmurd.ini - sed 's|database=|database=/var/lib/murmurd/murmurd.sqlite|g;s|#logfile=murmur.log|logfile=/var/log/murmurd.log|g' ./scripts/murmur.ini > ./scripts/murmurd.ini - install -m644 -D ./scripts/murmurd.ini $pkgdir/etc/ - rm ./scripts/murmurd.ini + install -dm755 ${pkgdir}/var/lib/murmur + install -dm755 ${pkgdir}/var/log/murmur + install -dm755 ${pkgdir}/var/run/murmur + install -Dm755 release/murmurd ${pkgdir}/usr/sbin/murmurd + install -Dm644 scripts/murmur.ini ${pkgdir}/etc/murmur.ini + install -Dm755 ${startdir}/murmur.rc.d ${pkgdir}/etc/rc.d/murmur + install -Dm644 ${startdir}/murmur.conf.d ${pkgdir}/etc/conf.d/murmur + install -Dm644 ${startdir}/murmur.dbus.conf \ + ${pkgdir}/etc/dbus-1/system.d/murmur.conf + install -Dm644 ${startdir}/murmur.logrotate.d \ + ${pkgdir}/etc/logrotate.d/murmur + install -Dm644 README ${pkgdir}/usr/share/doc/murmur/README + install -Dm644 man/murmurd.1 ${pkgdir}/usr/share/man/man1/murmurd.1 } diff --git a/murmur/murmur.conf.d b/murmur/murmur.conf.d new file mode 100644 index 0000000..592194b --- /dev/null +++ b/murmur/murmur.conf.d @@ -0,0 +1,2 @@ +# Use /etc/murmur.ini as configuration file +PARAMS="-ini /etc/murmur.ini" diff --git a/murmur/murmur.dbus.conf b/murmur/murmur.dbus.conf new file mode 100644 index 0000000..cf937d7 --- /dev/null +++ b/murmur/murmur.dbus.conf @@ -0,0 +1,22 @@ +<!-- vi: set ft=xml: --> +<!-- + As described in http://mumble.sourceforge.net/DBus, + but with different username +--> +<!DOCTYPE busconfig PUBLIC + "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" + "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> +<busconfig> + + <policy user="murmur"> + <allow own="net.sourceforge.mumble.murmur"/> + </policy> + <policy user="root"> + <allow own="net.sourceforge.mumble.murmur"/> + </policy> + + <policy context="default"> + <allow send_destination="net.sourceforge.mumble.murmur"/> + <allow receive_sender="net.sourceforge.mumble.murmur"/> + </policy> +</busconfig> diff --git a/murmur/murmur.install b/murmur/murmur.install index d940c64..9e1446d 100644 --- a/murmur/murmur.install +++ b/murmur/murmur.install @@ -1,35 +1,33 @@ -# arg 1: the new package version -pre_install() { - /bin/true -} - post_install() { - echo ' -> The user SuperUser has a blank password! You can change' - echo ' -> this and administrate users with murmur-config.sh.' - echo '' -} -# arg 1: the new package version -# arg 2: the old package version -pre_upgrade() { - /bin/true + # bug: dbus reload here doesn't work + # workaround: it seems to work if you do it a few seconds later, manually + /etc/rc.d/dbus reload > /dev/null + + /usr/bin/getent group murmur > /dev/null || /usr/sbin/groupadd murmur + /usr/bin/getent passwd murmur > /dev/null || \ + /usr/sbin/useradd -d /var/lib/murmur -g murmur -s /bin/false murmur + + chown -R murmur:murmur /var/lib/murmur + chown -R murmur:murmur /var/run/murmur + chown -R murmur:murmur /var/log/murmur + + echo + echo '==> Set the SuperUser password with (as root):' + echo '==> murmurd -ini /etc/murmur.ini -supw PASSWORD' } post_upgrade() { - /bin/true + post_install } -# arg 1: the old package version pre_remove() { - /bin/true + [ -f /var/run/daemons/murmur ] && /etc/rc.d/murmur stop > /dev/null + killall -u murmur -5 + sleep 1 } -# arg 1: the old package version post_remove() { - /bin/true + /etc/rc.d/dbus reload > /dev/null + /usr/sbin/userdel murmur > /dev/null } - -op=$1 -shift -$op $* -
\ No newline at end of file diff --git a/murmur/murmur.logrotate.d b/murmur/murmur.logrotate.d new file mode 100644 index 0000000..e113175 --- /dev/null +++ b/murmur/murmur.logrotate.d @@ -0,0 +1,6 @@ +/var/log/murmur/murmur.log { + missingok + postrotate + /bin/kill -HUP `cat /var/run/murmur/murmur.pid 2>/dev/null` 2> /dev/null || true + endscript +} diff --git a/murmur/murmur.rc.d b/murmur/murmur.rc.d new file mode 100755 index 0000000..ae5d42d --- /dev/null +++ b/murmur/murmur.rc.d @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=$(pidof -o %PPID /usr/lib/murmur/murmur) +case "$1" in + start) + stat_busy "Starting murmur" + [ -z "$PID" ] && /usr/lib/murmur/murmur -ini /etc/murmurd/murmurd.ini + [ -z "$PID" ] && /usr/lib/murmur/murmur -ini /etc/murmurd/murmurd-b52.ini + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon murmur + stat_done + fi + ;; + stop) + stat_busy "Stopping murmur" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon murmur + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/murmur/murmur.sh b/murmur/murmur.sh new file mode 100644 index 0000000..26aa922 --- /dev/null +++ b/murmur/murmur.sh @@ -0,0 +1,9 @@ +#!/bin/bash +# +# Author: Otto Allmendinger <otto.allmendinger at googlemail dot com> +# Date: 2009-12-14 +# Description: Murmur wrapper script for pivilige separation +# + +ARGS="-ini /etc/murmur.ini $@" +su -c "/usr/lib/murmur/murmur ${ARGS}" - murmur |