+ CC Quirin
Hi, good catch, but please also add a fixes tag.
>
> Signed-off-by: Rakesh Kumar <kumar....@siemens.com>
> ---
> meta/classes-recipe/initrd-dracut.bbclass | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/meta/classes-recipe/initrd-dracut.bbclass b/meta/classes-recipe/initrd-dracut.bbclass
> index bb4b50b7..542b1fbe 100644
> --- a/meta/classes-recipe/initrd-dracut.bbclass
> +++ b/meta/classes-recipe/initrd-dracut.bbclass
> @@ -48,9 +48,9 @@ def extend_dracut_cmdline(d):
> if config_path:
> cmdline.append(f"--conf {config_path}")
> if extra_drivers:
> - cmdline.append(f"--add-drivers {extra_drivers}")
> + cmdline.append(f'--add-drivers "{extra_drivers}"')
Nit: Wouldn't it be better to use single quotes around {extra_drivers}
to ensure shell variables are not expanded within the quote?
Felix
> if extra_modules:
> - cmdline.append(f"--add {extra_modules}")
> + cmdline.append(f'--add "{extra_modules}"')
> return ' '.join(cmdline)
>
> ROOTFS_INITRAMFS_GENERATOR_CMDLINE:append = " ${@ extend_dracut_cmdline(d)}"
> --
> 2.39.5
>
> --
> You received this message because you are subscribed to the Google Groups "isar-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/isar-users/20260630114346.14229-1-kumar.rakesh%40siemens.com.
Indeed. We should better use a here document to avoid these surprises.
But this is better cleaned up after the rootless switch, as we then
have wrappers.
>
> BitBake substitutes our --add "..." into a string that's already wrapped in single quotes. If we use single quotes for the module list, those inner ' characters close the outer single-quoted block early, the quoting collapses, and the multi-module list is no longer passed as one argument to --add - hence the failure.
Yep.
>
> Double quotes seems correct choice here: they pass literally through the outer single-quoted context and are then interpreted by the inner `sh -ec`, which groups mod1 mod2 into a single --add argument as intended.
Hidden interface, but we have to clean this up after rootless.
For now the current patch is ok.
Reviewed-by: Felix Moessbauer <felix.mo...@siemens.com>
Felix