package_rpm.bbclass: ensure base-passwd and shadow get installed first

When generating images, we need to make sure that base-passwd and
shadow get installed before other packages, which might need to create
custom user accounts.

Thanks to Richard Purdie for the initial version of this fix.

This fixes [YOCTO #2127]

(From OE-Core rev: 3d2d3cb379608301b17ce57787d324c2f06bf4f9)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Scott Garman 2012-03-22 21:43:41 -07:00 committed by Richard Purdie
parent 74ee8de04b
commit c65d82a88a
1 changed files with 8 additions and 1 deletions

View File

@ -439,7 +439,14 @@ package_install_internal_rpm () {
fi
cat ${target_rootfs}/install/install_solution.manifest > ${target_rootfs}/install/total_solution.manifest
# If base-passwd or shadow are in the list of packages to install,
# ensure they are installed first to support later packages that
# may create custom users/groups (fixes Yocto bug #2127)
infile=${target_rootfs}/install/install_solution.manifest
outfile=${target_rootfs}/install/total_solution.manifest
cat $infile | grep /base-passwd-[0-9] > $outfile || true
cat $infile | grep /shadow-[0-9] >> $outfile || true
cat $infile | grep -v /shadow-[0-9] | grep -v /base-passwd-[0-9] >> $outfile
cat ${target_rootfs}/install/install_multilib_solution.manifest >> ${target_rootfs}/install/total_solution.manifest
# Construct install scriptlet wrapper