Use system versions of packages (recipes) where necessary
This is a recurring problem with cerbero, where we have to use system versions of some packages because of vertical integration issues, like Xorg, wayland, openssl, pulseaudio, but they have their own deps that we use for other plugins, and that happens to work because of good ABI compat between what we build and the system.
But this can break. The latest in this is libmpg123, ever since !1568 (merged)
(gst-plugin-scanner:20618): GStreamer-WARNING **: 12:14:22.227: Failed to load plugin '/builds/gstreamer/cerbero/cb/dist/linux_x86_64/lib64/gstreamer-1.0/libgstpulseaudio.so': /lib64/libsndfile.so.1: undefined symbol: mpg123_info2
https://gitlab.freedesktop.org/gstreamer/cerbero/-/jobs/64032777
$ ldd /lib64/libsndfile.so.1
linux-vdso.so.1 (0x00007fa1bd602000)
libgsm.so.1 => /lib64/libgsm.so.1 (0x00007fa1bd55c000)
libFLAC.so.12 => /lib64/libFLAC.so.12 (0x00007fa1bd4f8000)
libvorbis.so.0 => /lib64/libvorbis.so.0 (0x00007fa1bd4c8000)
libvorbisenc.so.2 => /lib64/libvorbisenc.so.2 (0x00007fa1bd430000)
libopus.so.0 => /lib64/libopus.so.0 (0x00007fa1bd3c9000)
libogg.so.0 => /lib64/libogg.so.0 (0x00007fa1bd3bf000)
libmpg123.so.0 => /lib64/libmpg123.so.0 (0x00007fa1bd363000)
libmp3lame.so.0 => /lib64/libmp3lame.so.0 (0x00007fa1bd2eb000)
libm.so.6 => /lib64/libm.so.6 (0x00007fa1bd205000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa1bd013000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa1bd604000)
In the past we have discouraged the use of Cerbero on Linux because of this, but there is a legitimate use-case for Cerbero: to generate RPMs, DEBs, or just a single tgz that can be extracted to a separate prefix and used.
So I think that when we use the system for a particular dep, we should also pick up its entire deptree from the system.