[oe-commits] Scott Garman : package_rpm.bbclass: ensure base-passwd and shadow get installed first

git at git.openembedded.org git at git.openembedded.org
Wed May 30 16:59:33 UTC 2012


Module: openembedded-core.git
Branch: 2011-1
Commit: f35902844c5c1de06c9a1b2111abf0d8b5687a9b
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=f35902844c5c1de06c9a1b2111abf0d8b5687a9b

Author: Scott Garman <scott.a.garman at intel.com>
Date:   Thu Mar 22 21:43:41 2012 -0700

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 at intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
Signed-off-by: Joshua Lock <josh at linux.intel.com>

---

 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 54d6c61..b511afd 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -379,7 +379,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





More information about the Openembedded-commits mailing list