summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-voip/murmur')
-rw-r--r--net-voip/murmur/Manifest4
-rw-r--r--net-voip/murmur/files/murmur.confd9
-rw-r--r--net-voip/murmur/files/murmur.initd-r125
-rw-r--r--net-voip/murmur/files/murmur.initd-r224
-rw-r--r--net-voip/murmur/files/murmur.logrotate8
-rw-r--r--net-voip/murmur/files/murmurd-dbus.tmpfiles1
-rw-r--r--net-voip/murmur/metadata.xml15
-rw-r--r--net-voip/murmur/murmur-1.3.3.ebuild162
-rw-r--r--net-voip/murmur/murmur-1.3.4.ebuild162
-rw-r--r--net-voip/murmur/murmur-1.4.230-r2.ebuild176
-rw-r--r--net-voip/murmur/murmur-9999.ebuild170
11 files changed, 756 insertions, 0 deletions
diff --git a/net-voip/murmur/Manifest b/net-voip/murmur/Manifest
new file mode 100644
index 000000000000..04a9a00d763c
--- /dev/null
+++ b/net-voip/murmur/Manifest
@@ -0,0 +1,4 @@
+DIST mumble-1.3.3.tar.gz 8591354 BLAKE2B e5bf4d0a21f3c9af761b0892c4a5a7d86244d3283070976fe7a779a10567ffd857e0c19dad750cdbae40d851ce1dcf17b66c63a2cb5142a13358af6f272445dd SHA512 be4c6d4de82a1059bf30d4c7e3c44e41e4bb50dc4a811b7d0def808c52059ff7bcccf65140db940f18cc1bb66d58ea4dab23ba5dcfae3b8b904866751f32edb3
+DIST mumble-1.3.4.tar.gz 8592741 BLAKE2B bcde3fd859ec4faea06f996cd4c583af7c0b8409cca79cb05ef8ba7fcdeac9e49ed1d07a4131225dd582da7610190d4006abc731fd4276b2288e02e8c18effb6 SHA512 e2dde5aad30d1a931e7acd8d7db0b8c785d3a268d0b8cf5626fa03953a51bcadb719c6682c440d02524e83beee13d73d8f5bb3fdf98ab1c82d3ecf824cc25f68
+DIST mumble-1.4-openssl3.patch.xz 4172 BLAKE2B 5b68f023e218628a4d73b0991dcc7790ce5f92ce6a27c372c5e80b1f3a8beafa3ddd6416b884705b321aee31ea4f5e09dda6ceb240272dde64f420fbeb06845a SHA512 3a4e504f3365e93418cb85d0da4e6f2f54ab904283743907604bb39276560a4215d9bea1b225601789d1c3d84d270c04840ec57cd04e3df1204cc586ea42562a
+DIST mumble-1.4.230.tar.gz 9441667 BLAKE2B da433f3c15d7e45dfac0c8a78c9dbe86ba8d5cd078d2d87fd4d90718968fc9e5928c3c5c5ba2e40a8a54d02a646c5fc6a7ee2fff4b71dfa411d74f395b097c26 SHA512 6cffc7a95d88b33876f4093b99266468210f5c14f190fbd2fbe4991bef91a567e55296e7c8c6cc99e19c054853211085cc3cc08109e367e6776afb70766b3a53
diff --git a/net-voip/murmur/files/murmur.confd b/net-voip/murmur/files/murmur.confd
new file mode 100644
index 000000000000..36367c51136b
--- /dev/null
+++ b/net-voip/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/net-voip/murmur/files/murmur.initd-r1 b/net-voip/murmur/files/murmur.initd-r1
new file mode 100644
index 000000000000..fe49b32f1410
--- /dev/null
+++ b/net-voip/murmur/files/murmur.initd-r1
@@ -0,0 +1,25 @@
+#!/sbin/openrc-run
+
+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 -q -d -o ${MURMUR_USER} ${pidfile%/*}
+}
+
+reload() {
+ ebegin "Reloading Murmur"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}" \
+ --exec ${command}
+ eend $?
+}
+
diff --git a/net-voip/murmur/files/murmur.initd-r2 b/net-voip/murmur/files/murmur.initd-r2
new file mode 100644
index 000000000000..b754c242462b
--- /dev/null
+++ b/net-voip/murmur/files/murmur.initd-r2
@@ -0,0 +1,24 @@
+#!/sbin/openrc-run
+
+pidfile="/run/murmur/murmur.pid"
+command="/usr/bin/mumble-server"
+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 -q -d -o ${MURMUR_USER} ${pidfile%/*}
+}
+
+reload() {
+ ebegin "Reloading Murmur"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}" \
+ --exec ${command}
+ eend $?
+}
diff --git a/net-voip/murmur/files/murmur.logrotate b/net-voip/murmur/files/murmur.logrotate
new file mode 100644
index 000000000000..a82cb1a336c4
--- /dev/null
+++ b/net-voip/murmur/files/murmur.logrotate
@@ -0,0 +1,8 @@
+/var/log/murmur/*.log {
+ missingok
+ notifempty
+ sharedscripts
+ postrotate
+ test -r /run/murmur/murmur.pid && kill -HUP $(cat /run/murmur/murmur.pid) &>/dev/null
+ endscript
+}
diff --git a/net-voip/murmur/files/murmurd-dbus.tmpfiles b/net-voip/murmur/files/murmurd-dbus.tmpfiles
new file mode 100644
index 000000000000..70963d0a575b
--- /dev/null
+++ b/net-voip/murmur/files/murmurd-dbus.tmpfiles
@@ -0,0 +1 @@
+d /run/murmur 0755 murmur murmur
diff --git a/net-voip/murmur/metadata.xml b/net-voip/murmur/metadata.xml
new file mode 100644
index 000000000000..453aea68c4d9
--- /dev/null
+++ b/net-voip/murmur/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>concord@gentoo.org</email>
+ <name>Kenton Groombridge</name>
+ </maintainer>
+ <use>
+ <flag name="grpc">Use <pkg>net-libs/grpc</pkg> to enable remote control capabilities.</flag>
+ <flag name="ice">Use <pkg>dev-libs/Ice</pkg> to enable remote control capabilities.</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">mumble</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-voip/murmur/murmur-1.3.3.ebuild b/net-voip/murmur/murmur-1.3.3.ebuild
new file mode 100644
index 000000000000..02674b111771
--- /dev/null
+++ b/net-voip/murmur/murmur-1.3.3.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit qmake-utils systemd readme.gentoo-r1 tmpfiles
+
+DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software"
+HOMEPAGE="https://wiki.mumble.info"
+if [[ "${PV}" == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/mumble-voip/mumble.git"
+ EGIT_SUBMODULES=( '-*' )
+else
+ MY_PN="mumble"
+ if [[ "${PV}" == *_pre* ]] ; then
+ MY_P="${MY_PN}-${PV}"
+ SRC_URI="https://dev.gentoo.org/~polynomial-c/dist/${MY_P}.tar.xz"
+ S="${WORKDIR}/${MY_P}"
+ else
+ MY_PV="${PV/_/-}"
+ MY_P="${MY_PN}-${MY_PV}"
+ SRC_URI="https://github.com/mumble-voip/mumble/releases/download/${MY_PV}/${MY_P}.tar.gz
+ https://dl.mumble.info/${MY_P}.tar.gz"
+ S="${WORKDIR}/${MY_PN}-${PV/_*}"
+ fi
+ KEYWORDS="amd64 ~arm x86"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="+dbus debug +ice pch zeroconf"
+
+RDEPEND="
+ acct-group/murmur
+ acct-user/murmur
+ >=dev-libs/openssl-1.0.0b:0=
+ >=dev-libs/protobuf-2.2.0:=
+ dev-qt/qtcore:5
+ dev-qt/qtnetwork:5
+ || (
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtsql:5[mysql]
+ )
+ dev-qt/qtxml:5
+ sys-apps/lsb-release
+ >=sys-libs/libcap-2.15
+ dbus? ( dev-qt/qtdbus:5 )
+ ice? ( dev-libs/Ice:= )
+ zeroconf? ( net-dns/avahi[mdnsresponder-compat] )
+"
+
+DEPEND="${RDEPEND}
+ >=dev-libs/boost-1.41.0
+"
+BDEPEND="
+ acct-group/murmur
+ acct-user/murmur
+ virtual/pkgconfig
+"
+
+if [[ "${PV}" == *9999 ]] ; then
+ # Required for the mkini.sh script which calls perl multiple times
+ BDEPEND+="
+ dev-lang/perl
+ "
+fi
+
+DOC_CONTENTS="
+ Useful scripts are located in /usr/share/doc/${PF}/scripts.\n
+ Please execute:\n
+ murmurd -ini /etc/murmur/murmur.ini -supw <pw>\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.
+"
+
+src_prepare() {
+ default
+
+ if [[ "${PV}" == *9999 ]] ; then
+ pushd scripts &>/dev/null || die
+ ./mkini.sh || die
+ popd &>/dev/null || die
+ fi
+
+ sed \
+ -e 's:mumble-server:murmur:g' \
+ -e 's:/var/run:/run:g' \
+ -i "${S}"/scripts/murmur.{conf,ini.system} || die
+
+ # Adjust systemd service file to our config location #689208
+ sed "s@/etc/${PN}\.ini@/etc/${PN}/${PN}.ini@" \
+ -i scripts/${PN}.service || die
+}
+
+src_configure() {
+ myuse() {
+ [[ -n "${1}" ]] || die "myconf: No use flag given."
+ use ${1} || echo "no-${1}"
+ }
+ local conf_add=(
+ no-client
+ $(myuse dbus)
+ $(usex debug 'symbols debug' release)
+ $(myuse ice)
+ $(myuse pch)
+ $(usex zeroconf '' no-bonjour)
+ )
+
+ eqmake5 main.pro -recursive \
+ CONFIG+="${conf_add[*]}"
+}
+
+src_install() {
+ dodoc README CHANGES
+
+ docinto scripts
+ dodoc -r scripts/server
+ docompress -x /usr/share/doc/${PF}/scripts
+
+ local dir="$(usex debug debug release)"
+ dobin "${dir}"/murmurd
+
+ local etcdir="/etc/murmur"
+ insinto ${etcdir}
+ newins scripts/${PN}.ini.system ${PN}.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
+
+ systemd_dounit scripts/${PN}.service
+ newtmpfiles "${FILESDIR}"/murmurd-dbus.tmpfiles "${PN}".conf
+
+ keepdir /var/lib/murmur /var/log/murmur
+ fowners -R murmur /var/lib/murmur /var/log/murmur
+ fperms 750 /var/lib/murmur /var/log/murmur
+
+ # Fix permissions on config file as it might contain passwords.
+ # (bug #559362)
+ fowners root:murmur ${etcdir}/murmur.ini
+ fperms 640 ${etcdir}/murmur.ini
+
+ doman man/murmurd.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+ readme.gentoo_print_elog
+}
diff --git a/net-voip/murmur/murmur-1.3.4.ebuild b/net-voip/murmur/murmur-1.3.4.ebuild
new file mode 100644
index 000000000000..a2034bc55449
--- /dev/null
+++ b/net-voip/murmur/murmur-1.3.4.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit qmake-utils systemd readme.gentoo-r1 tmpfiles
+
+DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software"
+HOMEPAGE="https://wiki.mumble.info"
+if [[ "${PV}" == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/mumble-voip/mumble.git"
+ EGIT_SUBMODULES=( '-*' )
+else
+ MY_PN="mumble"
+ if [[ "${PV}" == *_pre* ]] ; then
+ MY_P="${MY_PN}-${PV}"
+ SRC_URI="https://dev.gentoo.org/~polynomial-c/dist/${MY_P}.tar.xz"
+ S="${WORKDIR}/${MY_P}"
+ else
+ MY_PV="${PV/_/-}"
+ MY_P="${MY_PN}-${MY_PV}"
+ SRC_URI="https://github.com/mumble-voip/mumble/releases/download/${MY_PV}/${MY_P}.tar.gz
+ https://dl.mumble.info/${MY_P}.tar.gz"
+ S="${WORKDIR}/${MY_PN}-${PV/_*}"
+ fi
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="+dbus debug +ice pch zeroconf"
+
+RDEPEND="
+ acct-group/murmur
+ acct-user/murmur
+ >=dev-libs/openssl-1.0.0b:0=
+ >=dev-libs/protobuf-2.2.0:=
+ dev-qt/qtcore:5
+ dev-qt/qtnetwork:5
+ || (
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtsql:5[mysql]
+ )
+ dev-qt/qtxml:5
+ sys-apps/lsb-release
+ >=sys-libs/libcap-2.15
+ dbus? ( dev-qt/qtdbus:5 )
+ ice? ( dev-libs/Ice:= )
+ zeroconf? ( net-dns/avahi[mdnsresponder-compat] )
+"
+
+DEPEND="${RDEPEND}
+ >=dev-libs/boost-1.41.0
+"
+BDEPEND="
+ acct-group/murmur
+ acct-user/murmur
+ virtual/pkgconfig
+"
+
+if [[ "${PV}" == *9999 ]] ; then
+ # Required for the mkini.sh script which calls perl multiple times
+ BDEPEND+="
+ dev-lang/perl
+ "
+fi
+
+DOC_CONTENTS="
+ Useful scripts are located in /usr/share/doc/${PF}/scripts.\n
+ Please execute:\n
+ murmurd -ini /etc/murmur/murmur.ini -supw <pw>\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.
+"
+
+src_prepare() {
+ default
+
+ if [[ "${PV}" == *9999 ]] ; then
+ pushd scripts &>/dev/null || die
+ ./mkini.sh || die
+ popd &>/dev/null || die
+ fi
+
+ sed \
+ -e 's:mumble-server:murmur:g' \
+ -e 's:/var/run:/run:g' \
+ -i "${S}"/scripts/murmur.{conf,ini.system} || die
+
+ # Adjust systemd service file to our config location #689208
+ sed "s@/etc/${PN}\.ini@/etc/${PN}/${PN}.ini@" \
+ -i scripts/${PN}.service || die
+}
+
+src_configure() {
+ myuse() {
+ [[ -n "${1}" ]] || die "myconf: No use flag given."
+ use ${1} || echo "no-${1}"
+ }
+ local conf_add=(
+ no-client
+ $(myuse dbus)
+ $(usex debug 'symbols debug' release)
+ $(myuse ice)
+ $(myuse pch)
+ $(usex zeroconf '' no-bonjour)
+ )
+
+ eqmake5 main.pro -recursive \
+ CONFIG+="${conf_add[*]}"
+}
+
+src_install() {
+ dodoc README CHANGES
+
+ docinto scripts
+ dodoc -r scripts/server
+ docompress -x /usr/share/doc/${PF}/scripts
+
+ local dir="$(usex debug debug release)"
+ dobin "${dir}"/murmurd
+
+ local etcdir="/etc/murmur"
+ insinto ${etcdir}
+ newins scripts/${PN}.ini.system ${PN}.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
+
+ systemd_dounit scripts/${PN}.service
+ newtmpfiles "${FILESDIR}"/murmurd-dbus.tmpfiles "${PN}".conf
+
+ keepdir /var/lib/murmur /var/log/murmur
+ fowners -R murmur /var/lib/murmur /var/log/murmur
+ fperms 750 /var/lib/murmur /var/log/murmur
+
+ # Fix permissions on config file as it might contain passwords.
+ # (bug #559362)
+ fowners root:murmur ${etcdir}/murmur.ini
+ fperms 640 ${etcdir}/murmur.ini
+
+ doman man/murmurd.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+ readme.gentoo_print_elog
+}
diff --git a/net-voip/murmur/murmur-1.4.230-r2.ebuild b/net-voip/murmur/murmur-1.4.230-r2.ebuild
new file mode 100644
index 000000000000..d0e26545bd3d
--- /dev/null
+++ b/net-voip/murmur/murmur-1.4.230-r2.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake systemd readme.gentoo-r1 tmpfiles
+
+DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software"
+HOMEPAGE="https://wiki.mumble.info"
+if [[ "${PV}" == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/mumble-voip/mumble.git"
+ EGIT_SUBMODULES=( '-*' )
+else
+ MY_PN="mumble"
+ if [[ "${PV}" == *_pre* ]] ; then
+ MY_P="${MY_PN}-${PV}"
+ SRC_URI="https://dev.gentoo.org/~polynomial-c/dist/${MY_P}.tar.xz"
+ S="${WORKDIR}/${MY_P}"
+ else
+ MY_PV="${PV/_/-}"
+ MY_P="${MY_PN}-${MY_PV}"
+ SRC_URI="https://github.com/mumble-voip/mumble/releases/download/${MY_PV}/${MY_P}.tar.gz
+ https://dl.mumble.info/${MY_P}.tar.gz"
+ S="${WORKDIR}/${MY_PN}-${PV/_*}.src"
+ fi
+ KEYWORDS="~amd64 ~x86"
+fi
+
+SRC_URI+=" https://dev.gentoo.org/~polynomial-c/mumble-1.4-openssl3.patch.xz"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="+dbus grpc +ice test zeroconf"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ acct-group/murmur
+ acct-user/murmur
+ >=dev-libs/openssl-1.0.0b:0=
+ >=dev-libs/protobuf-2.2.0:=
+ dev-qt/qtcore:5
+ dev-qt/qtnetwork:5
+ || (
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtsql:5[mysql]
+ )
+ dev-qt/qtxml:5
+ sys-apps/lsb-release
+ >=sys-libs/libcap-2.15
+ dbus? ( dev-qt/qtdbus:5 )
+ grpc? ( net-libs/grpc )
+ ice? ( dev-libs/Ice:= )
+ zeroconf? ( net-dns/avahi[mdnsresponder-compat] )
+"
+
+DEPEND="${RDEPEND}
+ >=dev-libs/boost-1.41.0
+ dev-qt/qttest:5
+"
+BDEPEND="
+ acct-group/murmur
+ acct-user/murmur
+ virtual/pkgconfig
+"
+
+if [[ "${PV}" == *9999 ]] ; then
+ # Required for the mkini.sh script which calls perl multiple times
+ BDEPEND+="
+ dev-lang/perl
+ "
+fi
+
+DOC_CONTENTS="
+ Useful scripts are located in /usr/share/doc/${PF}/scripts.\n
+ Please execute:\n
+ murmurd -ini /etc/murmur/murmur.ini -supw <pw>\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.
+"
+
+PATCHES=(
+ "${WORKDIR}/mumble-1.4-openssl3.patch"
+)
+
+src_prepare() {
+ if [[ "${PV}" == *9999 ]] ; then
+ pushd scripts &>/dev/null || die
+ ./mkini.sh || die
+ popd &>/dev/null || die
+ fi
+
+ sed \
+ -e 's:mumble-server:murmur:g' \
+ -e 's:/var/run:/run:g' \
+ -i "${S}"/scripts/murmur.{conf,ini} || die
+
+ # Adjust systemd service file to our config location #689208
+ sed \
+ -e "s@/etc/${PN}\.ini@/etc/${PN}/${PN}.ini@" \
+ -e "s@murmurd@mumble-server@" \
+ -i scripts/${PN}.service || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ myuse() {
+ [[ -n "${1}" ]] || die "myconf: No use flag given."
+ use ${1} || echo "no-${1}"
+ }
+ local mycmakeargs=(
+ -DBUILD_TESTING="$(usex test)"
+ -Dclient="OFF"
+ -Ddbus="$(usex dbus)"
+ -Dg15="OFF"
+ -Dgrpc="$(usex grpc)"
+ -Dice="$(usex ice)"
+ -Doverlay="OFF"
+ -Dserver="ON"
+ -Dzeroconf="$(usex zeroconf)"
+ )
+ if [[ "${PV}" != 9999 ]] ; then
+ mycmakeargs+=( -DBUILD_NUMBER="$(ver_cut 3)" )
+ fi
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ dodoc README.md CHANGES
+
+ docinto scripts
+ dodoc -r scripts/server
+ docompress -x /usr/share/doc/${PF}/scripts
+
+ local etcdir="/etc/murmur"
+ insinto ${etcdir}
+ doins scripts/${PN}.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-r2 murmur
+ newconfd "${FILESDIR}"/murmur.confd murmur
+
+ systemd_dounit scripts/${PN}.service
+ newtmpfiles "${FILESDIR}"/murmurd-dbus.tmpfiles "${PN}".conf
+
+ keepdir /var/lib/murmur /var/log/murmur
+ fowners -R murmur /var/lib/murmur /var/log/murmur
+ fperms 750 /var/lib/murmur /var/log/murmur
+
+ # Fix permissions on config file as it might contain passwords.
+ # (bug #559362)
+ fowners root:murmur ${etcdir}/murmur.ini
+ fperms 640 ${etcdir}/murmur.ini
+
+ doman man/murmurd.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+ readme.gentoo_print_elog
+}
diff --git a/net-voip/murmur/murmur-9999.ebuild b/net-voip/murmur/murmur-9999.ebuild
new file mode 100644
index 000000000000..d5c37496cf5d
--- /dev/null
+++ b/net-voip/murmur/murmur-9999.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake systemd readme.gentoo-r1 tmpfiles
+
+DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software"
+HOMEPAGE="https://wiki.mumble.info"
+if [[ "${PV}" == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/mumble-voip/mumble.git"
+ EGIT_SUBMODULES=( '-*' )
+else
+ MY_PN="mumble"
+ if [[ "${PV}" == *_pre* ]] ; then
+ MY_P="${MY_PN}-${PV}"
+ SRC_URI="https://dev.gentoo.org/~polynomial-c/dist/${MY_P}.tar.xz"
+ S="${WORKDIR}/${MY_P}"
+ else
+ MY_PV="${PV/_/-}"
+ MY_P="${MY_PN}-${MY_PV}"
+ SRC_URI="https://github.com/mumble-voip/mumble/releases/download/${MY_PV}/${MY_P}.tar.gz
+ https://dl.mumble.info/${MY_P}.tar.gz"
+ S="${WORKDIR}/${MY_PN}-${PV/_*}.src"
+ fi
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="+dbus grpc +ice test zeroconf"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ acct-group/murmur
+ acct-user/murmur
+ >=dev-libs/openssl-1.0.0b:0=
+ >=dev-libs/protobuf-2.2.0:=
+ dev-qt/qtcore:5
+ dev-qt/qtnetwork:5
+ || (
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtsql:5[mysql]
+ )
+ dev-qt/qtxml:5
+ sys-apps/lsb-release
+ >=sys-libs/libcap-2.15
+ dbus? ( dev-qt/qtdbus:5 )
+ grpc? ( net-libs/grpc )
+ ice? ( dev-libs/Ice:= )
+ zeroconf? ( net-dns/avahi[mdnsresponder-compat] )
+"
+
+DEPEND="${RDEPEND}
+ >=dev-libs/boost-1.41.0
+ dev-qt/qttest:5
+"
+BDEPEND="
+ acct-group/murmur
+ acct-user/murmur
+ virtual/pkgconfig
+"
+
+if [[ "${PV}" == *9999 ]] ; then
+ # Required for the mkini.sh script which calls perl multiple times
+ BDEPEND+="
+ dev-lang/perl
+ "
+fi
+
+DOC_CONTENTS="
+ Useful scripts are located in /usr/share/doc/${PF}/scripts.\n
+ Please execute:\n
+ murmurd -ini /etc/murmur/murmur.ini -supw <pw>\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.
+"
+
+src_prepare() {
+ if [[ "${PV}" == *9999 ]] ; then
+ pushd scripts &>/dev/null || die
+ ./mkini.sh || die
+ popd &>/dev/null || die
+ fi
+
+ sed \
+ -e 's:mumble-server:murmur:g' \
+ -e 's:/var/run:/run:g' \
+ -i "${S}"/scripts/murmur.{conf,ini} || die
+
+ # Adjust systemd service file to our config location #689208
+ sed \
+ -e "s@/etc/${PN}\.ini@/etc/${PN}/${PN}.ini@" \
+ -e "s@murmurd@mumble-server@" \
+ -i scripts/${PN}.service || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ myuse() {
+ [[ -n "${1}" ]] || die "myconf: No use flag given."
+ use ${1} || echo "no-${1}"
+ }
+ local mycmakeargs=(
+ -DBUILD_TESTING="$(usex test)"
+ -Dclient="OFF"
+ -Ddbus="$(usex dbus)"
+ -Dg15="OFF"
+ -Dgrpc="$(usex grpc)"
+ -Dice="$(usex ice)"
+ -Doverlay="OFF"
+ -Dserver="ON"
+ -Dzeroconf="$(usex zeroconf)"
+ )
+ if [[ "${PV}" != 9999 ]] ; then
+ mycmakeargs+=( -DBUILD_NUMBER="$(ver_cut 3)" )
+ fi
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ dodoc README.md CHANGES
+
+ docinto scripts
+ dodoc -r scripts/server
+ docompress -x /usr/share/doc/${PF}/scripts
+
+ local etcdir="/etc/murmur"
+ insinto ${etcdir}
+ doins scripts/${PN}.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-r2 murmur
+ newconfd "${FILESDIR}"/murmur.confd murmur
+
+ systemd_dounit scripts/${PN}.service
+ newtmpfiles "${FILESDIR}"/murmurd-dbus.tmpfiles "${PN}".conf
+
+ keepdir /var/lib/murmur /var/log/murmur
+ fowners -R murmur /var/lib/murmur /var/log/murmur
+ fperms 750 /var/lib/murmur /var/log/murmur
+
+ # Fix permissions on config file as it might contain passwords.
+ # (bug #559362)
+ fowners root:murmur ${etcdir}/murmur.ini
+ fperms 640 ${etcdir}/murmur.ini
+
+ doman man/murmurd.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+ readme.gentoo_print_elog
+}