diff options
| author | Scott Garman <scott.a.garman@intel.com> | 2012-03-22 21:43:41 -0700 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-03-23 12:13:07 +0000 |
| commit | c65d82a88ad8dbd27287e94fb62b98017941fb91 (patch) | |
| tree | e9256c7f64c55eb41a81073643c9c700a058f30c | |
| parent | 74ee8de04b58e6e6924434dad417dd310f63b98d (diff) | |
| download | poky-c65d82a88ad8dbd27287e94fb62b98017941fb91.tar.gz | |
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>
| -rw-r--r-- | meta/classes/package_rpm.bbclass | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index 80b16198d3..e83fc552c9 100644 --- a/meta/classes/package_rpm.bbclass +++ b/meta/classes/package_rpm.bbclass | |||
| @@ -439,7 +439,14 @@ package_install_internal_rpm () { | |||
| 439 | 439 | ||
| 440 | fi | 440 | fi |
| 441 | 441 | ||
| 442 | cat ${target_rootfs}/install/install_solution.manifest > ${target_rootfs}/install/total_solution.manifest | 442 | # If base-passwd or shadow are in the list of packages to install, |
| 443 | # ensure they are installed first to support later packages that | ||
| 444 | # may create custom users/groups (fixes Yocto bug #2127) | ||
| 445 | infile=${target_rootfs}/install/install_solution.manifest | ||
| 446 | outfile=${target_rootfs}/install/total_solution.manifest | ||
| 447 | cat $infile | grep /base-passwd-[0-9] > $outfile || true | ||
| 448 | cat $infile | grep /shadow-[0-9] >> $outfile || true | ||
| 449 | cat $infile | grep -v /shadow-[0-9] | grep -v /base-passwd-[0-9] >> $outfile | ||
| 443 | cat ${target_rootfs}/install/install_multilib_solution.manifest >> ${target_rootfs}/install/total_solution.manifest | 450 | cat ${target_rootfs}/install/install_multilib_solution.manifest >> ${target_rootfs}/install/total_solution.manifest |
| 444 | 451 | ||
| 445 | # Construct install scriptlet wrapper | 452 | # Construct install scriptlet wrapper |
