audio/mumble-server: update to 1.5.517

Upstream renamed murmur to mumble-server.

Changelogs:
https://github.com/mumble-voip/mumble/releases/tag/v1.5.517
https://github.com/mumble-voip/mumble/releases/tag/v1.4.287
https://github.com/mumble-voip/mumble/releases/tag/v1.4.274
https://github.com/mumble-voip/mumble/releases/tag/v1.4.230

PR:			261395
Approved by:		arrowd (mentor)
Differential Revision:	https://reviews.freebsd.org/D41048
This commit is contained in:
Vladimir Druzenko 2024-01-22 16:20:15 +03:00
parent 77aa89de86
commit 3f28493dd5
11 changed files with 72 additions and 142 deletions

2
GIDs
View file

@ -279,7 +279,7 @@ honeytrap:*:333:
# free: 336
daapd:*:337:
murmur:*:338:
# free: 339
mumble-server:*:339:
wildfire:*:340:
stunnel:*:341:
openfire:*:342:

2
UIDs
View file

@ -284,7 +284,7 @@ honeytrap:*:333:333::0:0:HoneyTrap Daemon:/nonexistent:/usr/sbin/nologin
_pma:*:336:80::0:0:phpMyAdmin Owner:/nonexistent:/usr/sbin/nologin
daapd:*:337:337::0:0:daapd User:/nonexistent:/usr/sbin/nologin
murmur:*:338:338::0:0:& User:/nonexistent:/usr/sbin/nologin
# free: 339
mumble-server:*:339:339::0:0:& User:/nonexistent:/usr/sbin/nologin
wildfire:*:340:340::0:0:Wildfire Daemon:/nonexistent:/usr/sbin/nologin
stunnel:*:341:341::0:0:Stunnel Daemon:/nonexistent:/usr/sbin/nologin
openfire:*:342:342::0:0:Openfire IM Daemon:/nonexistent:/usr/sbin/nologin

View file

@ -499,6 +499,7 @@
SUBDIR += mps
SUBDIR += mpz
SUBDIR += mumble
SUBDIR += mumble-server
SUBDIR += murmur
SUBDIR += murmur-cli
SUBDIR += muse-sequencer

View file

