classes/package_rpm: avoid bash being pulled in unnecessarily
PATCH 1/1 classes/package_rpm: avoid bash being pulled in unnecessarily
The initial installation step for base-passwd, base-files and shadow will pull in bash if any of these packages depend on /bin/sh and a bash package has been built, which is undesirable if you are using busybox; so force the early installation of one or the other depending on which is going to be installed in the second step.
Note: this fix is not needed for 1.4 (dylan) and newer, since there we use smart to construct the root filesystem without this initial step.
--- meta/classes/package_rpm.bbclass | 3 +++ 1 file changed, 3 insertions(+)
meta/classes/package_rpm.bbclass +3 -0
@@ -543,6 +543,9 @@ EOF grep /base-passwd-[0-9] ${target_rootfs}/install/total_solution.manifest >> ${target_rootfs}/install/initial_install.manifest || true grep /base-files-[0-9] ${target_rootfs}/install/total_solution.manifest >> ${target_rootfs}/install/initial_install.manifest || true grep /shadow-[0-9] ${target_rootfs}/install/total_solution.manifest >> ${target_rootfs}/install/initial_install.manifest || true + # Ensure we get the right shell + grep /bash-[0-9] ${target_rootfs}/install/total_solution.manifest >> ${target_rootfs}/install/initial_install.manifest || true + grep /busybox-[0-9] ${target_rootfs}/install/total_solution.manifest >> ${target_rootfs}/install/initial_install.manifest || true if [ -s ${target_rootfs}/install/initial_install.manifest ]; then echo "# Initial Install manifest padding..." >> ${target_rootfs}/install/initial_install.manifest
Signature · 1 line
1.8.1.2
Burton, Ross
AppliedQuoted 8 lines · Paul Eggleton
The initial installation step for base-passwd, base-files and shadow will pull in bash if any of these packages depend on
/bin/shand a bash package has been built, which is undesirable if you are using busybox; so force the early installation of one or the other depending on which is going to be installed in the second step.Note: this fix is not needed for 1.4 (dylan) and newer, since there we use smart to construct the root filesystem without this initial step.
Merged to danny-next.
Ross