* [gentoo-commits] data/gentoo-news:master commit in: 2022-07-29-pipewire-sound-server/
@ 2022-07-29 1:44 Sam James
0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2022-07-29 1:44 UTC (permalink / raw
To: gentoo-commits
commit: 1d217ffd5deca9d20b61acd2a7832272d036a0e0
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 29 01:44:47 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 29 01:44:47 2022 +0000
URL: https://gitweb.gentoo.org/data/gentoo-news.git/commit/?id=1d217ffd
2022-07-29-pipewire-sound-server: add item
Bug: https://bugs.gentoo.org/744622
Bug: https://bugs.gentoo.org/859280
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../2022-07-29-pipewire-sound-server.en.txt | 130 +++++++++++++++++++++
1 file changed, 130 insertions(+)
diff --git a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
new file mode 100644
index 0000000..0cb4a2d
--- /dev/null
+++ b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
@@ -0,0 +1,130 @@
+Title: PipeWire sound server migration
+Author: Sam James <sam@gentoo.org>
+Posted: 2022-07-29
+Revision: 1
+News-Item-Format: 2.0
+Display-If-Installed: media-video/pipewire
+Display-If-Installed: media-sound/pulseaudio
+Display-If-Installed: media-sound/pulseaudio-daemon
+Display-If-Installed: media-libs/libpulse
+
+PipeWire has gained a new USE flag "sound-server" for enabling/disabling its
+sound server capabilities.
+
+This change is needed to avoid PipeWire and PulseAudio conflicting over control
+of audio devices. Before this change, OpenRC users were in some cases
+accidentally migrated to PipeWire which was difficult to override without
+manually editing launcher files.
+
+For non-audio purposes, PipeWire is installed in many configurations as more
+and more software depends on it for e.g. screensharing, sandboxing,
+and window previews, so users will need to act based on their preferred
+setup rather than simply avoiding installing PipeWire, as it is
+increasingly required as a dependency.
+
+Packages needing PulseAudio's APIs will be migrated from the now-meta package
+media-sound/pulseaudio to depending on media-libs/libpulse. The runtime
+PulseAudio server can be provided by either PipeWire (media-video/pipewire)
+or the original PulseAudio (media-sound/pulseaudio-daemon).
+
+The new sound-server USE flag for PipeWire allows easily controlling
+this behavior.
+
+There are several options available:
+
+1. To use PipeWire for sound, users should enable USE=sound-server for PipeWire:
+
+ Place the following entries in /etc/portage/package.use:
+ ```
+ media-video/pipewire sound-server
+ media-sound/pulseaudio -daemon
+ ```
+
+ First, sync:
+ # emerge --sync
+
+ Deselect media-sound/pulseaudio-daemon:
+ # emerge --deselect media-sound/pulseaudio-daemon
+
+ Then perform a world upgrade:
+ # emerge --ask --update --changed-use --deep @world
+
+ Then depclean:
+ # emerge --ask --depclean
+
+ OpenRC users on an XDG-compliant desktop which respects autostart files
+ will not need to take any further action.
+
+ OpenRC users using a minimal desktop which does not respect autostart
+ files will need to run `gentoo-pipewire-launcher &` in e.g.
+ `~/.xprofile`.
+
+ systemd users will also need to run the following commands:
+ $ systemctl --user --now disable pulseaudio.service pulseaudio.socket
+ $ systemctl --user --now enable pipewire.socket pipewire-pulse.socket
+ $ systemctl --user --now disable pipewire-media-session.service
+ $ systemctl --user --force enable wireplumber.service
+
+2. To use PulseAudio's daemon for sound, users should disable USE=sound-server
+ for PipeWire, enable USE=daemon on media-sound/pulseaudio, and add
+ media-sound/pulseaudio-daemon to their world file:
+
+ Place the following entries in /etc/portage/package.use:
+ ```
+ media-video/pipewire -sound-server
+ media-sound/pulseaudio daemon
+ ```
+
+ Add media-sound/pulseaudio-daemon to @world:
+ # emerge --noreplace media-sound/pulseaudio-daemon
+
+ Then perform a world upgrade:
+ # emerge --ask --update --changed-use --deep @world
+
+ Then depclean:
+ # emerge --ask --depclean
+
+ OpenRC users on an XDG-compliant desktop which respects autostart files
+ will not need to take any further action.
+
+ OpenRC users using a minimal desktop which does not respect autostart
+ files should consider adding `gentoo-pipewire-launcher &` in e.g.
+ `~/.xprofile` but it's not strictly required in terms of audio
+ handling. It may be required in future for the non-audio usecases
+ described above.
+
+ systemd users will also need to run the following commands:
+ $ systemctl --user --now enable pulseaudio.service pulseaudio.socket
+ $ systemctl --user --now disable pipewire.socket pipewire-pulse.socket
+
+3. For users without sound on their system, those using JACK without
+ PipeWire, or those using pure ALSA without PipeWire, the following steps
+ are recommended:
+
+ Place the following entries in /etc/portage/package.use:
+ ```
+ media-video/pipewire -sound-server
+ media-sound/pulseaudio -daemon
+ ```
+
+ Then perform a world upgrade:
+ # emerge --ask --update --changed-use --deep @world
+
+ Then depclean:
+ # emerge --ask --depclean
+
+ OpenRC users on an XDG-compliant desktop which respects autostart files
+ will not need to take any further action.
+
+ OpenRC users using a minimal desktop which does not respect autostart
+ files will need to run `gentoo-pipewire-launcher &` in e.g.
+ `~/.xprofile`.
+
+ systemd users will also likely want to run the following commands, again
+ for the purposes of non-audio PipeWire use:
+ $ systemctl --user --now enable pipewire.socket
+ $ systemctl --user --now --force enable wireplumber.service
+
+
+Further resources:
+* https://wiki.gentoo.org/wiki/PipeWire
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] data/gentoo-news:master commit in: 2022-07-29-pipewire-sound-server/
@ 2022-07-31 3:24 Sam James
0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2022-07-31 3:24 UTC (permalink / raw
To: gentoo-commits
commit: fbf0d8c39742d6bcedb75f94b9c94216f57ce888
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 31 03:23:58 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 31 03:23:58 2022 +0000
URL: https://gitweb.gentoo.org/data/gentoo-news.git/commit/?id=fbf0d8c3
2022-07-29-pipewire-sound-server: give advice re pulseaudio-daemon only pkgs
Closes: https://bugs.gentoo.org/862402
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../2022-07-29-pipewire-sound-server.en.txt | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
index 8d81d95..31283c0 100644
--- a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
+++ b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
@@ -60,6 +60,24 @@ There are several options available:
files will need to run `gentoo-pipewire-launcher &` in e.g.
`~/.xprofile`.
+ Users who want to switch to PipeWire providing a PulseAudio daemon
+ may need to `emerge --deselect` packages in their world file which
+ hard-require media-sound/pulseaudio-daemon. There are only a handful
+ of these. A non-exhaustive list:
+ * media-sound/paprefs
+ * media-sound/pasystray
+ * media-sound/pulseaudio-modules-bt (shouldn't be needed anyway)
+ * net-misc/pulseaudio-dlna
+
+ If not using any of those packages anymore, please emerge --deselect
+ them. If still using these, PipeWire as a PulseAudio is not an
+ option at this time.
+
+ (Note that media-libs/libpulse (which PipeWire will be using, don't emerge
+ libpulse manually) provides 'pactl' which can be used as a replacement for
+ e.g. media-sound/pulseaudio-ctl, so personal scripts can be adapted to this
+ if desired.)
+
systemd users will also need to run the following commands:
$ systemctl --user --now disable pulseaudio.service pulseaudio.socket
$ systemctl --user --now enable pipewire.socket pipewire-pulse.socket
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] data/gentoo-news:master commit in: 2022-07-29-pipewire-sound-server/
@ 2022-07-31 3:24 Sam James
0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2022-07-31 3:24 UTC (permalink / raw
To: gentoo-commits
commit: 3d02b63c95ffb0e230fddfea4741c1067b5a7e3c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 31 03:19:19 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 31 03:19:19 2022 +0000
URL: https://gitweb.gentoo.org/data/gentoo-news.git/commit/?id=3d02b63c
2022-07-29-pipewire-sound-server: mention adding PipeWire to world
Closes: https://bugs.gentoo.org/861956
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../2022-07-29-pipewire-sound-server.en.txt | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
index 0cb4a2d..8d81d95 100644
--- a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
+++ b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
@@ -46,8 +46,9 @@ There are several options available:
Deselect media-sound/pulseaudio-daemon:
# emerge --deselect media-sound/pulseaudio-daemon
- Then perform a world upgrade:
- # emerge --ask --update --changed-use --deep @world
+ Then perform a world upgrade with PipeWire on the command line to add
+ it to the world file:
+ # emerge --ask --update --changed-use --deep @world media-video/pipewire
Then depclean:
# emerge --ask --depclean
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] data/gentoo-news:master commit in: 2022-07-29-pipewire-sound-server/
@ 2022-08-03 3:04 Sam James
0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2022-08-03 3:04 UTC (permalink / raw
To: gentoo-commits
commit: 6f193859d252b4d7f8cd1ccf5ae875a6049aeed8
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 3 03:03:59 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug 3 03:03:59 2022 +0000
URL: https://gitweb.gentoo.org/data/gentoo-news.git/commit/?id=6f193859
2022-07-29-pipewire-sound-server: mention systemd --global
Closes: https://bugs.gentoo.org/862867
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../2022-07-29-pipewire-sound-server.en.txt | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
index 31283c0..d41cca1 100644
--- a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
+++ b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
@@ -116,6 +116,14 @@ There are several options available:
$ systemctl --user --now enable pulseaudio.service pulseaudio.socket
$ systemctl --user --now disable pipewire.socket pipewire-pulse.socket
+ Alternatively, systemd users can run the following commands as root to change
+ the default for all users:
+ # systemctl --user --global --enable pulseaudio.service pulseaudio.socket
+ # systemctl --user --global --force enable pipewire.socket pipewire-pulse.socket
+
+ (If taking this option, the services must be started manually as a one-off as
+ a user.)
+
3. For users without sound on their system, those using JACK without
PipeWire, or those using pure ALSA without PipeWire, the following steps
are recommended:
@@ -139,11 +147,18 @@ There are several options available:
files will need to run `gentoo-pipewire-launcher &` in e.g.
`~/.xprofile`.
- systemd users will also likely want to run the following commands, again
+ systemd users will also likely want to run the following commands as a user, again
for the purposes of non-audio PipeWire use:
$ systemctl --user --now enable pipewire.socket
$ systemctl --user --now --force enable wireplumber.service
+ Alternatively, systemd users can run the following commands as root to change
+ the default for all users, again for the purposes of non-audio PipeWire use:
+ # systemctl --user --global --enable pipewire.socket
+ # systemctl --user --global --force enable wireplumber.service
+
+ (If taking this option, the services must be started manually as a one-off as
+ a user.)
Further resources:
* https://wiki.gentoo.org/wiki/PipeWire
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] data/gentoo-news:master commit in: 2022-07-29-pipewire-sound-server/
@ 2022-08-05 10:55 Pacho Ramos
0 siblings, 0 replies; 5+ messages in thread
From: Pacho Ramos @ 2022-08-05 10:55 UTC (permalink / raw
To: gentoo-commits
commit: 48eabb9f21b21b35ec6e71d935e7d724644fb3b7
Author: Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 5 10:54:37 2022 +0000
Commit: Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Fri Aug 5 10:54:37 2022 +0000
URL: https://gitweb.gentoo.org/data/gentoo-news.git/commit/?id=48eabb9f
2022-07-29-pipewire-sound-server: fix typos
Closes: https://bugs.gentoo.org/862867
Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>
.../2022-07-29-pipewire-sound-server.en.txt | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
index d41cca1..81b31f6 100644
--- a/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
+++ b/2022-07-29-pipewire-sound-server/2022-07-29-pipewire-sound-server.en.txt
@@ -83,6 +83,9 @@ There are several options available:
$ systemctl --user --now enable pipewire.socket pipewire-pulse.socket
$ systemctl --user --now disable pipewire-media-session.service
$ systemctl --user --force enable wireplumber.service
+
+ Root user may replace --user with --global to change system default
+ configuration for all of the above commands.
2. To use PulseAudio's daemon for sound, users should disable USE=sound-server
for PipeWire, enable USE=daemon on media-sound/pulseaudio, and add
@@ -118,8 +121,8 @@ There are several options available:
Alternatively, systemd users can run the following commands as root to change
the default for all users:
- # systemctl --user --global --enable pulseaudio.service pulseaudio.socket
- # systemctl --user --global --force enable pipewire.socket pipewire-pulse.socket
+ # systemctl --global enable pulseaudio.service pulseaudio.socket
+ # systemctl --global --force disable pipewire.socket pipewire-pulse.socket
(If taking this option, the services must be started manually as a one-off as
a user.)
@@ -154,8 +157,8 @@ There are several options available:
Alternatively, systemd users can run the following commands as root to change
the default for all users, again for the purposes of non-audio PipeWire use:
- # systemctl --user --global --enable pipewire.socket
- # systemctl --user --global --force enable wireplumber.service
+ # systemctl --global enable pipewire.socket
+ # systemctl --global --force enable wireplumber.service
(If taking this option, the services must be started manually as a one-off as
a user.)
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-08-05 10:55 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-31 3:24 [gentoo-commits] data/gentoo-news:master commit in: 2022-07-29-pipewire-sound-server/ Sam James
-- strict thread matches above, loose matches on Subject: below --
2022-08-05 10:55 Pacho Ramos
2022-08-03 3:04 Sam James
2022-07-31 3:24 Sam James
2022-07-29 1:44 Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox