Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package pipewire for openSUSE:Factory checked in at 2021-06-05 23:31:18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/pipewire (Old) and /work/SRC/openSUSE:Factory/.pipewire.new.1898 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pipewire" Sat Jun 5 23:31:18 2021 rev:32 rq:897164 version:0.3.28 Changes: -------- --- /work/SRC/openSUSE:Factory/pipewire/pipewire.changes 2021-05-23 23:30:43.736706357 +0200 +++ /work/SRC/openSUSE:Factory/.pipewire.new.1898/pipewire.changes 2021-06-05 23:31:53.876476135 +0200 @@ -1,0 +2,30 @@ +Tue Jun 1 07:31:49 UTC 2021 - Antonio Larrosa <alarr...@suse.com> + +- Add patch from upstream to use the independent switch to mute + Lineout or Speaker instead of setting the volume, which on + some soundcards might be shared by Headphone and Lineout or + Headphone and Speaker (fixes boo#1186572): + * 0001-alsa-mixer-only-use-switch-to-mute-Front-in-the-Headphone-path.patch + +------------------------------------------------------------------- +Tue May 25 07:12:32 UTC 2021 - Antonio Larrosa <alarr...@suse.com> + +- Introduce a workaround for systems where %systemd_user_post + didn't enable the user services correctly due to different + reasons . This workaround is only executed once, and only if + it's really needed. In order to execute only once a lock file + is created in /var/lib/pipewire. The lockfile can be removed + when the workaround is removed. + + Everyone who upgraded their TW system between (aprox.) the 14th + of January and the 16th of March and who didn't enable the + services manually is affected by this. It also happens for + everyone who installed a new TW system since (aprox.) the 14th + of January and also for everyone doing a new installation of + SLE15-SP3 / Leap 15.3 from the iso (new installations using + online repositories will work fine once the fix in + systemd-presets-common-SUSE is released). + + Fixes boo#1184852, boo#1183012 and boo#1186561. + +------------------------------------------------------------------- New: ---- 0001-alsa-mixer-only-use-switch-to-mute-Front-in-the-Headphone-path.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ pipewire.spec ++++++ --- /var/tmp/diff_new_pack.eLo8dX/_old 2021-06-05 23:31:54.484477193 +0200 +++ /var/tmp/diff_new_pack.eLo8dX/_new 2021-06-05 23:31:54.484477193 +0200 @@ -53,6 +53,7 @@ Source0: %{name}-%{version}.tar.xz Source1: %{name}-rpmlintrc Source99: baselibs.conf +Patch0: 0001-alsa-mixer-only-use-switch-to-mute-Front-in-the-Headphone-path.patch BuildRequires: doxygen BuildRequires: fdupes @@ -349,6 +350,28 @@ fi %systemd_user_post pipewire.service pipewire.socket pipewire-media-session.service +# If the pipewire-media-session user service is not enabled and the workaround +# for boo#1186561 has never been executed, we need to execute it now +if [ ! -L %{_sysconfdir}/systemd/user/pipewire.service.wants/pipewire-media-session.service \ + -a ! -f %{_localstatedir}/lib/pipewire/pipewire_post_workaround \ + -a -x /usr/bin/systemctl ]; then + for service in pipewire.service pipewire.socket pipewire-media-session.service ; do + /usr/bin/systemctl --global preset "$service" || : + done + + mkdir -p %{_localstatedir}/lib/pipewire + cat << EOF > %{_localstatedir}/lib/pipewire/pipewire_post_workaround +# The existence of this file means that the pipewire user services were +# enabled at least once. Please don't remove this file as that would +# make the services to be enabled again in the next package update. +# +# Check the following bugs for more information: +# https://bugzilla.opensuse.org/show_bug.cgi?id=1184852 +# https://bugzilla.opensuse.org/show_bug.cgi?id=1183012 +# https://bugzilla.opensuse.org/show_bug.cgi?id=1186561 +EOF +fi + %preun %systemd_user_preun pipewire.service pipewire.socket pipewire-media-session.service @@ -360,6 +383,26 @@ %post pulseaudio %systemd_user_post pipewire-pulse.service pipewire-pulse.socket +# If the pipewire-pulse.socket user service is not enabled and the workaround +# for boo#1186561 has never been executed, we need to execute it now +if [ ! -L %{_sysconfdir}/systemd/user/sockets.target.wants/pipewire-pulse.socket \ + -a ! -f %{_localstatedir}/lib/pipewire/pipewire-pulseaudio_post_workaround \ + -a -x /usr/bin/systemctl ]; then + for service in pipewire-pulse.service pipewire-pulse.socket ; do + /usr/bin/systemctl --global preset "$service" || : + done + mkdir -p %{_localstatedir}/lib/pipewire + cat << EOF > %{_localstatedir}/lib/pipewire/pipewire-pulseaudio_post_workaround +# The existence of this file means that the pipewire-pulseaudio user service was +# enabled at least once. Please don't remove this file as that would +# make the services to be enabled again in the next package update. +# +# Check the following bugs for more information: +# https://bugzilla.opensuse.org/show_bug.cgi?id=1184852 +# https://bugzilla.opensuse.org/show_bug.cgi?id=1183012 +# https://bugzilla.opensuse.org/show_bug.cgi?id=1186561 +EOF +fi %preun pulseaudio %systemd_user_preun pipewire-pulse.service pipewire-pulse.socket @@ -399,6 +442,8 @@ %{_datadir}/pipewire/media-session.d/alsa-monitor.conf %{_datadir}/pipewire/media-session.d/bluez-monitor.conf %{_datadir}/pipewire/media-session.d/v4l2-monitor.conf +%ghost %dir %{_localstatedir}/lib/pipewire +%ghost %{_localstatedir}/lib/pipewire/pipewire_post_workaround %files -n %{libpipewire} %license LICENSE COPYING @@ -542,6 +587,7 @@ %{_bindir}/pipewire-pulse %{_userunitdir}/pipewire-pulse.* %{_datadir}/pipewire/media-session.d/with-pulseaudio +%ghost %{_localstatedir}/lib/pipewire/pipewire-pulseaudio_post_workaround %files alsa %dir %{_libdir}/alsa-lib ++++++ 0001-alsa-mixer-only-use-switch-to-mute-Front-in-the-Headphone-path.patch ++++++ >From e375930813f0b8663ec4ceb6d5ea1850fbbe9695 Mon Sep 17 00:00:00 2001 From: Hui Wang <hui.w...@canonical.com> Date: Mon, 31 May 2021 13:08:19 +0200 Subject: [PATCH] alsa-mixer: only use switch to mute Front in the Headphone path According to the alsa-info.txt in the pipewire issues of #747 and #1206, the Front Playback Volume is shared by Headphone and Lineout or Headphone and Speaker, But Headphone, Lineout or Speaker they all have independent Playback Switch, change to only use switch to mute the Lineout or Speaker. This could resolve the issues of #747 and #1206. See #1206 and #747 --- spa/plugins/alsa/mixer/paths/analog-output-headphones-2.conf | 5 ++++- spa/plugins/alsa/mixer/paths/analog-output-headphones.conf | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/spa/plugins/alsa/mixer/paths/analog-output-headphones-2.conf b/spa/plugins/alsa/mixer/paths/analog-output-headphones-2.conf index e98fe2537..bda137d3c 100644 --- a/spa/plugins/alsa/mixer/paths/analog-output-headphones-2.conf +++ b/spa/plugins/alsa/mixer/paths/analog-output-headphones-2.conf @@ -84,9 +84,12 @@ volume = off switch = off volume = off +; On some machines, the Front Volume Control is shared by Headphone and Lineout, +; or Headphone and Speaker, but they have independent Volume Switch. Here only +; use switch to mute Lineout or Speaker. [Element Front] switch = off -volume = off +volume = zero [Element Rear] switch = off diff --git a/spa/plugins/alsa/mixer/paths/analog-output-headphones.conf b/spa/plugins/alsa/mixer/paths/analog-output-headphones.conf index ac4ec659a..3c62c5e67 100644 --- a/spa/plugins/alsa/mixer/paths/analog-output-headphones.conf +++ b/spa/plugins/alsa/mixer/paths/analog-output-headphones.conf @@ -126,9 +126,12 @@ volume = off switch = off volume = off +; On some machines, the Front Volume Control is shared by Headphone and Lineout, +; or Headphone and Speaker, but they have independent Volume Switch. Here only +; use switch to mute Lineout or Speaker. [Element Front] switch = off -volume = off +volume = zero [Element Rear] switch = off -- GitLab