diff options
author | Peter A. Bigot <pab@pabigot.com> | 2014-11-15 13:53:54 -0600 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-12-31 10:17:31 +0000 |
commit | 0b7e70aafdee68825f3c65bae89bde3e03a20de8 (patch) | |
tree | b9d8e524b4c3fc04dbbf2a549f26fc0bd8ee8e89 /meta/classes | |
parent | fdf7e1829810df75d180c06db615f9771f46d592 (diff) | |
download | openembedded-core-0b7e70aafdee68825f3c65bae89bde3e03a20de8.tar.gz openembedded-core-0b7e70aafdee68825f3c65bae89bde3e03a20de8.tar.bz2 openembedded-core-0b7e70aafdee68825f3c65bae89bde3e03a20de8.zip |
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.
(From OE-Core rev: ec3417ad825c52f5137d38b91d8fcb4637a50f4c)
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/useradd.bbclass | 2 |
1 files changed, 2 insertions, 0 deletions
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 |