Last active
October 22, 2025 12:06
-
-
Save immolo/7eac00ca8c75909311e52f5814097312 to your computer and use it in GitHub Desktop.
NEWS item draft for enabling pipewire in desktop profiles
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Title: Desktop Profile to enable PipeWire support | |
| Author: Ian Jordan <immoloism@gmail.com> | |
| Posted: 2025-09-06 | |
| Revision: 4 | |
| News-Item-Format: 2.0 | |
| Display-If-Profile: default/linux/alpha/23.0/desktop | |
| Display-If-Profile: default/linux/alpha/23.0/desktop/* | |
| Display-If-Profile: default/linux/alpha/23.0/split-usr/desktop | |
| Display-If-Profile: default/linux/alpha/23.0/split-usr/desktop/* | |
| Display-If-Profile: default/linux/amd64/23.0/desktop | |
| Display-If-Profile: default/linux/amd64/23.0/desktop/* | |
| Display-If-Profile: default/linux/amd64/23.0/split-usr/desktop | |
| Display-If-Profile: default/linux/amd64/23.0/split-usr/desktop/* | |
| Display-If-Profile: default/linux/arm/23.0/armv7a_hf/desktop | |
| Display-If-Profile: default/linux/arm/23.0/armv7a_hf/desktop/* | |
| Display-If-Profile: default/linux/arm/23.0/armv7a_sf/desktop | |
| Display-If-Profile: default/linux/arm/23.0/armv7a_sf/desktop/* | |
| Display-If-Profile: default/linux/arm/23.0/desktop | |
| Display-If-Profile: default/linux/arm/23.0/desktop/* | |
| Display-If-Profile: default/linux/arm/23.0/split-usr/armv7a_hf/desktop | |
| Display-If-Profile: default/linux/arm/23.0/split-usr/armv7a_hf/desktop/* | |
| Display-If-Profile: default/linux/arm/23.0/split-usr/desktop | |
| Display-If-Profile: default/linux/arm/23.0/split-usr/desktop/* | |
| Display-If-Profile: default/linux/arm64/23.0/desktop | |
| Display-If-Profile: default/linux/arm64/23.0/desktop/* | |
| Display-If-Profile: default/linux/arm64/23.0/split-usr/desktop | |
| Display-If-Profile: default/linux/arm64/23.0/split-usr/desktop/* | |
| Display-If-Profile: default/linux/hppa/23.0/hppa1.1/desktop | |
| Display-If-Profile: default/linux/hppa/23.0/hppa1.1/desktop/* | |
| Display-If-Profile: default/linux/hppa/23.0/hppa1.1/split-usr/desktop | |
| Display-If-Profile: default/linux/hppa/23.0/hppa2.0/desktop | |
| Display-If-Profile: default/linux/hppa/23.0/hppa2.0/desktop/* | |
| Display-If-Profile: default/linux/hppa/23.0/hppa2.0/split-usr/desktop | |
| Display-If-Profile: default/linux/loong/23.0/la64v100/lp64d/desktop | |
| Display-If-Profile: default/linux/loong/23.0/la64v100/lp64d/desktop/* | |
| Display-If-Profile: default/linux/loong/23.0/la64v100/split-usr/lp64d/desktop | |
| Display-If-Profile: default/linux/loong/23.0/la64v100/split-usr/lp64d/desktop/* | |
| Display-If-Profile: default/linux/ppc/23.0/desktop | |
| Display-If-Profile: default/linux/ppc/23.0/desktop/* | |
| Display-If-Profile: default/linux/ppc/23.0/split-usr/desktop | |
| Display-If-Profile: default/linux/ppc/23.0/split-usr/desktop/* | |
| Display-If-Profile: default/linux/ppc/23.0/time64/desktop | |
| Display-If-Profile: default/linux/ppc/23.0/time64/desktop/* | |
| Display-If-Profile: default/linux/ppc/23.0/time64/split-usr/desktop | |
| Display-If-Profile: default/linux/ppc/23.0/time64/split-usr/desktop/* | |
| Display-If-Profile: default/linux/ppc64/23.0/desktop | |
| Display-If-Profile: default/linux/ppc64/23.0/desktop/* | |
| Display-If-Profile: default/linux/ppc64/23.0/split-usr/desktop | |
| Display-If-Profile: default/linux/ppc64/23.0/split-usr/desktop/* | |
| Display-If-Profile: default/linux/ppc64le/23.0/desktop | |
| Display-If-Profile: default/linux/ppc64le/23.0/desktop/* | |
| Display-If-Profile: default/linux/ppc64le/23.0/split-usr/desktop | |
| Display-If-Profile: default/linux/ppc64le/23.0/split-usr/desktop/* | |
| Display-If-Profile: default/linux/riscv/23.0/rv64/lp64d/desktop | |
| Display-If-Profile: default/linux/riscv/23.0/rv64/lp64d/desktop/* | |
| Display-If-Profile: default/linux/riscv/23.0/rv64/lp64/desktop | |
| Display-If-Profile: default/linux/riscv/23.0/rv64/lp64/desktop/* | |
| Display-If-Profile: default/linux/riscv/23.0/rv64/split-usr/lp64d/desktop | |
| Display-If-Profile: default/linux/riscv/23.0/rv64/split-usr/lp64d/desktop/* | |
| Display-If-Profile: default/linux/sparc/23.0/64ul/desktop | |
| Display-If-Profile: default/linux/sparc/23.0/desktop | |
| Display-If-Profile: default/linux/sparc/23.0/split-usr/64ul/desktop | |
| Display-If-Profile: default/linux/sparc/23.0/split-usr/desktop | |
| Display-If-Profile: default/linux/x86/23.0/i686/desktop | |
| Display-If-Profile: default/linux/x86/23.0/i686/desktop/* | |
| Display-If-Profile: default/linux/x86/23.0/i686/split-usr/desktop | |
| Display-If-Profile: default/linux/x86/23.0/i686/split-usr/desktop/* | |
| Display-If-Profile: default/linux/x86/23.0/i686/time64/desktop | |
| Display-If-Profile: default/linux/x86/23.0/i686/time64/desktop/* | |
| Display-If-Profile: default/linux/x86/23.0/i686/time64/split-usr/desktop | |
| Display-If-Profile: default/linux/x86/23.0/i686/time64/split-usr/desktop/* | |
| Reasons | |
| ======= | |
| Gentoo has had a longstanding complaint that desktop profiles do not | |
| enable a suitable working audio setting, which causes confusion for | |
| new users. An example of when this is a user can end up compiling | |
| Firefox without audio support, meaning the user will have to add the | |
| USE flags and then compile Firefox a second time. This not only wastes | |
| time for the user, but also increases support workload by the volunteers | |
| that provide it. | |
| This change will make PipeWire the default sound server for all Gentoo desktop | |
| profiles which support it, rather than just Plasma profiles as was the | |
| previous norm[1]. PipeWire has been widely adopted by Linux as a whole due to | |
| its feature to work with older standards such as PulseAudio, and means | |
| Gentoo will be less likely to need users to make any follow-up changes to | |
| their system related to audio. | |
| Changes | |
| ======= | |
| New global USE flags enabled: pulseaudio | |
| Enables PulseAudio support for packages as a fallback when native PipeWire isn't | |
| available. | |
| New global USE flags enabled: pipewire | |
| New package.use default: media-video/pipewire[sound-server] | |
| These settings will enable PipeWire by default where available and also tell PipeWire | |
| to act as our PulseAudio server where there is no native PipeWire support. | |
| New global USE flags enabled: screencast | |
| In Wayland sessions, the video functionality of PipeWire is not only used for | |
| screen sharing but also to take screenshots and recordings or simply to cast | |
| window content onto task managers' window previews. As this is basically a free | |
| and beneficial addition as it provides things like screenshoting and webcam | |
| access under Wayland. | |
| Alpha and HPPA | |
| =============== | |
| Alpha and HPPA currently do not have PipeWire support enabled so only PulseAudio is enabled. | |
| These can be requested by users at a later date after confirming they work with the respected | |
| projects. | |
| Users not Wishing to Change | |
| =========================== | |
| For users not wanting to change from the their current desktop profile setup, | |
| then all that is required is to set USE="-pipewire -pulseaudio -screencast" in | |
| their make.conf file. | |
| User Action Required | |
| ==================== | |
| In order to enact all changes: | |
| emerge -1avUD @world | |
| Afterwards all that should be required is a reboot, however in the unlikely | |
| event of issues then check out how to configure PipeWire for your purposes. [1][2] | |
| In order to keep a previously configured PulseAudio only system: | |
| Set USE="-pipewire -screencast" in /etc/portage/make.conf | |
| For an ALSA only system: | |
| Set USE="-pipewire -pulseaudio -screencast" in /etc/portage/make.conf | |
| [1] https://www.gentoo.org/support/news-items/2022-07-29-pipewire-sound-server. | |
| html | |
| [2] https://wiki.gentoo.org/wiki/PipeWire |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment