public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [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