@ -1,6 +1,8 @@
PORTNAME= murmur
PORTVERSION= 1.3.4
PORTNAME= mumble-server
DISTVERSION= 1.5.517
CATEGORIES= audio net
MASTER_SITES= https://github.com/${PORTNAME:S/-server//}-voip/${PORTNAME:S/-server//}/releases/download/v${DISTVERSION}/
DISTNAME= ${PORTNAME:S/-server//}-${DISTVERSION}
MAINTAINER= vvd@FreeBSD.org
COMMENT= Server component of Mumble
@ -9,76 +11,69 @@ WWW= https://www.mumble.info/
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${LOCALBASE}/include/boost/function.hpp:devel/boost-libs
BUILD_DEPENDS= boost-libs>0:devel/boost-libs
LIB_DEPENDS= libabsl_base.so:devel/abseil \
libprotobuf.so:devel/protobuf
USES= compiler:c++11-lang qmake pkgconfig python:build qt:5 ssl
BROKEN_SSL= openssl openssl31
BROKEN_SSL_REASON= Requires OpenSSL 3.0.0 deprecated CRYPTO_MEM_CHECK_ON
USE_CXXSTD= c++11
USE_QT= buildtools:build core network sql xml
USES= cmake compiler:c++17-lang pkgconfig python:build qt:5 ssl
USE_CXXSTD= c++17
USE_QT= buildtools:build core network qmake:build sql xml
USE_GITHUB= YES
GH_ACCOUNT= mumble-voip
GH_PROJECT= mumble
CMAKE_ON= server
CMAKE_OFF= client
CONFIG= no-client
QMAKE_ARGS= "CONFIG+=${CONFIG}"
QMAKE_ENV+= "MUMBLE_PYTHON=${PYTHON_CMD}"
CXXFLAGS+= -Wno-deprecated-declarations
USE_RC_SUBR= murmur
USE_RC_SUBR= mumble_server
SUB_LIST+= USERS="${USERS}" GROUPS="${GROUPS}"
OPTIONS_DEFINE= BONJOUR DBUS DOCS ICE
OPTIONS_DEFAULT= BONJOUR MYSQL SQLITE
EXTRA_PATCHES+= ${.CURDIR}/../mumble/files/patch-protobuf
OPTIONS_DEFINE= AVAHI DBUS DOCS ICE LTO
OPTIONS_DEFAULT= AVAHI LTO MYSQL SQLITE
OPTIONS_MULTI= SQL
OPTIONS_MULTI_SQL= MYSQL SQLITE
OPTIONS_MULTI_SQL= MYSQL PGSQL SQLITE
BONJOUR_DESC= Bonjour Support
BONJOUR_VARS_OFF= CONFIG+=no-bonjour
BONJOUR_LIB_DEPENDS= libdns_sd.so:net/mDNSResponder
AVAHI_CMAKE_BOOL= zeroconf
AVAHI_LIB_DEPENDS= libdns_sd.so:net/avahi-libdns
DBUS_VARS_OFF= CONFIG+=no-dbus
DBUS_USE= QT=dbus
DBUS_CMAKE_BOOL= dbus
ICE_DESC= Ice Support
ICE_VARS_OFF= CONFIG+=no-ice
ICE_CMAKE_BOOL= ice
ICE_LIB_DEPENDS= libIce.so:devel/ice
MYSQL_VARS_OFF= CONFIG+=no-sql-mysql
MYSQL_USE= QT=sql-mysql
LTO_CMAKE_BOOL= lto
SQLITE_VARS_OFF= CONFIG+=no-sqlite3_run
MYSQL_USE= QT=sql-mysql:run
PGSQL_USE= QT=sql-pgsql:run
SQLITE_USE= QT=sql-sqlite3:run
USERS= murmur
GROUPS= murmur
USERS= mumble-server
GROUPS= mumble-server
.include <bsd.port.pre.mk>
# PCH is broken on GCC
.if ${CHOSEN_COMPILER_TYPE} == gcc
CONFIG+= no-pch
.endif
post-patch:
@${REINPLACE_CMD} -e 's|--no-add-needed|--no-copy-dt-needed-entries|' ${WRKSRC}/qmake/compiler.pri
@${ECHO_CMD} 'QMAKE_LFLAGS += -fstack-protector' >> ${WRKSRC}/src/murmur/murmur.pro
pre-install:
${SED} -i '' -e 's|database=.*|database=/var/db/murmur/murmur.sqlite|' ${WRKSRC}/scripts/murmur.ini
${SED} -i '' -e 's|#pidfile=.*|pidfile=/var/run/murmur/murmur.pid|' ${WRKSRC}/scripts/murmur.ini
${SED} -i '' -e 's|#logfile=.*|logfile=/var/log/murmur/murmur.log|' ${WRKSRC}/scripts/murmur.ini
${SED} -i '' -e 's|#host=.*|host=0.0.0.0|' ${WRKSRC}/scripts/murmur.ini
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/release/murmurd ${STAGEDIR}${PREFIX}/sbin
${INSTALL_DATA} ${WRKSRC}/scripts/murmur.ini ${STAGEDIR}${PREFIX}/etc/murmur.ini.sample
${CP} ${WRKSRC}/man/murmurd.1 ${STAGEDIR}${PREFIX}/share/man/man1
post-install:
${SED} -i '' -e 's|database=.*|database=/var/db/mumble-server/mumble-server.sqlite| ; \
s|;pidfile=.*|pidfile=/var/run/mumble-server/mumble-server.pid| ; \
s|;logfile=.*|logfile=/var/log/mumble-server/mumble-server.log| ; \
s|;host=.*|host=0.0.0.0|' \
${STAGEDIR}${PREFIX}/etc/mumble/mumble-server.ini
${MV} ${STAGEDIR}${PREFIX}/etc/mumble/mumble-server.ini \
${STAGEDIR}${PREFIX}/etc/mumble/mumble-server.ini.sample
.for f in bin/mumble-server-user-wrapper share/man/man1/mumble-server-user-wrapper.1 \
etc/sysconfig.d/mumble-server.conf etc/systemd/system/mumble-server.service
${RM} ${STAGEDIR}${PREFIX}/${f}
.endfor
.for d in etc/sysconfig.d etc/systemd/system etc/systemd
${RMDIR} ${STAGEDIR}${PREFIX}/${d}
.endfor
do-install-DOCS-on:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
.for f in CHANGES INSTALL README README.Linux
.for f in README.md SECURITY.md docs/additional-readmes/README.static.linux
${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR}
.endfor

View file

@ -1,3 +1,3 @@
TIMESTAMP = 1705575971
SHA256 (mumble-voip-mumble-1.3.4_GH0.tar.gz) = a692840423ddbd00ecca1ce174e4279c753acf58278579f603e56b644eae6f8e
SIZE (mumble-voip-mumble-1.3.4_GH0.tar.gz) = 4896282
TIMESTAMP = 1692806872
SHA256 (mumble-1.5.517.tar.gz) = 8efd06a0f47ebfe27735f7575ba0becfb21d0f400a5082202dbbd998ab8351de
SIZE (mumble-1.5.517.tar.gz) = 12091432

View file

@ -1,37 +1,37 @@
#!/bin/sh
# PROVIDE: murmur
# PROVIDE: mumble_server
# REQUIRE: DAEMON
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
# to enable this service:
#
# murmur_enable (bool): Set to NO by default.
# Set it to YES to enable murmur.
# murmur_flags (str): Set to "" by default.
# mumble_server_enable (bool): Set to NO by default.
# Set it to YES to enable mumble_server.
# mumble_server_flags (str): Set to "" by default.
# Extra flags passed to start command.
#
. /etc/rc.subr
name=murmur
rcvar=murmur_enable
name=mumble_server
rcvar=mumble_server_enable
load_rc_config $name
# Set some defaults
: ${murmur_enable:=NO}
: ${murmur_user=%%USERS%%}
: ${mumble_server_enable:=NO}
: ${mumble_server_user=%%USERS%%}
command="%%PREFIX%%/sbin/murmurd"
command_args="-ini %%PREFIX%%/etc/murmur.ini"
pidfile=/var/run/murmur/murmur.pid
start_precmd=murmur_prestart
command="%%PREFIX%%/bin/mumble-server"
command_args="-ini %%PREFIX%%/etc/mumble/mumble-server.ini"
pidfile=/var/run/mumble-server/mumble-server.pid
start_precmd=mumble_server_prestart
extra_commands="reload"
sig_reload="USR1"
murmur_prestart() {
for i in /var/log/murmur /var/run/murmur /var/db/murmur; do
mumble_server_prestart() {
for i in /var/log/mumble-server /var/run/mumble-server /var/db/mumble-server; do
if [ ! -d ${i} ]; then
install -d -o %%USERS%% -g %%GROUPS%% ${i}
fi

View file

@ -1,34 +0,0 @@
Description: the SSL library must be initialized, otherwise mumble and
mumble-server both fail to find the available ciphers after a rebuild
with openssl_1.0.2d-3. The two calls used are based on:
https://wiki.openssl.org/index.php/SSL/TLS_Client#Initialization
Author: Colomban Wendling <lists.ban@herbesfolles.org>
Christohper Knadle <Chris.Knadle@coredump.us>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=804363
Bug-Mumble: https://github.com/mumble-voip/mumble/issues/1876
Last-Updated: 2015-11-10
--- src/mumble/main.cpp.orig 2019-08-30 01:01:56 UTC
+++ src/mumble/main.cpp
@@ -132,6 +132,9 @@ int main(int argc, char **argv) {
os_init();
+ SSL_library_init();
+ SSL_load_error_strings();
+
bool bAllowMultiple = false;
bool suppressIdentity = false;
bool customJackClientName = false;
--- src/murmur/main.cpp.orig 2019-08-30 01:01:56 UTC
+++ src/murmur/main.cpp
@@ -205,6 +205,9 @@ int main(int argc, char **argv) {
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
#endif
+ SSL_library_init();
+ SSL_load_error_strings();
+
#ifdef Q_OS_WIN
// By default, windbus expects the path to dbus-daemon to be in PATH, and the path
// should contain bin\\, and the path to the config is hardcoded as ..\etc

View file

@ -1,18 +0,0 @@
--- scripts/murmur.ini.orig 2020-09-04 21:33:39 UTC
+++ scripts/murmur.ini
@@ -93,13 +93,13 @@ icesecretwrite=
; logs to the file 'murmur.log'. If you leave this field blank
; on Unix-like systems, Murmur will force itself into foreground
; mode which logs to the console.
-;logfile=murmur.log
+logfile=/var/log/murmur/murmur.log
; If set, Murmur will write its process ID to this file
; when running in daemon mode (when the -fg flag is not
; specified on the command line). Only available on
; Unix-like systems.
-;pidfile=
+pidfile=/var/run/murmur/murmur.pid
; The below will be used as defaults for new configured servers.
; If you're just running one server (the default), it's easier to

View file

@ -1,15 +0,0 @@
--- src/SelfSignedCertificate.cpp.orig 2023-06-11 17:43:07 UTC
+++ src/SelfSignedCertificate.cpp
@@ -45,10 +45,12 @@ bool SelfSignedCertificate::generate(CertificateType c
QString commonName;
bool isServerCert = certificateType == CertificateTypeServerCertificate;
+#ifdef CRYPTO_MEM_CHECK_ON
if (CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON) == -1) {
ok = false;
goto out;
}
+#endif
x509 = X509_new();
if (x509 == NULL) {

View file

@ -1,2 +1,2 @@
Murmur is the server component of Mumble, a low-latency, high quality
VoIP application.
Mumble-server is the server component of Mumble, a free, open source,
low-latency, high quality voice chat application.

View file

@ -1,7 +1,8 @@
@sample etc/murmur.ini.sample
share/man/man1/murmurd.1.gz
sbin/murmurd
%%PORTDOCS%%%%DOCSDIR%%/CHANGES
%%PORTDOCS%%%%DOCSDIR%%/INSTALL
%%PORTDOCS%%%%DOCSDIR%%/README
%%PORTDOCS%%%%DOCSDIR%%/README.Linux
bin/mumble-server
etc/mumble/MumbleServer.ice
@sample etc/mumble/mumble-server.ini.sample
share/dbus-1/system.d/mumble-server.conf
share/man/man1/mumble-server.1.gz
%%PORTDOCS%%%%DOCSDIR%%/README.md
%%PORTDOCS%%%%DOCSDIR%%/SECURITY.md
%%PORTDOCS%%%%DOCSDIR%%/README.static.linux