%define subrel 3 # configuration options for the server (murmur) %define build_server 1 %define build_ice 1 # configuration options for the client %define build_client 1 %define build_speechd 1 %define build_g15 1 %{?_without_server: %{expand: %%global build_server 0}} %{?_without_server: %{expand: %%global build_ice 0}} %{?_with_server: %{expand: %%global build_server 1}} %{?_without_ice: %{expand: %%global build_ice 0}} %{?_with_ice: %{expand: %%global build_ice 1}} %{?_without_client: %{expand: %%global build_client 0}} %{?_without_client: %{expand: %%global build_speechd 0}} %{?_without_client: %{expand: %%global build_g15 0}} %{?_with_client: %{expand: %%global build_client 1}} %{?_without_speechd: %{expand: %%global build_speechd 0}} %{?_with_speechd: %{expand: %%global build_speechd 1}} %{?_without_g15: %{expand: %%global build_g15 0}} %{?_with_g15: %{expand: %%global build_g15 1}} Summary: Low-latency, high-quality voice communication for gamers Name: mumble Version: 1.2.3 Release: %mkrel 1 License: BSD-like Group: Sound Url: http://mumble.sourceforge.net/ Source0: http://downloads.sourceforge.net/mumble/%{name}-%{version}.tar.gz # conf files courtesy of debian package Source1: %{name}-server.ini Source2: %{name}-server-web.conf Source3: MurmurPHP.ini Source4: README.install.urpmi.mumble-server-web Source5: %{name}-server-init.mdv Source6: %{name}-server.logrotate Patch0: %{name}-1.2.1-mdv-fix-string-error.patch Patch1: mumble-1.2.2-link.patch Patch2: 0001-Explicitly-remove-file-permissions-for-settings-and-.patch Patch3: mumble-1.2.3-ice-3.3.1-only.patch Patch4: mumble-1.2.3-ice-3.3.1-path.patch Patch5: mumble-1.2.3-ice-php-include-path.patch BuildRequires: kde4-macros BuildRequires: libspeex-devel BuildRequires: celt-devel >= 0.7.0 BuildRequires: qt4-devel >= 4.4.1 BuildRequires: boost-devel BuildRequires: pulseaudio-devel BuildRequires: libalsa-devel BuildRequires: libogg-devel BuildRequires: openssl-devel BuildRequires: libxevie-devel BuildRequires: qt4-linguist >= 4.4.1 BuildRequires: protobuf-devel BuildRequires: protobuf-compiler BuildRequires: avahi-compat-libdns_sd-devel %if %build_speechd BuildRequires: speech-dispatcher-devel %endif %if %build_g15 BuildRequires: g15daemon_client-devel %endif Requires: qt4-database-plugin-sqlite >= 4.3.0 Requires: %{name}-plugins = %{version}-%{release} Suggests: %{name}.protocol %if %build_speechd Suggests: speech-dispatcher %endif %if %build_g15 Suggests: g15daemon %endif BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot %description Low-latency, high-quality voice communication for gamers. Includes game linking, so voice from other players comes from the direction of their characters, and has echo cancellation so the sound from your loudspeakers won't be audible to other players. %package 11x Summary: The 1.1.x compatible client for mumble Group: Sound Requires: %{name} = %{version}-%{release} %description 11x This package provides the 1.1.x compatible client for Mumble, used to connect to older servers. %package protocol-kde4 Summary: The mumble protocol for KDE4 Group: Graphical desktop/KDE Requires: %{name} = %{version}-%{release} %description protocol-kde4 The mumble protocol for KDE4. %package plugins Summary: Mumble plugins Group: Sound Requires: %{name} = %{version}-%{release} # 24 may 2009 : necessary for upgrading Provides: %mklibname %{name} 1 Provides: %mklibname %{name} -d Obsoletes: %mklibname %{name} 1 Obsoletes: %mklibname %{name} -d %description plugins This packages provides the Mumble plugins. %if %build_server %package server Summary: Murmur, the VOIP server for Mumble Group: Sound Requires(pre): rpm-helper Requires(post): rpm-helper Requires(preun): rpm-helper %if %build_ice BuildRequires: ice-devel < 3.4 # (cg) ice-devel should require this itself, but it doesn't... BuildRequires: ice < 3.4 %endif Requires: qt4-database-plugin-sqlite >= 4.3.0 Requires: dbus %description server This package provides Murmur, the VOIP server for Mumble. %package server-web Summary: Web scripts for mumble-server Group: Sound Requires: apache Requires: perl-CGI Requires: mail-server %if %build_ice Requires: php-ice < 3.4 Requires: ice < 3.4 %endif Requires: %{name}-server = %{version}-%{release} %description server-web This package contains the web scripts for mumble-server. %endif %prep %setup -q %patch0 -p0 %patch1 -p0 %patch2 -p1 -b .cve-2012-0863 %patch3 -p1 -b .ice-3.3.1 %patch4 -p1 -b .ice-path %patch5 -p0 -b .ice-php-incl-path cp -p %{SOURCE4} README.install.urpmi %build %qmake_qt4 main.pro \ %if %build_server == 0 CONFIG+=no-server \ %endif %if %build_ice == 0 CONFIG+=no-ice \ %endif %if %build_client == 0 CONFIG+=no-client \ %endif %if %build_speechd == 0 CONFIG+=no-speechd \ %endif %if %build_g15 == 0 CONFIG+=no-g15 \ %endif CONFIG+=no-bundled-speex \ CONFIG+=no-bundled-celt \ CONFIG+=no-embed-qt-translations \ CONFIG+=no-update \ DEFINES+=PLUGIN_PATH=%{_libdir}/%{name} \ DEFINES+=DEFAULT_SOUNDSYSTEM=PulseAudio %make -j2 %install rm -rf %{buildroot} %if %build_client # --- Mumble install --- install -D -m 0755 release/%{name} %{buildroot}%{_bindir}/%{name} install -m 0755 scripts/%{name}-overlay %{buildroot}%{_bindir}/%{name}-overlay install -D -m 0755 scripts/%{name}.protocol %{buildroot}%{_kde_datadir}/kde4/services/%{name}.protocol install -d -m 0755 %{buildroot}%{_libdir}/%{name}/plugins cp -Pp release/libmumble* %{buildroot}%{_libdir}/%{name}/ cp -p release/plugins/liblink.so %{buildroot}%{_libdir}/%{name}/ # ---Mumble 11X --- install -D -m 0755 release/%{name}11x %{buildroot}%{_bindir}/%{name}11x # Mumble icons install -D -m 0644 icons/%{name}.svg %{buildroot}%{_iconsdir}/hicolor/scalable/apps/%{name}.svg # Mumble desktop file install -d -m 0755 %{buildroot}%{_datadir}/applications install -m 0644 scripts/%{name}.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop desktop-file-install \ --remove-category="Qt" \ --dir %{buildroot}%{_datadir}/applications %{buildroot}%{_datadir}/applications/* # Create a Mumble11x desktop file from the Mumble one sed -e "s/Name\=Mumble/Name\=Mumble-11x/g" \ -e "s/Exec\=mumble/Exec\=mumble11x/g" \ %{buildroot}%{_datadir}/applications/%{name}.desktop \ > %{buildroot}%{_datadir}/applications/%{name}11x.desktop %endif %if %build_server # --- Mumble-server/Murmur install --- install -D -m0755 release/murmurd "%{buildroot}%{_sbindir}/murmurd" install -D -m0755 scripts/murmur-user-wrapper %{buildroot}%{_bindir}/murmur-user-wrapper mkdir -p %{buildroot}%{_sysconfdir}/{dbus-1/system.d,logrotate.d} install -m0644 scripts/murmur.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/%{name}-server.conf install -m0644 %{SOURCE6} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}-server install -m0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}-server.ini %if %build_ice # install Mumur.ice in /usr/share/slice install -D -m0755 src/murmur/Murmur.ice %{buildroot}%{_datadir}/slice/Murmur.ice %endif # install initscript mkdir -p %{buildroot}%{_initrddir} install -m0744 %{SOURCE5} %{buildroot}%{_initrddir}/%{name}-server # create database directory install -d -m0755 %{buildroot}%{_var}/lib/%{name}-server # create log directory install -d -m0755 %{buildroot}%{_var}/log/%{name}-server # create pidfile directory install -d -m0755 %{buildroot}%{_var}/run/%{name}-server # install example mkdir -p %{buildroot}%{_var}/%{name}-server/examples # --- Mumble-server-web files --- install -D -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}-server-web.conf %if %build_ice install -D -m0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/php.d/MurmurPHP.ini install -D -m0644 scripts/weblist.php %{buildroot}%{_datadir}/%{name}-server-web/www/weblist.php %endif install -D -m0755 scripts/weblist.pl %{buildroot}%{_datadir}/%{name}-server-web/www/weblist.cgi install -D -m0755 scripts/murmur.pl %{buildroot}%{_datadir}/%{name}-server-web/www/register.cgi pushd %{buildroot}%{_datadir}/%{name}-server-web/www ln -s weblist.php index.php popd %endif # --- Manpages --- install -d -m 0755 %{buildroot}%{_mandir}/man1 %if %build_server install -m 0644 man/murmur* %{buildroot}%{_mandir}/man1 %endif %if %build_client install -m 0644 man/mumble* %{buildroot}%{_mandir}/man1 %endif %clean rm -rf %{buildroot} %if %build_server %pre server %_pre_useradd %{name}-server %{_var}/lib/%{name}-server /bin/sh %post server %_post_service %{name}-server %__service messagebus reload %preun server if [ $1 = 0 ]; then %_preun_service %{name}-server fi %postun server %_postun_userdel %{name}-server %endif %if %build_client %files %defattr(-,root,root) %doc README README.Linux CHANGES LICENSE %{_bindir}/%{name} %{_bindir}/%{name}-overlay %{_datadir}/applications/%{name}.desktop %{_iconsdir}/hicolor/*/apps/%{name}.svg %{_mandir}/man1/%{name}.* %{_mandir}/man1/%{name}-overlay.* %files 11x %defattr(-,root,root,-) %{_bindir}/%{name}11x %{_datadir}/applications/%{name}11x.desktop %{_mandir}/man1/%{name}11x.* %files protocol-kde4 %defattr(-,root,root) %{_kde_datadir}/kde4/services/%{name}.protocol %files plugins %defattr(-,root,root,-) %{_libdir}/%{name} %endif %if %build_server %files server %if %build_client == 0 %doc README README.Linux CHANGES LICENSE %endif %defattr(-,root,root) %doc scripts/murmur.ini %{_bindir}/murmur-user-wrapper %{_sbindir}/murmurd %{_initrddir}/%{name}-server %config(noreplace) %{_sysconfdir}/%{name}-server.ini %{_sysconfdir}/logrotate.d/%{name}-server %{_sysconfdir}/dbus-1/system.d/%{name}-server.conf %attr(-,mumble-server,mumble-server) %dir %{_var}/lib/%{name}-server %attr(-,mumble-server,root) %dir %{_var}/log/%{name}-server %attr(-,mumble-server,mumble-server) %dir %{_var}/run/%{name}-server %if %build_ice %{_datadir}/slice/Murmur.ice %endif %{_mandir}/man1/murmur-user-wrapper.* %{_mandir}/man1/murmurd.* %files server-web %doc README.install.urpmi %defattr(-,root,root) %config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}-server-web.conf %if %build_ice %config(noreplace) %{_sysconfdir}/php.d/MurmurPHP.ini %endif %{_datadir}/%{name}-server-web %endif %changelog * Wed Aug 15 2012 stormi <stormi> 1.2.3-1.3.mga1 + Revision: 281424 - fix php-ice include path for Murmur + colin <colin> - Enable ice support. - Don't include the PHP files if building without ice support (mga#6511) - Fix permissions on database file (mga#6511 CVE-2012-0863) - Add Requires(pre) rpm-helper for useradd helper + kharec <kharec> - rediff patches - update to new version 1.2.3 * Mon Mar 28 2011 ennael <ennael> 1.2.2-3.mga1 + Revision: 78293 - clean spec file - imported package mumble * Mon Dec 06 2010 Oden Eriksson <oeriksson@mandriva.com> 1.2.2-3mdv2011.0 + Revision: 612967 - the mass rebuild of 2010.1 packages * Mon Apr 19 2010 Funda Wang <fwang@mandriva.org> 1.2.2-2mdv2010.1 + Revision: 536611 - fix linkage * Sat Feb 20 2010 Tomasz Pawel Gajc <tpg@mandriva.org> 1.2.2-1mdv2010.1 + Revision: 508809 - update to new version 1.2.2 - drop patch 1 * Sun Jan 31 2010 Jérôme Brenier <incubusss@mandriva.org> 1.2.1-2mdv2010.1 + Revision: 498747 - rebuild for new protobuf * Sun Jan 10 2010 Jérôme Brenier <incubusss@mandriva.org> 1.2.1-1mdv2010.1 + Revision: 489126 - new version 1.2.1 - rediff Patch0 - add Patch1 from upstream to fix a database upgrade problem * Fri Dec 18 2009 Jérôme Brenier <incubusss@mandriva.org> 1.2.0-3mdv2010.1 + Revision: 479861 - fix SIGHUP syntax in the initscript (bluca) - provide a logrotate file adapted to mandriva (spotted by bluca) - add pidfile directory (thanks to bluca) - drop /etc/default/mumble-server - add an option not to build clients (thanks to bluca) * Mon Dec 14 2009 Jérôme Brenier <incubusss@mandriva.org> 1.2.0-2mdv2010.1 + Revision: 478633 - revert to make -j2 - BR celt-devel >= 0.7.0 - re-enable parallel compilation * Fri Dec 11 2009 Jérôme Brenier <incubusss@mandriva.org> 1.2.0-1mdv2010.1 + Revision: 476275 - final version 1.2.0 * Wed Dec 02 2009 Jérôme Brenier <incubusss@mandriva.org> 1.2.0-0.beta2.1mdv2010.1 + Revision: 472480 - update to 1.2.0~beta2 * Wed Nov 18 2009 Jérôme Brenier <incubusss@mandriva.org> 1.2.0-0.beta1.1mdv2010.1 + Revision: 467286 - BuildRequires : avahi-compat-libdns_sd-devel - new version 1.2.0~beta1 - rediff P0 - new subpackage mumble11x (client compatible with 1.1.x servers) - build with now available speech-dispatcher - build with celt (BR celt-devel) - BR protobuf-devel and protobuf-compiler - liblink.so now in %%{_libdir}/mumble - fix icon + Michael Scherer <misc@mandriva.org> - mark /etc/mumble-server.ini as a config file * Thu May 28 2009 Jérôme Brenier <incubusss@mandriva.org> 1.1.8-1mdv2010.0 + Revision: 380670 - add a BR on libogg-devel - add a missing Requires (plugins subpackage) - update to new version 1.1.8 - put plugins into a plugins sub-package instead of a lib one - add Provides/Obsoletes on former sub-packages - str fmt patch rediffed - fixsegfault patch dropped (merged in new sources) - fix license * Fri Mar 13 2009 Stéphane Téletchéa <steletch@mandriva.org> 1.1.7-2mdv2009.1 + Revision: 354526 - Add segfault fix, fixes bug #48490 * Thu Feb 26 2009 Tomasz Pawel Gajc <tpg@mandriva.org> 1.1.7-1mdv2009.1 + Revision: 345270 - spec clean - update to new version 1.1.7 - use complete new spec file from incubusss, with some modifications made by me (mdvbz #40902) - add sources - add source and spec file - Created package structure for mumble. + Pixel <pixel@mandriva.com> - rpm filetriggers deprecates update_menus/update_scrollkeeper/update_mime_database/update_icon_cache/update_desktop_database/post_install_gconf_schemas + Michael Scherer <misc@mandriva.org> - add missing BuildRequires