openembedded/meta-openembedded

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.

kraj commented

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.