From 886c66fc80b7db1a8ec9466ed6f180871ea11871 Mon Sep 17 00:00:00 2001 From: Gluzskiy Alexandr Date: Thu, 11 Dec 2014 21:12:15 +0300 Subject: murmur scm --- media-sound/murmur/files/murmur.confd | 9 ++ media-sound/murmur/files/murmur.initd-r1 | 25 +++++ media-sound/murmur/files/murmur.logrotate | 8 ++ media-sound/murmur/files/murmurd-dbus.service | 14 +++ media-sound/murmur/files/murmurd-dbus.tmpfiles | 1 + media-sound/murmur/files/murmurd-no-dbus.service | 11 ++ media-sound/murmur/murmur-scm.ebuild | 136 +++++++++++++++++++++++ 7 files changed, 204 insertions(+) create mode 100644 media-sound/murmur/files/murmur.confd create mode 100644 media-sound/murmur/files/murmur.initd-r1 create mode 100644 media-sound/murmur/files/murmur.logrotate create mode 100644 media-sound/murmur/files/murmurd-dbus.service create mode 100644 media-sound/murmur/files/murmurd-dbus.tmpfiles create mode 100644 media-sound/murmur/files/murmurd-no-dbus.service create mode 100644 media-sound/murmur/murmur-scm.ebuild diff --git a/media-sound/murmur/files/murmur.confd b/media-sound/murmur/files/murmur.confd new file mode 100644 index 0000000..36367c5 --- /dev/null +++ b/media-sound/murmur/files/murmur.confd @@ -0,0 +1,9 @@ +# where to look for the config file +MURMUR_CONF=/etc/murmur/murmur.ini + +# run as this user +MURMUR_USER=murmur + +# HOME directory of MURMUR_USER +MURMUR_HOME=/var/lib/murmur + diff --git a/media-sound/murmur/files/murmur.initd-r1 b/media-sound/murmur/files/murmur.initd-r1 new file mode 100644 index 0000000..29b2f9d --- /dev/null +++ b/media-sound/murmur/files/murmur.initd-r1 @@ -0,0 +1,25 @@ +#!/sbin/runscript + +pidfile="/run/murmur/murmur.pid" +command="/usr/bin/murmurd" +command_args="-ini \"${MURMUR_CONF}\"" +start_stop_daemon_args="-u \"${MURMUR_USER}\" --env HOME=\"${MURMUR_HOME}\" --wait 20" +extra_started_commands="reload" + +depend() { + need localmount net + use dbus logger + after bootmisc mysql +} + +start_pre() { + checkpath -d -o ${MURMUR_USER} ${pidfile%/*} +} + +reload() { + ebegin "Reloading Murmur" + start-stop-daemon --signal HUP --pidfile "${pidfile}" \ + --exec ${command} + eend $? +} + diff --git a/media-sound/murmur/files/murmur.logrotate b/media-sound/murmur/files/murmur.logrotate new file mode 100644 index 0000000..c6ca48b --- /dev/null +++ b/media-sound/murmur/files/murmur.logrotate @@ -0,0 +1,8 @@ +/var/log/murmur/*.log { + missingok + notifempty + sharedscripts + postrotate + /etc/init.d/murmur reload > /dev/null + endscript +} diff --git a/media-sound/murmur/files/murmurd-dbus.service b/media-sound/murmur/files/murmurd-dbus.service new file mode 100644 index 0000000..46fe532 --- /dev/null +++ b/media-sound/murmur/files/murmurd-dbus.service @@ -0,0 +1,14 @@ +[Unit] +Description=Murmurd - VoIP Server (for Mumble) +After=network.target mysql.service + +[Service] +User=murmur +Group=murmur +Type=dbus +BusName=net.sourceforge.mumble.murmur +PIDFile=/run/murmur/murmur.pid +ExecStart=/usr/bin/murmurd -ini /etc/murmur/murmur.ini + +[Install] +WantedBy=multi-user.target diff --git a/media-sound/murmur/files/murmurd-dbus.tmpfiles b/media-sound/murmur/files/murmurd-dbus.tmpfiles new file mode 100644 index 0000000..70963d0 --- /dev/null +++ b/media-sound/murmur/files/murmurd-dbus.tmpfiles @@ -0,0 +1 @@ +d /run/murmur 0755 murmur murmur diff --git a/media-sound/murmur/files/murmurd-no-dbus.service b/media-sound/murmur/files/murmurd-no-dbus.service new file mode 100644 index 0000000..8631de2 --- /dev/null +++ b/media-sound/murmur/files/murmurd-no-dbus.service @@ -0,0 +1,11 @@ +[Unit] +Description=Murmurd - VoIP Server (for Mumble) +After=network.target mysql.service + +[Service] +User=murmur +Group=murmur +ExecStart=/usr/bin/murmurd -fg -ini /etc/murmur/murmur.ini + +[Install] +WantedBy=multi-user.target diff --git a/media-sound/murmur/murmur-scm.ebuild b/media-sound/murmur/murmur-scm.ebuild new file mode 100644 index 0000000..1be2613 --- /dev/null +++ b/media-sound/murmur/murmur-scm.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-sound/murmur/murmur-1.2.8.ebuild,v 1.1 2014/10/30 21:34:30 tgurr Exp $ + +EAPI="5" + +QT_MINIMAL="5" + +inherit eutils qt4-r2 systemd user readme.gentoo git-2 + + +DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software" +HOMEPAGE="http://mumble.sourceforge.net/" +SRC_URI="" +EGIT_REPO_URI="https://github.com/mumble-voip/mumble.git" +EGIT_HAS_SUBMODULES="1" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~ia64 ~x86" +IUSE="+dbus debug +ice pch zeroconf" + +RDEPEND=">=dev-libs/openssl-1.0.0b + >=dev-libs/protobuf-2.2.0 + sys-apps/lsb-release + >=sys-libs/libcap-2.15 + dev-qt/qtcore:5 + dev-qt/qtxml:5 + || ( dev-qt/qtsql:5[sqlite] dev-qt/qtsql:5[mysql] ) + dev-qt/qtxmlpatterns:5 + dbus? ( dev-qt/qtdbus:5 ) + ice? ( dev-libs/Ice ) + zeroconf? ( net-dns/avahi[mdnsresponder-compat] )" + +DEPEND="${RDEPEND} + >=dev-libs/boost-1.41.0 + virtual/pkgconfig" + +S="${WORKDIR}/${MY_P}" + +#PATCHES=( +# "${FILESDIR}"/${PN}-1.2.4-ice-3.5.0-compat.patch +# "${FILESDIR}"/${PN}-1.2.4-ice-3.5.1-compat.patch +#) + +DOC_CONTENTS=" + Useful scripts are located in /usr/share/doc/${PF}/scripts.\n + Please execute:\n + murmurd -ini /etc/murmur/murmur.ini -supw \n + chown murmur:murmur /var/lib/murmur/murmur.sqlite\n + to set the build-in 'SuperUser' password before starting murmur. + Please restart dbus before starting murmur, or else dbus + registration will fail. +" + +pkg_setup() { + enewgroup murmur + enewuser murmur -1 -1 /var/lib/murmur murmur +} + +src_prepare() { + qt4-r2_src_prepare + + sed \ + -e 's:mumble-server:murmur:g' \ + -e 's:/var/run:/run:g' \ + -i "${S}"/scripts/murmur.{conf,ini} || die +} + +src_configure() { + local conf_add + + use dbus || conf_add="${conf_add} no-dbus" + use debug && conf_add="${conf_add} symbols debug" || conf_add="${conf_add} release" + use ice || conf_add="${conf_add} no-ice" + use pch || conf_add="${conf_add} no-pch" + use zeroconf || conf_add="${conf_add} no-bonjour" + + eqmake5 main.pro -recursive \ + CONFIG+="${conf_add} no-client" +} + +src_compile() { + # parallel make workaround, upstream bug #3190498 + emake -j1 +} + +src_install() { +# dodoc README CHANGES + +# docinto scripts +# dodoc scripts/*.php scripts/*.pl + + local dir + if use debug; then + dir=debug + else + dir=release + fi + + dobin "${dir}"/murmurd + + insinto /etc/murmur/ + newins scripts/murmur.ini murmur.ini + + insinto /etc/logrotate.d/ + newins "${FILESDIR}"/murmur.logrotate murmur + + insinto /etc/dbus-1/system.d/ + doins scripts/murmur.conf + + insinto /usr/share/murmur/ + doins src/murmur/Murmur.ice + + newinitd "${FILESDIR}"/murmur.initd-r1 murmur + newconfd "${FILESDIR}"/murmur.confd murmur + + if use dbus; then + systemd_newunit "${FILESDIR}"/murmurd-dbus.service "${PN}".service + systemd_newtmpfilesd "${FILESDIR}"/murmurd-dbus.tmpfiles "${PN}".conf + else + systemd_newunit "${FILESDIR}"/murmurd-no-dbus.service "${PN}".service + fi + + keepdir /var/lib/murmur /var/log/murmur + fowners -R murmur /var/lib/murmur /var/log/murmur + fperms 750 /var/lib/murmur /var/log/murmur + + doman man/murmurd.1 + + readme.gentoo_create_doc +} + +pkg_postinst() { + readme.gentoo_print_elog +} -- cgit v1.2.3