pipewire-alsa missing symbolic links
Opened this issue · 2 comments
It's quite possible I am doing something wrong or missing something here but when building an image with IMAGE_INSTALL += "pipewire pipewire-alsa" the configuration files (50-pipewire.conf and 99-pipewire-default.conf) are installed to /usr/share/alsa.conf.d/ but my understanding is that they need to be symbolically linked from /etc/alsa/conf.d to be enabled.
you also need to add pipewire-alsa-card-profile
to IMAGE_INSTALL
I added pipewire-alsa-card-profile to my custom image but to no success. Is the expectation that I should be seeing the symlinks added to /etc/alsa/conf.d/? I added pipewire-alsa-card-profile, but I still don't see the pipewire device in the "aplay -lL" output or the symlinks in /etc/alsa/conf.d/ linking to 50-pipewire.conf/99-pipewire-default.conf in /usr/share/alsa.conf.d/.
I also noticed that the PACKAGECONFIG entry "pipewire-alsa" was not being set for the main pipewire recipe. Do you know how or what sets this? I was able to manually add this with a .bbappend but it also did not seem to have an effect.
Doing some more of my own due diligence I noticed that in the alsa-plugins recipe there is the following snippet:
do_install:append() {
rm -f ${D}${libdir}/alsa-lib/*.la
if [ "${@bb.utils.contains('PACKAGECONFIG', 'pulseaudio', 'yes', 'no', d)}" = "yes" ]; then
# We use the example as is. Upstream installs the file under
# /etc, but we move it under /usr/share and add a symlink under
# /etc to be consistent with other installed configuration
# files.
mv ${D}${sysconfdir}/alsa/conf.d/99-pulseaudio-default.conf.example ${D}${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf
ln -s ${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf ${D}${sysconfdir}/alsa/conf.d/99-pulseaudio-default.conf
fi
}
I was expecting to see something like this somewhere in the pipewire recipe or related files doing the symlinking but I wasn't able to find anything.
Thanks for your help.