anyc / steam-overlay

Gentoo overlay for Valve's Steam client and Steam-based games
GNU General Public License v2.0
202 stars 44 forks source link

Dependency insanity #351

Closed Hypoon closed 8 months ago

Hypoon commented 8 months ago

steam-client-meta-0-r20231231 has RDEPEND="desktop-portal? ( sys-apps/xdg-desktop-portal )", with this message:

An xdg-desktop-portal backend is needed for file pickers and other desktop components to work, e.g. when adding a non-Steam game or a new library folder.

Additionally, xdg-desktop-portal-1.18.2 has DEPEND=">=media-video/pipewire-0.3:="

Does this mean that if I want file-pickers to work in Steam, I have to install PipeWire?

chewi commented 8 months ago

I hadn't realised that but yes. FWIW, I do use PipeWire anyway, even on small ARM boards, and it's fine. I imagine pure ALSA can't be used to pass audio securely in the manner required by these portals. You might be able to get away without the file picker though.

Hypoon commented 8 months ago

PipeWire interferes with the pro-audio software I use on this same machine, but let's sit that aside for a second. If we need PipeWire for Steam now, do we still need Pulseaudio? The text in the ebuild implies that the only supported configuration is to use both PipeWire and Pulseaudio. If that's the case, someone should write some documentation on how to get Steam to use PipeWire and Pulseaudio in a sane way.

chewi commented 8 months ago

PipeWire is a drop-in replacement for PulseAudio and has basically obsoleted it. You can't use both at the same time. media-sound/pulseaudio may get installed but only as a meta package that pulls in media-libs/libpulse, the client library.

Although xdg-desktop-portal links against PipeWire, you might get away with not actually using it. Try it and see.

PipeWire has lower latency than PulseAudio, and I gather you can make it lower still in conjunction with JACK. This may not work out of the box, but there are some guides around.