diff --git a/disabled-start.diff b/disabled-start.diff index cdc48cf..e987ae9 100644 --- a/disabled-start.diff +++ b/disabled-start.diff @@ -12,23 +12,6 @@ Index: src/daemon/start-pulseaudio-x11.in + exit 1 +fi + - @PA_BINARY@ --start "$@" - if [ x"$DISPLAY" != x ] ; then -Index: src/daemon/start-pulseaudio-kde.in -=================================================================== ---- src/daemon/start-pulseaudio-kde.in.orig -+++ src/daemon/start-pulseaudio-kde.in -@@ -19,6 +19,12 @@ - - set -e - -+. /etc/sysconfig/sound -+ -+if [ x"$PULSEAUDIO_ENABLE" = x"no" ] || [ x"$PULSEAUDIO_SYSTEM" = x"yes" ]; then -+ exit 1 -+fi -+ - [ -z "$PULSE_SERVER" ] - - @PA_BINARY@ --start "$@" + + @PACTL_BINARY@ load-module module-x11-publish "display=$DISPLAY" > /dev/null diff --git a/pulseaudio-5.0.tar.xz b/pulseaudio-5.0.tar.xz deleted file mode 100644 index 755fc2f..0000000 --- a/pulseaudio-5.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:99c13a8b1249ddbd724f195579df79484e9af6418cecf6a15f003a7f36caf939 -size 1455428 diff --git a/pulseaudio-5.99.1.tar.xz b/pulseaudio-5.99.1.tar.xz new file mode 100644 index 0000000..50edcb3 --- /dev/null +++ b/pulseaudio-5.99.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:589d3623c5458b2b831a107c49d16da69afed5b2cfa545353da90df1a3e84fbf +size 1454240 diff --git a/pulseaudio-bnc881524-rtp.patch b/pulseaudio-bnc881524-rtp.patch deleted file mode 100644 index a8037d6..0000000 --- a/pulseaudio-bnc881524-rtp.patch +++ /dev/null @@ -1,52 +0,0 @@ -commit 26b9d22dd24c17eb118d0205bf7b02b75d435e3c -Author: Alexander E. Patrakov -Date: Thu Jun 5 22:29:25 2014 +0600 - - rtp-recv: fix crash on empty UDP packets (CVE-2014-3970) - - On FIONREAD returning 0 bytes, we cannot return success, as the caller - (rtpoll_work_cb in module-rtp-recv.c) would then try to - pa_memblock_unref(chunk.memblock) and, because memblock is NULL, trigger - an assertion. - - Also we have to read out the possible empty packet from the socket, so - that the kernel doesn't tell us again and again about it. - - Signed-off-by: Alexander E. Patrakov - -diff --git a/src/modules/rtp/rtp.c b/src/modules/rtp/rtp.c -index 570737e..7b75e0e 100644 ---- a/src/modules/rtp/rtp.c -+++ b/src/modules/rtp/rtp.c -@@ -182,8 +182,29 @@ int pa_rtp_recv(pa_rtp_context *c, pa_memchunk *chunk, pa_mempool *pool, struct - goto fail; - } - -- if (size <= 0) -- return 0; -+ if (size <= 0) { -+ /* size can be 0 due to any of the following reasons: -+ * -+ * 1. Somebody sent us a perfectly valid zero-length UDP packet. -+ * 2. Somebody sent us a UDP packet with a bad CRC. -+ * -+ * It is unknown whether size can actually be less than zero. -+ * -+ * In the first case, the packet has to be read out, otherwise the -+ * kernel will tell us again and again about it, thus preventing -+ * reception of any further packets. So let's just read it out -+ * now and discard it later, when comparing the number of bytes -+ * received (0) with the number of bytes wanted (1, see below). -+ * -+ * In the second case, recvmsg() will fail, thus allowing us to -+ * return the error. -+ * -+ * Just to avoid passing zero-sized memchunks and NULL pointers to -+ * recvmsg(), let's force allocation of at least one byte by setting -+ * size to 1. -+ */ -+ size = 1; -+ } - - if (c->memchunk.length < (unsigned) size) { - size_t l; diff --git a/pulseaudio.changes b/pulseaudio.changes index 0887324..e7ab755 100644 --- a/pulseaudio.changes +++ b/pulseaudio.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Fri Nov 21 22:26:55 UTC 2014 - oholecek@suse.com + +- Update to 6.0 RC1 (5.99.1) +- Remove patch pulseaudio-bnc881524-rtp.patch +- Update patch disabled-start.diff +- Bash&zsh completion split to separate subpackage +- Fix %postun for system-wide mode +- json-c >= 0.11 is now required + (break build on oS 13.1) + ------------------------------------------------------------------- Thu Nov 20 18:26:27 CET 2014 - tiwai@suse.de diff --git a/pulseaudio.spec b/pulseaudio.spec index 3e3dc9d..ac9026d 100644 --- a/pulseaudio.spec +++ b/pulseaudio.spec @@ -17,9 +17,9 @@ Name: pulseaudio -Version: 5.0 +Version: 5.99.1 Release: 0 -%define drvver 5.0 +%define drvver 5.99 %define soname 0 %define _udevrulesdir %(pkg-config --variable=udevdir udev)/rules.d %define _fwdefdir /etc/sysconfig/SuSEfirewall2.d/services @@ -42,8 +42,6 @@ Source99: baselibs.conf Patch0: disabled-start.diff Patch1: suppress-socket-error-msg.diff Patch2: pulseaudio-wrong-memset.patch -# PATCH-FIX-UPSTREAM pulseaudio-bnc881524-rtp.patch sreeves@suse.com -Patch3: pulseaudio-bnc881524-rtp.patch BuildRequires: alsa-devel >= 1.0.19 # require only minimal bluez, if we are on bluez 5 we will determine in %build phase BuildRequires: bluez-devel >= 4.99 @@ -76,7 +74,7 @@ BuildRequires: pkgconfig(gconf-2.0) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(ice) -BuildRequires: pkgconfig(json) >= 0.9 +BuildRequires: pkgconfig(json) >= 0.11 BuildRequires: pkgconfig(sbc) >= 1.0 BuildRequires: pkgconfig(sm) BuildRequires: pkgconfig(x11) @@ -90,6 +88,7 @@ Requires: udev >= 146 ## needs the same liborc version which was used to build against %requires_eq liborc-0_4-0 Recommends: %{name}-lang +Recommends: %{name}-bash-completion Recommends: alsa-plugins-pulse Obsoletes: libpulsecore9 < 0.9.15 Provides: libpulsecore9 = 0.9.15 @@ -291,13 +290,30 @@ improved drop-in replacement for the Enlightened Sound Daemon (ESOUND). This package contains GDM integration hooks for the PulseAudio sound server. +%package bash-completion +Summary: PulseAudio Bash completion +Group: System/Shells +Requires: %{name} = %{version} +Requires: bash + +%description bash-completion +Optional dependency offering bash completion for various PulseAudio utilities + +%package zsh-completion +Summary: PulseAudio zsh completion +Group: System/Shells +Requires: %{name} = %{version} +Requires: zsh + +%description zsh-completion +Optional dependency offering zsh completion for various PulseAudio utilities + %lang_package %prep %setup -q -T -b0 %patch0 %patch1 -p1 %patch2 -%patch3 -p1 %build echo 'HTML_TIMESTAMP=NO' >> doxygen/doxygen.conf.in @@ -337,7 +353,6 @@ ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name} # openSUSE 11.3 cannot find the .desktop files %suse_update_desktop_file pulseaudio -%suse_update_desktop_file pulseaudio-kde %find_lang %{name} install %{SOURCE2} %{buildroot}%{_bindir} chmod 755 %{buildroot}%{_bindir}/setup-pulseaudio @@ -395,7 +410,7 @@ exit 0 exit 0 %postun system-wide -%service_del_preun pulseaudio.service +%service_del_postun pulseaudio.service exit 0 %files @@ -503,7 +518,13 @@ exit 0 %config(noreplace) %{_sysconfdir}/pulse/default.pa %config(noreplace) %{_sysconfdir}/pulse/system.pa %config(noreplace) %{_sysconfdir}/dbus-1/system.d/pulseaudio-system.conf -%config(noreplace) %{_sysconfdir}/bash_completion.d/pulseaudio-bash-completion.sh +# init +%dir %{_libexecdir}/systemd +%dir %{_libexecdir}/systemd/user +%{_libexecdir}/systemd/user/%{name}.service +%{_libexecdir}/systemd/user/%{name}.socket + + %if %{defined suse_version} %config(noreplace) %{_fwdefdir}/pulseaudio-server %endif @@ -585,14 +606,11 @@ exit 0 %files module-x11 %defattr(-,root,root) %{_sysconfdir}/xdg/autostart/pulseaudio.desktop -%{_sysconfdir}/xdg/autostart/pulseaudio-kde.desktop %{_bindir}/start-pulseaudio-x11 -%{_bindir}/start-pulseaudio-kde %{_libdir}/pulse-%{drvver}/modules/module-x11-bell.so %{_libdir}/pulse-%{drvver}/modules/module-x11-cork-request.so %{_libdir}/pulse-%{drvver}/modules/module-x11-publish.so %{_libdir}/pulse-%{drvver}/modules/module-x11-xsmp.so -%doc %{_mandir}/man1/start-pulseaudio-kde.1* %doc %{_mandir}/man1/start-pulseaudio-x11.1* %files module-zeroconf @@ -627,9 +645,28 @@ exit 0 %files lang -f %{name}.lang %files system-wide +%defattr(-,root,root) %{_sbindir}/rc%{name} -%dir /usr/lib/systemd -%dir /usr/lib/systemd/system -/usr/lib/systemd/system/%{name}.service +%dir %{_libexecdir}/systemd/system +%{_libexecdir}/systemd/system/%{name}.service + +%files bash-completion +%defattr(-,root,root) +%dir %{_sysconfdir}/bash_completion.d +%config %{_sysconfdir}/bash_completion.d/pulseaudio +%config %{_sysconfdir}/bash_completion.d/pacat +%config %{_sysconfdir}/bash_completion.d/pacmd +%config %{_sysconfdir}/bash_completion.d/pactl +%config %{_sysconfdir}/bash_completion.d/padsp +%config %{_sysconfdir}/bash_completion.d/paplay +%config %{_sysconfdir}/bash_completion.d/parec +%config %{_sysconfdir}/bash_completion.d/parecord +%config %{_sysconfdir}/bash_completion.d/pasuspender + +%files zsh-completion +%defattr(-,root,root) +%dir %{_datarootdir}/zsh +%dir %{_datarootdir}/zsh/site-functions/ +%config %{_datarootdir}/zsh/site-functions/_pulseaudio %changelog