| |
@@ -1,220 +1,272 @@
|
| |
- %global theme_version 1d48b123d2e62dab348e08810787e41a7511be69
|
| |
-
|
| |
Name: mumble
|
| |
- Version: 1.3.2
|
| |
- Release: 2%{?dist}
|
| |
- Summary: Voice chat suite aimed at gamers
|
| |
- Obsoletes: mumble-protocol < 1.2.10-2
|
| |
- License: BSD
|
| |
- URL: http://www.mumble.info
|
| |
- Source0: https://github.com/mumble-voip/mumble/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
| |
- Source1: https://github.com/mumble-voip/mumble-theme/archive/%{theme_version}.tar.gz#/%{name}-theme-%{theme_version}.tar.gz
|
| |
+ Version: 1.3.3
|
| |
+ Release: 1%{?dist}
|
| |
+ Summary: Low-latency and high-quality voice-chat program
|
| |
+ # The main source code is BSD licensed.
|
| |
+ # The bundled libraries used are licensed as follows:
|
| |
+ # - arc4random: ISC
|
| |
+ # - celt-*: BSD, except for tools/getopt* files which are GPLv2+
|
| |
+ # - qqbonjour: BSD
|
| |
+ # - smallft: BSD
|
| |
+ License: BSD and ISC and GPLv2+
|
| |
+ URL: https://www.mumble.info
|
| |
+ Source0: https://github.com/mumble-voip/mumble/releases/download/%{version}/mumble-%{version}.tar.gz
|
| |
Source2: murmur.service
|
| |
Source3: mumble.appdata.xml
|
| |
- Patch0: %{name}-1.3.0-celt071.patch
|
| |
- # See https://fedoraproject.org/wiki/Packaging:CryptoPolicies
|
| |
- Patch1: %{name}-1.3.0-fedora-crypto-policy-cipher-list.patch
|
| |
- # Murmur.ini modified upstream bug #1629 #1904
|
| |
- Patch2: %{name}-1.3.0-fix-no-bind-at-boot.patch
|
| |
- # Murmur will qFatal() if it does not have address to bind on start
|
| |
- Patch3: %{name}-1.3.0-murmur-exit-on-no-bind.patch
|
| |
+
|
| |
+ # downstream only patch
|
| |
+ # https://docs.fedoraproject.org/en-US/packaging-guidelines/CryptoPolicies/
|
| |
+ Patch0: mumble-1.3.0-fedora-crypto-policy-cipher-list.patch
|
| |
+
|
| |
# https://github.com/mumble-voip/mumble/pull/3675
|
| |
- Patch4: 0001-Added-DBus-calls-to-activate-and-deactivate-push-to-talk.patch
|
| |
+ Patch1: 0001-Added-DBus-calls-to-activate-and-deactivate-push-to-talk.patch
|
| |
|
| |
- BuildRequires: qt5-linguist
|
| |
BuildRequires: qt5-qtbase-devel
|
| |
+ # qmake/lrelease.pri
|
| |
+ BuildRequires: qt5-linguist
|
| |
+ # qmake/openssl.pri
|
| |
+ BuildRequires: pkgconfig(openssl)
|
| |
+ # qmake/protobuf.pri
|
| |
+ BuildRequires: pkgconfig(protobuf)
|
| |
+ # qmake/protoc.pri
|
| |
+ BuildRequires: protobuf-compiler
|
| |
+ # qmake/python.pri
|
| |
+ BuildRequires: python3
|
| |
+ # src/mumble/GlobalShortcut_unix.h
|
| |
+ BuildRequires: libXi-devel
|
| |
+ # src/mumble/main.cpp
|
| |
BuildRequires: qt5-qtsvg-devel
|
| |
+ # src/mumble/mumble_pch.hpp
|
| |
BuildRequires: boost-devel
|
| |
- BuildRequires: alsa-lib-devel
|
| |
- BuildRequires: pulseaudio-libs-devel, speex-devel
|
| |
- BuildRequires: speech-dispatcher-devel, libogg-devel
|
| |
- BuildRequires: libcap-devel, speexdsp-devel
|
| |
- BuildRequires: desktop-file-utils, openssl-devel
|
| |
- BuildRequires: protobuf-compiler, avahi-compat-libdns_sd-devel
|
| |
- BuildRequires: libsndfile-devel, protobuf-devel
|
| |
- BuildRequires: opus-devel
|
| |
+ # src/mumble/mumble.pro
|
| |
+ BuildRequires: pkgconfig(speex)
|
| |
+ BuildRequires: pkgconfig(speexdsp)
|
| |
+ BuildRequires: pkgconfig(opus)
|
| |
+ BuildRequires: pkgconfig(sndfile)
|
| |
+ BuildRequires: pkgconfig(x11)
|
| |
+ BuildRequires: pkgconfig(alsa)
|
| |
+ BuildRequires: pkgconfig(libpulse)
|
| |
+ BuildRequires: pkgconfig(avahi-compat-libdns_sd)
|
| |
+ BuildRequires: pkgconfig(avahi-client)
|
| |
+ BuildRequires: pkgconfig(speech-dispatcher)
|
| |
+
|
| |
+ # multiple files in 3rdparty/celt-0.7.0-src and 3rdparty/celt-0.11.0-src
|
| |
+ BuildRequires: libogg-devel
|
| |
+
|
| |
+ # appstream-util in %%check
|
| |
BuildRequires: libappstream-glib
|
| |
- BuildRequires: libXi-devel
|
| |
+ # desktop-file-validate in %%check
|
| |
+ BuildRequires: desktop-file-utils
|
| |
+
|
| |
+ Provides: bundled(arc4random)
|
| |
+ Provides: bundled(celt) = 0.7.0
|
| |
+ Provides: bundled(celt) = 0.11.0
|
| |
+ Provides: bundled(qqbonjour)
|
| |
+ Provides: bundled(smallft)
|
| |
|
| |
- %global no_bundled_celt no-bundled-celt
|
| |
- %if 0%{?no_bundled_celt:1}
|
| |
- #Due to naming issues, celt071 is required explicitly
|
| |
- BuildRequires: celt071-devel
|
| |
- Requires: celt071%{?_isa}
|
| |
- %endif
|
| |
|
| |
%description
|
| |
- Mumble provides low-latency, high-quality voice communication for gamers.
|
| |
- It includes game linking, so voice from other players comes
|
| |
- from the direction of their characters, and has echo
|
| |
- cancellation so that the sound from your loudspeakers
|
| |
- won't be audible to other players.
|
| |
+ Mumble is an Open Source, low-latency and high-quality voice-chat program
|
| |
+ written on top of Qt and Opus.
|
| |
+
|
| |
|
| |
%package -n murmur
|
| |
- Summary: Mumble voice chat server
|
| |
- Provides: %{name}-server = %{version}-%{release}
|
| |
- Requires(pre): shadow-utils
|
| |
+ Summary: Mumble voice chat server
|
| |
+ Provides: mumble-server = %{version}-%{release}
|
| |
+ # src/murmur/murmur_pch.h
|
| |
+ BuildRequires: libcap-devel
|
| |
+ Requires(pre): shadow-utils
|
| |
# To be able to announce the presence of the server via Bonjour.
|
| |
Recommends: avahi
|
| |
|
| |
%{?systemd_requires}
|
| |
|
| |
+
|
| |
%description -n murmur
|
| |
- Murmur(also called mumble-server) is part of the VoIP suite Mumble
|
| |
- primarily aimed at gamers. Murmur is the server component of the suite.
|
| |
+ Murmur(also called mumble-server) is part of the VoIP suite Mumble primarily
|
| |
+ aimed at gamers. Murmur is the server component of the suite.
|
| |
+
|
| |
|
| |
%package plugins
|
| |
- Summary: Plugins for VoIP program Mumble
|
| |
- Requires: %{name} = %{version}-%{release}
|
| |
+ Summary: Plugins for VoIP program Mumble
|
| |
+ Requires: %{name} = %{version}-%{release}
|
| |
+
|
| |
|
| |
%description plugins
|
| |
- Mumble-plugins is part of VoIP suite Mumble primarily intended
|
| |
- for gamers. This plugin allows game linking so the voice of
|
| |
- players will come from the direction of their characters.
|
| |
+ Mumble-plugins is part of VoIP suite Mumble primarily intended for gamers. This
|
| |
+ plugin allows game linking so the voice of players will come from the direction
|
| |
+ of their characters.
|
| |
+
|
| |
|
| |
%package overlay
|
| |
- Summary: Start games with the mumble overlay
|
| |
- Requires: %{name} = %{version}-%{release}
|
| |
+ Summary: Start games with the mumble overlay
|
| |
+ Requires: %{name} = %{version}-%{release}
|
| |
+
|
| |
|
| |
%description overlay
|
| |
Mumble-overlay is part of the Mumble VoIP suite aimed at gamers. If supported,
|
| |
starting your game with this script will enable an ingame Mumble overlay.
|
| |
|
| |
- %pre -n murmur
|
| |
- getent group mumble-server >/dev/null || groupadd -r mumble-server
|
| |
- getent passwd mumble-server >/dev/null || \
|
| |
- useradd -r -g mumble-server -d %{_localstatedir}/lib/%{name}-server/ -s /sbin/nologin \
|
| |
- -c "Mumble-server(murmur) user" mumble-server
|
| |
- exit 0
|
| |
|
| |
%prep
|
| |
- %setup -q -b 1
|
| |
- pushd themes
|
| |
- rmdir Mumble
|
| |
- ln -s ../../%{name}-theme-%{theme_version} Mumble
|
| |
+ %autosetup -p 1
|
| |
+
|
| |
+ pushd 3rdparty
|
| |
+
|
| |
+ # remove bundled libraries that we have system copies of
|
| |
+ rm -r opus-src speex-src speexdsp-src
|
| |
+
|
| |
+ # remove bundled libraries for disabled features
|
| |
+ rm -r rnnoise-src
|
| |
+
|
| |
+ # remove bundled libraries for windows
|
| |
+ rm -r GL minhook-src xinputcheck-src
|
| |
+
|
| |
+ # remove bundled libraries for mac
|
| |
+ rm -r mach-override-src
|
| |
+
|
| |
popd
|
| |
|
| |
- %if 0%{?no_bundled_celt:1}
|
| |
- %patch0 -p1 -b .celt071
|
| |
- %endif
|
| |
- %patch1 -p1 -b .fedora-crypto-policy-cipher-list
|
| |
- %patch2 -p1 -b .fix-no-bind-at-boot
|
| |
- %patch3 -p1 -b .murmur-exit-on-no-bind
|
| |
- %patch4 -p1 -b .Added-DBus-calls-to-activate-and-deactivate-push-to-talk
|
| |
|
| |
%build
|
| |
%{qmake_qt5} \
|
| |
- "CONFIG+=no-bundled-speex no-g15 no-rnnoise \
|
| |
- no-embed-qt-translations no-update \
|
| |
- %{?no_bundled_celt} no-bundled-opus packaged \
|
| |
- no-ice c++11 \
|
| |
- no-oss" \
|
| |
- DEFINES+="PLUGIN_PATH=%{_libdir}/%{name}" \
|
| |
- DEFINES+="DEFAULT_SOUNDSYSTEM=PulseAudio"\
|
| |
+ CONFIG+=no-bundled-speex \
|
| |
+ CONFIG+=no-bundled-opus \
|
| |
+ CONFIG+=no-rnnoise \
|
| |
+ CONFIG+=no-g15 \
|
| |
+ CONFIG+=no-oss \
|
| |
+ CONFIG+=no-update \
|
| |
+ CONFIG+=no-embed-qt-translations \
|
| |
+ CONFIG+=no-ice \
|
| |
+ CONFIG+=packaged \
|
| |
+ CONFIG+=c++11 \
|
| |
+ DEFINES+="PLUGIN_PATH=%{_libdir}/mumble" \
|
| |
main.pro
|
| |
|
| |
%make_build release
|
| |
|
| |
+
|
| |
%install
|
| |
- install -pD -m0755 release/%{name} %{buildroot}%{_bindir}/%{name}
|
| |
- install -pD -m0755 release/murmurd %{buildroot}%{_sbindir}/murmurd
|
| |
- ln -s murmurd %{buildroot}%{_sbindir}/%{name}-server
|
| |
-
|
| |
- #translations
|
| |
- mkdir -p %{buildroot}/%{_datadir}/%{name}/translations
|
| |
- install -pm 644 src/%{name}/*.qm %{buildroot}/%{_datadir}/%{name}/translations
|
| |
-
|
| |
- mkdir -p %{buildroot}%{_libdir}/%{name}/
|
| |
- install -p release/libmumble.so.%{version} %{buildroot}%{_libdir}/%{name}/
|
| |
- install -p release/plugins/*.so %{buildroot}%{_libdir}/%{name}/
|
| |
- ln -s libmumble.so.%{version} %{buildroot}%{_libdir}/%{name}/libmumble.so
|
| |
- ln -s libmumble.so.%{version} %{buildroot}%{_libdir}/%{name}/libmumble.so.1
|
| |
- ln -s libmumble.so.%{version} %{buildroot}%{_libdir}/%{name}/libmumble.so.1.2
|
| |
-
|
| |
- %if 0%{?no_bundled_celt:1}
|
| |
- #symlink for celt071
|
| |
- ln -s ../libcelt071.so.0.0.0 %{buildroot}%{_libdir}/%{name}/libcelt0.so.0.7.0
|
| |
- %endif
|
| |
-
|
| |
- mkdir -p %{buildroot}%{_sysconfdir}/murmur/
|
| |
- install -pD scripts/murmur.ini %{buildroot}%{_sysconfdir}/murmur/murmur.ini
|
| |
- ln -s murmur/murmur.ini %{buildroot}%{_sysconfdir}/%{name}-server.ini
|
| |
- install -pD -m0644 %{SOURCE2} %{buildroot}%{_unitdir}/murmur.service
|
| |
-
|
| |
- mkdir -p %{buildroot}%{_datadir}/%{name}/
|
| |
- install -pD scripts/%{name}-overlay %{buildroot}%{_bindir}/%{name}-overlay
|
| |
-
|
| |
- #man pages
|
| |
- mkdir -p %{buildroot}%{_mandir}/man1/
|
| |
- install -pD -m0644 man/murmurd.1 %{buildroot}%{_mandir}/man1/
|
| |
- install -pD -m0644 man/mumble* %{buildroot}%{_mandir}/man1/
|
| |
- install -pD -m0664 man/mumble-overlay.1 %{buildroot}%{_mandir}/man1/mumble-overlay.1
|
| |
-
|
| |
- #icons
|
| |
- mkdir -p %{buildroot}%{_datadir}/icons/%{name}
|
| |
- install -pD -m0644 icons/%{name}.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
|
| |
-
|
| |
- # install desktop file
|
| |
- install -pD -m0644 scripts/mumble.desktop %{buildroot}%{_datadir}/applications/mumble.desktop
|
| |
-
|
| |
- # install appdata
|
| |
- install -pD -m0644 %{SOURCE3} %{buildroot}%{_datadir}/metainfo/mumble.appdata.xml
|
| |
-
|
| |
- #dir for mumble-server.sqlite
|
| |
+ install -D -p -m 0755 release/mumble %{buildroot}%{_bindir}/mumble
|
| |
+ install -D -p -m 0755 release/murmurd %{buildroot}%{_sbindir}/murmurd
|
| |
+ ln -s murmurd %{buildroot}%{_sbindir}/mumble-server
|
| |
+
|
| |
+ # translations
|
| |
+ install -d -m 0755 %{buildroot}%{_datadir}/mumble/translations
|
| |
+ install -p -m 0644 src/mumble/*.qm %{buildroot}%{_datadir}/mumble/translations
|
| |
+
|
| |
+ # libraries
|
| |
+ install -d -m 0755 %{buildroot}%{_libdir}/mumble
|
| |
+ for f in release/*.so* release/plugins/*.so; do
|
| |
+ if [[ -L "$f" ]]; then
|
| |
+ cp -P "$f" %{buildroot}%{_libdir}/mumble/
|
| |
+ else
|
| |
+ install -p -m 0755 "$f" %{buildroot}%{_libdir}/mumble/
|
| |
+ fi
|
| |
+ done
|
| |
+
|
| |
+ install -D -p -m 0664 scripts/murmur.ini %{buildroot}%{_sysconfdir}/murmur/murmur.ini
|
| |
+ ln -s murmur/murmur.ini %{buildroot}%{_sysconfdir}/mumble-server.ini
|
| |
+ install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/murmur.service
|
| |
+
|
| |
+ install -D -p -m 0755 scripts/mumble-overlay %{buildroot}%{_bindir}/mumble-overlay
|
| |
+
|
| |
+ # man pages
|
| |
+ install -D -p -m 0644 man/mumble.1 %{buildroot}%{_mandir}/man1/mumble.1
|
| |
+ install -D -p -m 0644 man/murmurd.1 %{buildroot}%{_mandir}/man1/murmurd.1
|
| |
+ install -D -p -m 0644 man/mumble-overlay.1 %{buildroot}%{_mandir}/man1/mumble-overlay.1
|
| |
+
|
| |
+ # icons
|
| |
+ install -D -p -m 0644 icons/mumble.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/mumble.svg
|
| |
+
|
| |
+ # desktop file
|
| |
+ install -D -p -m 0644 scripts/mumble.desktop %{buildroot}%{_datadir}/applications/mumble.desktop
|
| |
+
|
| |
+ # appdata
|
| |
+ install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_metainfodir}/mumble.appdata.xml
|
| |
+
|
| |
+ # dir for mumble-server.sqlite
|
| |
mkdir -p %{buildroot}%{_localstatedir}/lib/mumble-server/
|
| |
|
| |
|
| |
%check
|
| |
- appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/mumble.appdata.xml
|
| |
+ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/mumble.appdata.xml
|
| |
desktop-file-validate %{buildroot}%{_datadir}/applications/mumble.desktop
|
| |
|
| |
|
| |
+ %pre -n murmur
|
| |
+ getent group mumble-server >/dev/null || groupadd -r mumble-server
|
| |
+ getent passwd mumble-server >/dev/null || \
|
| |
+ useradd -r -g mumble-server -d %{_localstatedir}/lib/mumble-server/ -s /sbin/nologin \
|
| |
+ -c "Mumble-server (murmur) user" mumble-server
|
| |
+ exit 0
|
| |
+
|
| |
+
|
| |
%post -n murmur
|
| |
%systemd_post murmur.service
|
| |
|
| |
+
|
| |
%preun -n murmur
|
| |
%systemd_preun murmur.service
|
| |
|
| |
+
|
| |
%postun -n murmur
|
| |
%systemd_postun_with_restart murmur.service
|
| |
|
| |
+
|
| |
%files
|
| |
%license LICENSE
|
| |
%doc README README.Linux CHANGES
|
| |
- %doc scripts/server/*/weblist*
|
| |
- %{_bindir}/%{name}
|
| |
- %{_mandir}/man1/%{name}.1*
|
| |
- %{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
|
| |
+ %{_bindir}/mumble
|
| |
+ %{_mandir}/man1/mumble.1*
|
| |
+ %{_datadir}/icons/hicolor/scalable/apps/mumble.svg
|
| |
%{_datadir}/applications/mumble.desktop
|
| |
- %{_datadir}/metainfo/mumble.appdata.xml
|
| |
+ %{_metainfodir}/mumble.appdata.xml
|
| |
%{_datadir}/mumble/
|
| |
- %if 0%{?no_bundled_celt:1}
|
| |
- %dir %{_libdir}/%{name}
|
| |
- %{_libdir}/%{name}/libcelt0.so.0.7.0
|
| |
- %endif
|
| |
+ %dir %{_libdir}/mumble
|
| |
+ %{_libdir}/mumble/libcelt0.so
|
| |
+ %{_libdir}/mumble/libcelt0.so.0
|
| |
+ %{_libdir}/mumble/libcelt0.so.0.7*
|
| |
+ %{_libdir}/mumble/libcelt0.so.0.11*
|
| |
+
|
| |
|
| |
%files -n murmur
|
| |
%license LICENSE
|
| |
%doc README README.Linux CHANGES
|
| |
- %attr(-,mumble-server,mumble-server) %{_sbindir}/murmurd
|
| |
+ %{_sbindir}/murmurd
|
| |
%{_unitdir}/murmur.service
|
| |
- %{_sbindir}/%{name}-server
|
| |
+ %{_sbindir}/mumble-server
|
| |
%config(noreplace) %attr(664,mumble-server,mumble-server) %{_sysconfdir}/murmur/murmur.ini
|
| |
- %config(noreplace) %{_sysconfdir}/%{name}-server.ini
|
| |
+ %config(noreplace) %{_sysconfdir}/mumble-server.ini
|
| |
%{_mandir}/man1/murmurd.1*
|
| |
%dir %attr(-,mumble-server,mumble-server) %{_localstatedir}/lib/mumble-server/
|
| |
|
| |
+
|
| |
%files plugins
|
| |
- %{_libdir}/%{name}/libl4d2.so
|
| |
- %{_libdir}/%{name}/liblink.so
|
| |
- %{_libdir}/%{name}/librl.so
|
| |
+ %{_libdir}/mumble/libl4d2.so
|
| |
+ %{_libdir}/mumble/liblink.so
|
| |
+ %{_libdir}/mumble/librl.so
|
| |
+
|
| |
|
| |
%files overlay
|
| |
- %{_bindir}/%{name}-overlay
|
| |
- %{_libdir}/%{name}/lib%{name}*
|
| |
+ %{_bindir}/mumble-overlay
|
| |
+ %{_libdir}/mumble/libmumble.so
|
| |
+ %{_libdir}/mumble/libmumble.so.1
|
| |
+ %{_libdir}/mumble/libmumble.so.1.3
|
| |
+ %{_libdir}/mumble/libmumble.so.%{version}
|
| |
%{_mandir}/man1/mumble-overlay.1*
|
| |
|
| |
+
|
| |
%changelog
|
| |
+ * Mon Dec 21 2020 Carl George <carl@george.computer> - 1.3.3-1
|
| |
+ - Latest upstream rhbz#1885088
|
| |
+ - Update license to reflect bundled libraries
|
| |
+ - Add virtual provides for bundled libraries
|
| |
+ - Remove celt071 dependency rhbz#1904471
|
| |
+ - Remove obsolete for mumble-protocol
|
| |
+ - Remove non-root ownership of murmurd
|
| |
+ - Remove weblist perl and php scripts from %%doc
|
| |
+
|
| |
* Fri Sep 25 2020 Adrian Reber <adrian@lisas.de> - 1.3.2-2
|
| |
- Rebuilt(2) for protobuf 3.13
|
| |
|
| |
@@ -473,6 +525,3 @@
|
| |
|
| |
* Sun Feb 21 2010 Andreas Osowski <th0br0@mkdir.name> - 1.2.2-1
|
| |
- Update to 1.2.2
|
| |
-
|
| |
-
|
| |
-
|
| |