From ec3417ad825c52f5137d38b91d8fcb4637a50f4c Mon Sep 17 00:00:00 2001 From: "Peter A. Bigot" Date: Sat, 15 Nov 2014 13:53:54 -0600 Subject: useradd.bbclass: set PSEUDO_PASSWD consistent with root directory When installing into a sysroot this class examines $D/etc/passwd for content, then invokes useradd to make changes. Under pseudo useradd attempts to look up user information in directories specified by $PSEUDO_PASSWD. For opkg multilib installs $D is not always the same as $IMAGE_ROOT, and the user might already be in the IMAGE_ROOT files, causing a failure during rootfs population. Fix this by ensuring the files pseudo looks at when doing useradd stuff are the same ones that useradd.bbclass will be manipulating. Signed-off-by: Peter A. Bigot --- meta/classes/useradd.bbclass | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/classes/useradd.bbclass b/meta/classes/useradd.bbclass index 3b70e80b2f..0b9a843b24 100644 --- a/meta/classes/useradd.bbclass +++ b/meta/classes/useradd.bbclass @@ -24,6 +24,8 @@ if test "x$D" != "x"; then # Installing into a sysroot SYSROOT="$D" OPT="--root $D" + # user/group lookups should match useradd/groupadd --root + export PSEUDO_PASSWD="$SYSROOT:${STAGING_DIR_NATIVE}" fi # If we're not doing a special SSTATE/SYSROOT install -- cgit 1.2.3-korg