On Fri, Feb 27, 2026 at 2:11 AM Sam James <[email protected]> wrote:
> Roman Žilka <[email protected]> writes:
> > in bugs.gentoo.org/970029 I'm proposing making "pipewire" a global USE
> > flag. It's found in multiple packages commonly present in desktop
> > installations (incl. qtmultimedia, gnome-shell and libsdl[23]) and
> > constitutes a well-defined piece of functionality.
>
> You haven't outlined what that functionality is.

The functionality is PipeWire, the audio (and video - didn't know
that) processing daemon. That is the single, well-defined, isolated
piece of functionality. The initial paragraphs of
https://wiki.gentoo.org/wiki/PipeWire sum it up in greater detail.

> > Pulseaudio, which
> > serves a similar purpose, already has a global flag and making
> > "pipewire" global as well would put it on equal footing. Moreover, the
> > flag's position in use.desc will put the the option to get rid of the
> > obnoxious daemon and its ecosystem on full display for those who see
> > no point in pipewire (incl. myself). It's often on by default *sigh*.
>
> I don't think this rant is appropriate (or useful) for the discussion.

This is actually the primary reason for this proposal. I didn't open
it just because the flag represents a well-defined function, but
because I think it'll be useful for a lot of people. PA/PW are
omnipresent for some reason, but unnecessary for a majority of audio
use cases (having audio output and input, mixing of multiple sources,
volume control, per-app volume control, output to any physical output,
...) and, of course, video use cases (very few people screencast
outside of videoconferencing, which doesn't need PW). The USE flag
will give people a visible, global off-switch for it. Those who want
PW, of course, will receive a global on-switch for the desired
function.

> Which of these packages in their USE is actually referring to PipeWire's
> sound API (where it is a replacement for PulseAudio in that sense, but
> upstream generally say you should use the pulse API), and where is it
> actually screencasting (which should be USE=screencast), or something else?

I don't know that. For a list of packages this long, I'm afraid I
don't have the time to find out. While I understand it'd be ideal to
have the flag split up into two if PW is used for two different
purposes, it'll still be a step up just to have a global flag for all
things PW. That is particularly true if you agree that few people
actually need PW - any part of it.

> 1) Defining a global USE flag involves giving a definition/description of 
> that flag
> for use.desc. What description do you propose?

"PipeWire, the sound and video processing daemon". Becuase I strongly
oppose spamming use.desc with the likes of "Support for ...", "Enable
...", "Enable support for ...", "Add support for ...".

By the way, there are these in use.desc now:
pulseaudio - Add sound server support via media-libs/libpulse (may be
PulseAudio or PipeWire)
screencast - Enable support for remote desktop and screen cast using PipeWire

I didn't investigate why the listed packages had USE=pipewire while
these existed, but it's something to consider. Checked
media-libs/libpulse briefly: its homepage is
www.freedesktop.org/wiki/Software/PulseAudio, but I can't find a
single mention of PW there.

If the local flags "pipewire" don't get a global flag, but are
transformed into "pulseaudio" or "screencast" instead, I'll be happy,
too.

> 2) Are we sure that USE=pipewire does the same thing for all of these
> packages? That's a requirement for it being a global USE flag. If it
> does not currently do so, we either need to fix some of these uses, come
> up with a generic description s.t. it's still useful as a global USE, or
> abandon the global USE effort for this.

Whatever happens, please make sure that PW doesn't get pulled into my
system unless I explicitly enable it. Because I don't need it and,
arguably, most people don't. In fact, if the default state of the
individual local "pipewire" flags were off, I would never have made
this proposal in the first place. It seems to me that the only package
that's so closely tied to PW that it might make sense to have it on by
default there is gui-apps/wf-recorder.

> 3) How many such packages are left after checking these where they may
> indeed be USE=screencast candidates instead? Is it above the threshold
> for a global USE flag?

Again, if "pipewire" doesn't make it into use.desc, please turn it off
by default (except for things like wf-recorder).

Cheers,
Roman

Reply via email to