summaryrefslogtreecommitdiff
path: root/net-voip/umurmur
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-07-09 15:43:36 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-07-09 15:43:36 +0100
commit2719f73b6813d11d13a9650cdd2ab8ec6e69385d (patch)
tree8c816148bcbd22757d892089c989ae614eae4f5a /net-voip/umurmur
parent0f558761aa2dee1017b4751e4017205e015a9560 (diff)
gentoo resync : 09.07.2022
Diffstat (limited to 'net-voip/umurmur')
-rw-r--r--net-voip/umurmur/Manifest13
-rw-r--r--net-voip/umurmur/files/umurmur-0.2.20-openssl3.patch11
-rw-r--r--net-voip/umurmur/files/umurmur.conf58
-rw-r--r--net-voip/umurmur/files/umurmurd.confd3
-rw-r--r--net-voip/umurmur/files/umurmurd.initd18
-rw-r--r--net-voip/umurmur/files/umurmurd.service15
-rw-r--r--net-voip/umurmur/metadata.xml26
-rw-r--r--net-voip/umurmur/umurmur-0.2.17-r4.ebuild111
-rw-r--r--net-voip/umurmur/umurmur-0.2.19.ebuild110
-rw-r--r--net-voip/umurmur/umurmur-0.2.20.ebuild114
-rw-r--r--net-voip/umurmur/umurmur-9999.ebuild110
11 files changed, 589 insertions, 0 deletions
diff --git a/net-voip/umurmur/Manifest b/net-voip/umurmur/Manifest
new file mode 100644
index 000000000000..54d538c0a414
--- /dev/null
+++ b/net-voip/umurmur/Manifest
@@ -0,0 +1,13 @@
+AUX umurmur-0.2.20-openssl3.patch 246 BLAKE2B b14bf838f72d901f2a6f99b6e33447e5a7dd51c767a88f90842d5f5aa6495cd86793b3a5d7a8f03e067e4784e89aa8f4ceaf52cd3e70180f9f4884b6893e8733 SHA512 0a12c34c870c050f46790fb387bd6b5313f0c0cf98dd5232d960963a9c1b88d6314b69c96b6c148c9f6c8dc5bece2d2fc3fa4a221cd966a0f1c7efbc76978171
+AUX umurmur.conf 1637 BLAKE2B ba9519dc2a09512c3b8398009c1ee41a8d49f1a18de5800dd53ad38e927c21dd58790504b4434b394ec3fa1c35614f49c512db55bde01e2956f90564b6d96ba5 SHA512 563573c405013bdf9d76003d68eb9619064659dc1e1b8b1fde24c0e587a807202bf62efe7f227cc95ff8b6db68a2ace3f0f359cef74c1bf5f1582815dd623501
+AUX umurmurd.confd 64 BLAKE2B d98d616da50acabd055333c36699ab0dd060193fc4507528370b1b77d5c3335f61e0c0ab6cc28bb8530aa9876345bb9ff01bdb1db56f0d0e44b09ef7d6a12eff SHA512 4af070ab4d8f4a9a2d5b59b8be95cfb49c22faae809843d9c8ede954bdf39f1224bb31cc53e5cf0f771a2033dfe904890345a6031055c9e79fdd315447e54840
+AUX umurmurd.initd 458 BLAKE2B e1f8dc704fa6237edfcfbb936e9d1c679e0f1a57ec862ec7215c3f263de0582baf70a0b822a1712c2423d753dda9e2602ff404d11f2f0d02df02116cdfb3729d SHA512 d60c700bf0bb54c904faff658e09dc37a6cd79edb69e4aa54f46872f474c8f673a91ebe022a47dc0d6b4f624a86f70be99f661a1e80a672b04dff6af3328b28d
+AUX umurmurd.service 363 BLAKE2B 373b02c3d2d9f80e3b1a44dc98032f68310e8c5b82682efc1001cf130bef21f6f925f4b535d0d02209617c92b4d4a3dad4a7b459c8dbbcf6f97b050bab933de0 SHA512 3366dc2b35623daf4704e30bc6207cf795e31cb4c9cd0c7e19f64fa9d92da772fcc309e5799261b6c07c95cfeacd2d9b898ec4a4be7b5acc46efda7a98308913
+DIST umurmur-0.2.17.tar.gz 93786 BLAKE2B 92fc7d63dc0eed228c3fbcb0d18861cd49967f44378d980e856f8fb24fe7abc3429a4ca8e811eda6096727b76780724c909c46c04975b5edef70d848b7511618 SHA512 a496a51fd7815ad117f5aee17bb78cbd319c584ad60ab8aebbfd8ddf7b1760f443f2337bc74be1e0d5af17d3c3df2ae6c9060eca576cf1e6ed4c6cb0825e9c15
+DIST umurmur-0.2.19.tar.gz 93117 BLAKE2B 54d6fe6e67f51f24d6c9f0125fa330292004cd5df71791c40ece6aa7c2938bce98ca981e873a1e2b43598f99ea57c687963fd7cd8708400f5f2ce00ab11386eb SHA512 4a10c41d8396d6bd2b195578ff6a29e69a105f8830daf85141217f768cc2c4ea6204a2b3b65599d07d76c841090750db4ad6264c4e9d7e5afa7f1b4cf27bc768
+DIST umurmur-0.2.20.tar.gz 93152 BLAKE2B 7850d0f3a5c35db1f5ed2b2eea7725d288901eb7e49b9bf2f715963a102c6c6345ed90fd066d80a2666137918c73a58dd2c954321b69d0ce59f686e1c6d01e5a SHA512 0913f5ba84b30fec4ae6a1521c442ff8c48121bbbca5de9082e04e41b36434fadb5f81cb2ea0bd0a8c63f6e541d15eeda3637667d8cc7113d38935ded320cef4
+EBUILD umurmur-0.2.17-r4.ebuild 2458 BLAKE2B a32a7f267c1828fc28f0313239f0e5f0b376c17e9d45c436af9ce8017bccc7174cbbee2e429f707e671662fd0e271a8c2ff05ca86166176e5f72e3e3212154cf SHA512 0c82934b7179d35002fd60fc5ef81bce878a7ac43c671697a348ba161b545e781913599e792c2515936834e5ac35847659b09835f5ba5143dd5ac0aba099925a
+EBUILD umurmur-0.2.19.ebuild 2460 BLAKE2B f2166a099ab77ae50f6020f7214f0849534d19cb8137d0356711d74a4b2ca65550363efebe16b99bc7847ddffd2cd428a01faadfc32545c730a0bd7539a8bc74 SHA512 77e260c9b81fa2fdd8acb2c5d5ddd6aa18245853f00485163902055172f307da42304fa044ca0f0c5cecd21c4e5d3e3efd4ddf9e18d6ccdc991bd5264b53fa33
+EBUILD umurmur-0.2.20.ebuild 2524 BLAKE2B 62d098501b0363cea6fba3bbbb66baad7258fd440abe6d0b2b59c3f29f87ee979cd76188ce61e5e8d7be15a21a2842257c8cc7ea35ae43336e8082c96895a288 SHA512 117bee1f600a4533f4f56541b6bd5c1235c7749fbe8436de54a4eddb46abcbbb46b03f9e5353115aa06b177ae13ae4ca188e7bd31ed0ea49fdb2010db2ef28b0
+EBUILD umurmur-9999.ebuild 2460 BLAKE2B f2166a099ab77ae50f6020f7214f0849534d19cb8137d0356711d74a4b2ca65550363efebe16b99bc7847ddffd2cd428a01faadfc32545c730a0bd7539a8bc74 SHA512 77e260c9b81fa2fdd8acb2c5d5ddd6aa18245853f00485163902055172f307da42304fa044ca0f0c5cecd21c4e5d3e3efd4ddf9e18d6ccdc991bd5264b53fa33
+MISC metadata.xml 1008 BLAKE2B feba592603f9cb71e517192271e9379ae130c38fd5c8979571197ced233160e38a8fa2fb927989289a2be5ba3f2609b29c278195e392998c45aba3ad576d1363 SHA512 5ecfd76cf6be609fb5f41ddc48ddf1a5eaa3b6af0355c51be0457e87c79e66cc87666ca8f0b2eb8ca52a18047bedc25b25d978f6b69b1bb44cfcf7f8d8924943
diff --git a/net-voip/umurmur/files/umurmur-0.2.20-openssl3.patch b/net-voip/umurmur/files/umurmur-0.2.20-openssl3.patch
new file mode 100644
index 000000000000..ad7cc1177874
--- /dev/null
+++ b/net-voip/umurmur/files/umurmur-0.2.20-openssl3.patch
@@ -0,0 +1,11 @@
+--- umurmur-0.2.20/src/ssli_openssl.c
++++ umurmur-0.2.20/src/ssli_openssl.c
+@@ -142,8 +142,6 @@
+
+ Log_info("Generating new server certificate.");
+
+- CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
+-
+ x509 = X509_new();
+ if (!x509)
+ goto err_out;
diff --git a/net-voip/umurmur/files/umurmur.conf b/net-voip/umurmur/files/umurmur.conf
new file mode 100644
index 000000000000..cebcca28a583
--- /dev/null
+++ b/net-voip/umurmur/files/umurmur.conf
@@ -0,0 +1,58 @@
+# This configuration is based on the official example configuration. More information can be found
+# at http://code.google.com/p/umurmur/wiki/Configuring02x
+
+max_bandwidth = 48000;
+welcometext = "Welcome to uMurmur!";
+certificate = "/etc/umurmur/cert.crt";
+private_key = "/etc/umurmur/key.key";
+password = "";
+max_users = 10;
+
+# Specify port and/or address to bind to. Typically not needed.
+# Default is '*' for address and 64738 for port.
+# Can also be specified on the command line, which takes precedence if
+# both are specified.
+# bindport = 64738;
+# bindaddr = "192.168.1.1";
+
+# Specify this for privilege dropping. If username is specified but not
+# the groupname, the user's login group is used.
+username = "murmur";
+groupname = "murmur";
+
+# Root channel must always be defined first.
+# If a channel has a parent, the parent must be defined before the child channel(s).
+channels = ( {
+ name = "Root";
+ parent = "";
+ description = "The Root of all channels";
+ noenter = true;
+ },
+ {
+ name = "Lobby";
+ parent = "Root";
+ description = "Lobby channel";
+ },
+ {
+ name = "Red team";
+ parent = "Lobby";
+ description = "The Red team channel";
+ },
+ {
+ name = "Blue team";
+ parent = "Lobby";
+ description = "The Blue team channel";
+ }
+);
+# Channel links configuration.
+channel_links = ( {
+ source = "Lobby";
+ destination = "Red team";
+ },
+ {
+ source = "Lobby";
+ destination = "Blue team";
+ }
+);
+
+default_channel = "Lobby";
diff --git a/net-voip/umurmur/files/umurmurd.confd b/net-voip/umurmur/files/umurmurd.confd
new file mode 100644
index 000000000000..d83461ce725d
--- /dev/null
+++ b/net-voip/umurmur/files/umurmurd.confd
@@ -0,0 +1,3 @@
+# Additional flags to be passed to umurmurd
+UMURMURD_OPTS="-r"
+
diff --git a/net-voip/umurmur/files/umurmurd.initd b/net-voip/umurmur/files/umurmurd.initd
new file mode 100644
index 000000000000..d0dd5517d626
--- /dev/null
+++ b/net-voip/umurmur/files/umurmurd.initd
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="umurmurd - A minimalistic mumble server"
+pidfile="/run/umurmurd/umurmurd.pid"
+command="/usr/bin/umurmurd"
+command_args="-c /etc/umurmur/umurmur.conf -p ${pidfile} ${UMURMURD_OPTS}"
+start_stop_daemon_args="-p ${pidfile} -w 100"
+
+depend() {
+ need net
+ use logger
+}
+
+start_pre() {
+ checkpath -d -o murmur ${pidfile%/*}
+}
diff --git a/net-voip/umurmur/files/umurmurd.service b/net-voip/umurmur/files/umurmurd.service
new file mode 100644
index 000000000000..12ad2aec6459
--- /dev/null
+++ b/net-voip/umurmur/files/umurmurd.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=A minimalistic Mumble server
+After=network.target
+
+[Service]
+Type=simple
+User=murmur
+Group=murmur
+PIDFile=/run/umurmurd.pid
+ExecStartPre=/usr/bin/umurmurd -t -c /etc/umurmur/umurmur.conf
+ExecStart=/usr/bin/umurmurd -d -r -p /run/umurmurd.pid -c /etc/umurmur/umurmur.conf
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net-voip/umurmur/metadata.xml b/net-voip/umurmur/metadata.xml
new file mode 100644
index 000000000000..f3ecd2642bfb
--- /dev/null
+++ b/net-voip/umurmur/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
+ uMurmur is a minimalistic Mumble server primarily targeted to
+ run on routers with an open OS like OpenWRT. The server part
+ of Mumble is called Murmur, hence the name uMurmur.
+ </longdescription>
+ <use>
+ <flag name="mbedtls">Use <pkg>net-libs/mbedtls</pkg> as TLS provider</flag>
+ <flag name="shm">Enable shared memory support</flag>
+ </use>
+ <upstream>
+ <maintainer status="active">
+ <email>fatbob.snack@gmail.com</email>
+ <name>Martin Johansson</name>
+ </maintainer>
+ <bugs-to>https://code.google.com/p/umurmur/issues/list</bugs-to>
+ <changelog>
+ https://code.google.com/p/umurmur/wiki/Changelog</changelog>
+ <doc lang="en">https://code.google.com/p/umurmur/w/list</doc>
+ <remote-id type="google-code">umurmur</remote-id>
+ <remote-id type="github">umurmur/umurmur</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-voip/umurmur/umurmur-0.2.17-r4.ebuild b/net-voip/umurmur/umurmur-0.2.17-r4.ebuild
new file mode 100644
index 000000000000..c61a58654320
--- /dev/null
+++ b/net-voip/umurmur/umurmur-0.2.17-r4.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools systemd readme.gentoo-r1
+
+DESCRIPTION="Minimalistic Murmur (Mumble server)"
+HOMEPAGE="https://github.com/umurmur/umurmur"
+if [[ "${PV}" == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/umurmur/umurmur.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV/_}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 ~arm x86"
+fi
+LICENSE="BSD"
+SLOT="0"
+IUSE="gnutls mbedtls shm"
+
+# ssl-provider precendence: gnutls, mbedtls
+# and openssl if none specified
+DEPEND=">=dev-libs/protobuf-c-1.0.0_rc2:=
+ dev-libs/libconfig:=
+ gnutls? (
+ dev-libs/nettle:=
+ >=net-libs/gnutls-3.0.0:=
+ )
+ !gnutls? (
+ mbedtls? ( net-libs/mbedtls:= )
+ !mbedtls? ( dev-libs/openssl:0= )
+ )
+"
+
+RDEPEND="${DEPEND}
+ acct-group/murmur
+ acct-user/murmur
+"
+
+DOC_CONTENTS="
+ A configuration file has been installed at /etc/umurmur/umurmur.conf - you
+ may want to review it. See also\n
+ https://github.com/umurmur/umurmur/wiki/Configuration "
+
+S="${WORKDIR}/${P/_}"
+
+get_ssl_impl() {
+ local ssl_provider=()
+
+ use gnutls && ssl_provider+=( gnutls )
+ use mbedtls && ssl_provider+=( mbedtls )
+
+ if ! use gnutls && ! use mbedtls; then
+ ssl_provider+=( openssl )
+ fi
+ echo ${ssl_provider[@]}
+}
+
+pkg_pretend() {
+ local ssl_provider=( $(get_ssl_impl) )
+
+ if [[ ${#ssl_provider[@]} -gt 1 ]] ; then
+ ewarn "More than one ssl provider selected (${ssl_provider[@]})"
+ ewarn "defaulting to ${ssl_provider[0]}."
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local ssl_provider=( $(get_ssl_impl) )
+
+ local myeconfargs=(
+ --with-ssl="${ssl_provider[@]}"
+ $(use_enable shm shmapi)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ local confdir
+
+ emake DESTDIR="${D}" install
+
+ newinitd "${FILESDIR}"/umurmurd.initd umurmurd
+ newconfd "${FILESDIR}"/umurmurd.confd umurmurd
+ systemd_dounit "${FILESDIR}"/umurmurd.service
+
+ dodoc AUTHORS ChangeLog
+ newdoc README.md README
+
+ confdir="/etc/umurmur"
+ insinto "${confdir}"
+ doins "${FILESDIR}"/umurmur.conf
+
+ # Some permissions are adjusted as the config may contain a server
+ # password, and /etc/umurmur will typically contain the cert and the
+ # key used to sign it, which are read after priveleges are dropped.
+ fperms 0750 "${confdir}"
+ fowners -R root:murmur "${confdir}"
+ fperms 0640 "${confdir}"/umurmur.conf
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/net-voip/umurmur/umurmur-0.2.19.ebuild b/net-voip/umurmur/umurmur-0.2.19.ebuild
new file mode 100644
index 000000000000..68da6bed82ba
--- /dev/null
+++ b/net-voip/umurmur/umurmur-0.2.19.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools systemd readme.gentoo-r1
+
+DESCRIPTION="Minimalistic Murmur (Mumble server)"
+HOMEPAGE="https://github.com/umurmur/umurmur"
+if [[ "${PV}" == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/umurmur/umurmur.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV/_}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+LICENSE="BSD"
+SLOT="0"
+IUSE="gnutls mbedtls shm"
+
+# ssl-provider precendence: gnutls, mbedtls and openssl if none specified
+DEPEND=">=dev-libs/protobuf-c-1.0.0_rc2:=
+ dev-libs/libconfig:=
+ gnutls? (
+ dev-libs/nettle:=
+ >=net-libs/gnutls-3.0.0:=
+ )
+ !gnutls? (
+ mbedtls? ( net-libs/mbedtls:= )
+ !mbedtls? ( dev-libs/openssl:0= )
+ )
+"
+
+RDEPEND="${DEPEND}
+ acct-group/murmur
+ acct-user/murmur
+"
+
+DOC_CONTENTS="
+ A configuration file has been installed at /etc/umurmur/umurmur.conf - you
+ may want to review it. See also\n
+ https://github.com/umurmur/umurmur/wiki/Configuration "
+
+S="${WORKDIR}/${P/_}"
+
+get_ssl_impl() {
+ local ssl_provider=()
+
+ use gnutls && ssl_provider+=( gnutls )
+ use mbedtls && ssl_provider+=( mbedtls )
+
+ if ! use gnutls && ! use mbedtls ; then
+ ssl_provider+=( openssl )
+ fi
+ echo ${ssl_provider[@]}
+}
+
+pkg_pretend() {
+ local ssl_provider=( $(get_ssl_impl) )
+
+ if [[ ${#ssl_provider[@]} -gt 1 ]] ; then
+ ewarn "More than one ssl provider selected (${ssl_provider[@]})"
+ ewarn "defaulting to ${ssl_provider[0]}."
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local ssl_provider=( $(get_ssl_impl) )
+
+ local myeconfargs=(
+ --with-ssl="${ssl_provider[0]}"
+ $(use_enable shm shmapi)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ local confdir
+
+ emake DESTDIR="${D}" install
+
+ newinitd "${FILESDIR}"/umurmurd.initd umurmurd
+ newconfd "${FILESDIR}"/umurmurd.confd umurmurd
+ systemd_dounit "${FILESDIR}"/umurmurd.service
+
+ dodoc AUTHORS ChangeLog
+ newdoc README.md README
+
+ confdir="/etc/umurmur"
+ insinto "${confdir}"
+ doins "${FILESDIR}"/umurmur.conf
+
+ # Some permissions are adjusted as the config may contain a server
+ # password, and /etc/umurmur will typically contain the cert and the
+ # key used to sign it, which are read after priveleges are dropped.
+ fperms 0750 "${confdir}"
+ fowners -R root:murmur "${confdir}"
+ fperms 0640 "${confdir}"/umurmur.conf
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/net-voip/umurmur/umurmur-0.2.20.ebuild b/net-voip/umurmur/umurmur-0.2.20.ebuild
new file mode 100644
index 000000000000..677e6fa4f97a
--- /dev/null
+++ b/net-voip/umurmur/umurmur-0.2.20.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools systemd readme.gentoo-r1
+
+DESCRIPTION="Minimalistic Murmur (Mumble server)"
+HOMEPAGE="https://github.com/umurmur/umurmur"
+if [[ "${PV}" == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/umurmur/umurmur.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV/_}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+LICENSE="BSD"
+SLOT="0"
+IUSE="gnutls mbedtls shm"
+
+# ssl-provider precendence: gnutls, mbedtls and openssl if none specified
+DEPEND=">=dev-libs/protobuf-c-1.0.0_rc2:=
+ dev-libs/libconfig:=
+ gnutls? (
+ dev-libs/nettle:=
+ >=net-libs/gnutls-3.0.0:=
+ )
+ !gnutls? (
+ mbedtls? ( net-libs/mbedtls:= )
+ !mbedtls? ( dev-libs/openssl:0= )
+ )
+"
+
+RDEPEND="${DEPEND}
+ acct-group/murmur
+ acct-user/murmur
+"
+
+DOC_CONTENTS="
+ A configuration file has been installed at /etc/umurmur/umurmur.conf - you
+ may want to review it. See also\n
+ https://github.com/umurmur/umurmur/wiki/Configuration "
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.2.20-openssl3.patch" #806154
+)
+
+S="${WORKDIR}/${P/_}"
+
+get_ssl_impl() {
+ local ssl_provider=()
+
+ use gnutls && ssl_provider+=( gnutls )
+ use mbedtls && ssl_provider+=( mbedtls )
+
+ if ! use gnutls && ! use mbedtls ; then
+ ssl_provider+=( openssl )
+ fi
+ echo ${ssl_provider[@]}
+}
+
+pkg_pretend() {
+ local ssl_provider=( $(get_ssl_impl) )
+
+ if [[ ${#ssl_provider[@]} -gt 1 ]] ; then
+ ewarn "More than one ssl provider selected (${ssl_provider[@]})"
+ ewarn "defaulting to ${ssl_provider[0]}."
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local ssl_provider=( $(get_ssl_impl) )
+
+ local myeconfargs=(
+ --with-ssl="${ssl_provider[0]}"
+ $(use_enable shm shmapi)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ local confdir
+
+ emake DESTDIR="${D}" install
+
+ newinitd "${FILESDIR}"/umurmurd.initd umurmurd
+ newconfd "${FILESDIR}"/umurmurd.confd umurmurd
+ systemd_dounit "${FILESDIR}"/umurmurd.service
+
+ dodoc AUTHORS ChangeLog
+ newdoc README.md README
+
+ confdir="/etc/umurmur"
+ insinto "${confdir}"
+ doins "${FILESDIR}"/umurmur.conf
+
+ # Some permissions are adjusted as the config may contain a server
+ # password, and /etc/umurmur will typically contain the cert and the
+ # key used to sign it, which are read after priveleges are dropped.
+ fperms 0750 "${confdir}"
+ fowners -R root:murmur "${confdir}"
+ fperms 0640 "${confdir}"/umurmur.conf
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/net-voip/umurmur/umurmur-9999.ebuild b/net-voip/umurmur/umurmur-9999.ebuild
new file mode 100644
index 000000000000..68da6bed82ba
--- /dev/null
+++ b/net-voip/umurmur/umurmur-9999.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools systemd readme.gentoo-r1
+
+DESCRIPTION="Minimalistic Murmur (Mumble server)"
+HOMEPAGE="https://github.com/umurmur/umurmur"
+if [[ "${PV}" == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/umurmur/umurmur.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV/_}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+LICENSE="BSD"
+SLOT="0"
+IUSE="gnutls mbedtls shm"
+
+# ssl-provider precendence: gnutls, mbedtls and openssl if none specified
+DEPEND=">=dev-libs/protobuf-c-1.0.0_rc2:=
+ dev-libs/libconfig:=
+ gnutls? (
+ dev-libs/nettle:=
+ >=net-libs/gnutls-3.0.0:=
+ )
+ !gnutls? (
+ mbedtls? ( net-libs/mbedtls:= )
+ !mbedtls? ( dev-libs/openssl:0= )
+ )
+"
+
+RDEPEND="${DEPEND}
+ acct-group/murmur
+ acct-user/murmur
+"
+
+DOC_CONTENTS="
+ A configuration file has been installed at /etc/umurmur/umurmur.conf - you
+ may want to review it. See also\n
+ https://github.com/umurmur/umurmur/wiki/Configuration "
+
+S="${WORKDIR}/${P/_}"
+
+get_ssl_impl() {
+ local ssl_provider=()
+
+ use gnutls && ssl_provider+=( gnutls )
+ use mbedtls && ssl_provider+=( mbedtls )
+
+ if ! use gnutls && ! use mbedtls ; then
+ ssl_provider+=( openssl )
+ fi
+ echo ${ssl_provider[@]}
+}
+
+pkg_pretend() {
+ local ssl_provider=( $(get_ssl_impl) )
+
+ if [[ ${#ssl_provider[@]} -gt 1 ]] ; then
+ ewarn "More than one ssl provider selected (${ssl_provider[@]})"
+ ewarn "defaulting to ${ssl_provider[0]}."
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local ssl_provider=( $(get_ssl_impl) )
+
+ local myeconfargs=(
+ --with-ssl="${ssl_provider[0]}"
+ $(use_enable shm shmapi)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ local confdir
+
+ emake DESTDIR="${D}" install
+
+ newinitd "${FILESDIR}"/umurmurd.initd umurmurd
+ newconfd "${FILESDIR}"/umurmurd.confd umurmurd
+ systemd_dounit "${FILESDIR}"/umurmurd.service
+
+ dodoc AUTHORS ChangeLog
+ newdoc README.md README
+
+ confdir="/etc/umurmur"
+ insinto "${confdir}"
+ doins "${FILESDIR}"/umurmur.conf
+
+ # Some permissions are adjusted as the config may contain a server
+ # password, and /etc/umurmur will typically contain the cert and the
+ # key used to sign it, which are read after priveleges are dropped.
+ fperms 0750 "${confdir}"
+ fowners -R root:murmur "${confdir}"
+ fperms 0640 "${confdir}"/umurmur.conf
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}