[00:07] <arraybolt3[m]> So, I now know how to turn PipeWire on and off, and how to turn PipeWire pulseaudio on and off. I don't think it's possible to turn of PipeWire's JACK support, but I don't think we need to since JACK and PipeWire JACK can be running at the same time. So that leaves only the last item.
[00:10] <arraybolt3[m]> To start PipeWire: systemctl --user start pipewire
[00:11] <arraybolt3[m]> To stop PipeWire: systemctl --user stop pipewire.socket
[00:11] <arraybolt3[m]> To start PipeWire PulseAudio: systemctl --user start pipewire-pulse
[00:12] <arraybolt3[m]> To stop PipeWire PulseAudio: systemctl --user stop pipewire-pulse.socket (note that this leaves PipeWire itself running)
[00:12] <arraybolt3[m]> Starting and stopping PipeWire also start and stop the JACK part of PipeWire.
[00:12] <arraybolt3[m]> To start PulseAudio (not PipeWire): systemctl --user start pulseaudio
[00:13] <arraybolt3[m]> To stop PulseAudio (not PipeWire): systemctl --user stop pulseaudio.socket
[00:13] <arraybolt3[m]> So that's the progress I've made, I'll report back the procedure for the JACK bridge once I've got that part done.
[00:13] <arraybolt3[m]> OvenWerks: Pinging.
[00:17] <arraybolt3[m]> Just realized that you probably mean "turn on" PipeWire JACK as in, make programs use it by default. That's what you meant by "two libs to switch out". The "pw-jack" command appears to do that automatically, but we probably don't want users having to manually run pw-jack to make their programs JACK'd into PipeWire.
[00:38] <arraybolt3[m]> To enable PipeWire JACK, add these lines to the end of ~/.profile: https://termbin.com/319m
[00:39] <arraybolt3[m]> To disable PipeWire JACK, clear the LD_LIBRARY_PATH variable in ~/.profile.
[00:52] <arraybolt3[m]> (I stole the LD_LIBRARY_PATH trick from the pw-jack script, it also looks like it has further info in it that can be reverse-engineered and put into Studio Controls most likely. Stuff like setting the buffer size.)
[01:39] <arraybolt3[m]> Bah, I'm hung up on the last step. With WirePlumber, you're supposed to be able to edit /usr/share/wireplumber/main.lua.d/50-alsa-config.lua to create a PipeWire-to-JACK bridge, but it keeps making a "PipeWire proxy destroyed" error and idk why (bug?). Supposedly the functionality we're looking for existed when using pipewire-media-session, but when I use that, I can't get PipeWire PulseAudio or PipeWire JACK working at all
[01:39] <arraybolt3[m]> and I'm not getting any errors that appear suspicious.