Hi Matthias, Le lun. 26 sept. 2022 à 12:09, Matthias Heinz <m...@familie-heinz.name> a écrit : > > I'm certain now that this is a race-condition between wireplumber and > pipewire-pulse. Even though wireplumber should be started before pipewire- > pulse the Type= to start the service is just "simple", which means wireplumber > might be started before, but it is not taken into account that wireplumber > might take longer to set up all the connections and therefore the pipewire- > pulse service doesn't wait for it. > > > The proper solution would be to add sd_notify[1] to wireplumber and send a > signal to systemd when it is set up correctly and have the wireplumber service > wait for that signal (Type=notify) >
After= and Wants= in pipewire-pulse.service have been added only to mitigated this race condition [1]. This seemed to do the trick when aliases were in place. But fun fact (or not!), without aliases it seems your pipewire-pulse.service is now faster than wireplumber.service. Make wireplumber sending a signal when it is ready seems the proper to way to follow. Thanks for your suggestion! These changes should be done directly in wireplumber/pipewire, I will report it to upstream. Dylan [1] https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/970