All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Opdenacker <michael.opdenacker@rootcommit.com>
To: ross.burton@arm.com
Cc: michael.opdenacker@rootcommit.com,
	openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH] alsa-utils: fix packaging
Date: Sat, 17 Jan 2026 09:46:11 +0000 (UTC)	[thread overview]
Message-ID: <a49f1b74-e995-41a5-8a07-7840e6f4aa6a@rootcommit.com> (raw)
In-Reply-To: <20260116174128.1478960-1-ross.burton@arm.com>

Hi Ross

Thanks for the fix!

On 1/16/26 6:41 PM, Ross Burton via lists.openembedded.org wrote:
> In the previous refactoring of this package[1] I forgot to add provides
> when merging some packages, which meant that installation of alsa-utils
> wouldn't succeed:
>
>    - nothing provides alsa-utils-aplaymidi needed by alsa-utils-1.2.15.1-r0.cortexa57 from oe-repo
>    - nothing provides alsa-utils-aplaymidi2 needed by alsa-utils-1.2.15.1-r0.cortexa57 from oe-repo
>    - nothing provides alsa-utils-arecordmidi needed by alsa-utils-1.2.15.1-r0.cortexa57 from oe-repo
>    - nothing provides alsa-utils-arecordmidi2 needed by alsa-utils-1.2.15.1-r0.cortexa57 from oe-repo
>    - nothing provides alsa-utils-axfer needed by alsa-utils-1.2.15.1-r0.cortexa57 from oe-repo
>
> This is because the auto-splitting generates a package for each of the
> binaries, but there are explicit FILES that take priority which result
> in the binaries being in another package.  However, the dependencies
> still exist. We could filter the package list after the split, but it is
> easier to add RPROVIDES for arecord and a*midi to the relevant packages,
> so that the dependencies are satisfied.
>
> Also axfer is a separate tool, so put that in its own package instead of
> merging with aplay.
>
> Finally, add a PR, as it appears that dynamically-generated packaging
> isn't enough to change the hash, and the wrong packages were being pulled
> from sstate.
>
> Signed-off-by: Ross Burton <ross.burton@arm.com>
> ---
>   meta/recipes-multimedia/alsa/alsa-utils_1.2.15.1.bb | 9 ++++++++-
>   1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/meta/recipes-multimedia/alsa/alsa-utils_1.2.15.1.bb b/meta/recipes-multimedia/alsa/alsa-utils_1.2.15.1.bb
> index 927f94afb6..2e85f936fa 100644
> --- a/meta/recipes-multimedia/alsa/alsa-utils_1.2.15.1.bb
> +++ b/meta/recipes-multimedia/alsa/alsa-utils_1.2.15.1.bb
> @@ -11,6 +11,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
>                       file://alsactl/utils.c;beginline=3;endline=18;md5=96cc06a4cebe5eb7975688ffb0e65642"
>   DEPENDS = "alsa-lib ncurses libsamplerate0 bash"
>   
> +# Only needed as the dynamic packaging was altered, remove on upgrade
> +PR = "r1"
> +
>   # alsa-utils specified in SRC_URI due to alsa-utils-scripts recipe
>   SRC_URI = "https://www.alsa-project.org/files/pub/utils/alsa-utils-${PV}.tar.bz2"
>   SRC_URI[sha256sum] = "5ad79f349e59c30c9a4929ad4995ebee33267473e0e632d7c1a30e2b093d3327"
> @@ -35,7 +38,7 @@ FILES:${PN}-alsabat      = "${sbindir}/alsabat-test.sh"
>   FILES:${PN}-alsactl      = "*/udev/rules.d/90-alsa-restore.rules */*/udev/rules.d/90-alsa-restore.rules ${systemd_unitdir} ${localstatedir}/lib/alsa ${datadir}/alsa/init/"
>   FILES:${PN}-alsatplg     = "${libdir}/alsa-topology"
>   FILES:${PN}-amidi        = "${bindir}/amidi ${bindir}/aplaymidi* ${bindir}/arecordmidi*"
> -FILES:${PN}-aplay        = "${bindir}/aplay ${bindir}/arecord ${bindir}/axfer"
> +FILES:${PN}-aplay        = "${bindir}/aplay ${bindir}/arecord"
>   FILES:${PN}-speaker-test = "${datadir}/sounds/alsa/"
>   
>   SUMMARY:${PN}-aconnect       = "ALSA sequencer connection manager"
> @@ -53,12 +56,16 @@ SUMMARY:${PN}-aplay          = "Play (and record) sound files using ALSA"
>   SUMMARY:${PN}-aseqdump       = "Shows the events received at an ALSA sequencer port"
>   SUMMARY:${PN}-aseqnet        = "Network client/server for ALSA sequencer"
>   SUMMARY:${PN}-aseqsend       = "Send arbitrary messages to ALSA seqencer port"
> +SUMMARY:${PN}-axfer          = "Transfer audio data frames"
>   SUMMARY:${PN}-iecset         = "ALSA utility for setting/showing IEC958 (S/PDIF) status bits"
>   SUMMARY:${PN}-nhlt-dmic-info = "Dumps microphone array information from ACPI NHLT table"
>   SUMMARY:${PN}-speaker-test   = "ALSA surround speaker test utility"
>   
>   RRECOMMENDS:${PN}-alsactl = "alsa-states"
>   
> +RPROVIDES:${PN}-aplay += "${PN}-arecord"
> +RPROVIDES:${PN}-amidi += "${PN}-aplaymidi ${PN}-aplaymidi2 ${PN}-arecordmidi ${PN}-arecordmidi2"
> +
>   do_install:append() {
>   	# If udev is disabled, we told configure to install the rules
>   	# in /unwanted, so we can remove them now. If udev is enabled,

This looks good to me.
Tested-by: Michael Opdenacker

To minimize rework, I'd suggest to merge this change first. And then 
I'll update and send the Alsa 1.2.15.2 and 1.2.15.3 updates.
Cheers
Michael.

-- 
Root Commit
Embedded Linux Training and Consulting
https://rootcommit.com



      parent reply	other threads:[~2026-01-17  9:46 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-16 17:41 [PATCH] alsa-utils: fix packaging Ross Burton
2026-01-16 18:07 ` [OE-core] " Ryan Eatmon
2026-01-17  9:46 ` Michael Opdenacker [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a49f1b74-e995-41a5-8a07-7840e6f4aa6a@rootcommit.com \
    --to=michael.opdenacker@rootcommit.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=ross.burton@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.