Skip to content

community/pipewire: fix launcher to only start installed components

Clayton Craft requested to merge craftyguy/aports:pipewire-launcher into master

Alpine is using pipewire.conf to start components, but this is apparently not supported upstream. And it leads to strange issues when the component doesn't actually exist: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1527)

The launcher will now run pipewire-media-session after starting pipewire, and only start pipewire-pulse if the config exists for it.. rather than use pipewire to spawn child processes (which isn't supported upstream...).

This fixes the following two issues:

  • An issue where pipewire starts a defunct process when trying to start pipewire-media-session if that binary doesn't exist, which in turn causes pipewire to ignore signals to stop on shutdown (makes shutdown take 90 seconds longer)

  • An issue where pipewire is started with -c pipewire-pulse.conf even if that config doesn't exist, and is lead suspect in a number of audio-related issues we are experiencing in pmOS

Merge request reports