From: Mark Hatle <mark.hatle@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: Re: Ownership issue in package contents
Date: Tue, 31 Mar 2015 13:23:00 -0500 [thread overview]
Message-ID: <551AE604.6090804@windriver.com> (raw)
In-Reply-To: <87wq1xgk2j.fsf@email.parenteses.org>
On 3/31/15 12:20 PM, Mario Domenech Goulart wrote:
> Hi Ross,
>
> On Tue, 31 Mar 2015 14:50:06 +0100 "Burton, Ross" <ross.burton@intel.com> wrote:
>
>> On 27 March 2015 at 17:31, Mario Domenech Goulart <mario@ossystems.com.br> wrote:
>>
>> Note that, although I run "chown -R foo:foo ${D}${libdir}/foo" in
>> the recipe, ./usr/lib/foo/ in the package is owned by root.
>> However, its content has the right ownership.
>>
>> Looks like a bug in pseudo to me, can you file a bug for that?
>
> Sure. Filed #7554.
I'd suggest you look at meta/classes/package.bbclass "fixup_perms" function.
The ${D}${libdir} (and above) are "corrected" to be 'root:root' by this
function. I don't know why 'foo' would be, but if it's a standard defined
variable -- or if 'directory walking' is enabled it could end up doing this as well.
The control file for this is in meta/files/fs-perms.txt (unless otherwise
defined by a distribution or other configuration file.)
Format of the file is:
# The format of this file
#
#<path> <mode> <uid> <gid> <walk> <fmode> <fuid> <fgid>
#
# or
#
#<path> link <target>
#
# <path>: directory path
# <mode>: mode for directory
# <uid>: uid for directory
# <gid>: gid for directory
# <walk>: recursively walk the directory? true or false
# <fmode>: if walking, new mode for files
# <fuid>: if walking, new uid for files
# <fgid>: if walking, new gid for files
# <target>: turn the directory into a symlink point to target
The default is:
base_prefix 0755 root root false - - -
prefix 0755 root root false - - -
exec_prefix 0755 root root false - - -
base_bindir 0755 root root false - - -
base_sbindir 0755 root root false - - -
base_libdir 0755 root root false - - -
datadir 0755 root root false - - -
sysconfdir 0755 root root false - - -
servicedir 0755 root root false - - -
sharedstatedir 0755 root root false - - -
localstatedir 0755 root root false - - -
infodir 0755 root root false - - -
mandir 0755 root root false - - -
docdir 0755 root root false - - -
bindir 0755 root root false - - -
sbindir 0755 root root false - - -
libexecdir 0755 root root false - - -
libdir 0755 root root false - - -
includedir 0755 root root false - - -
oldincludedir 0755 root root false - - -
The easiest way to debug all of this is to edit meta/classes/package.bbclass,
find the following lines:
# Debug -- list out in-memory table
#for dir in fs_perms_table:
# bb.note("Fixup Perms: %s: %s" % (dir, str(fs_perms_table[dir])))
remove the '#' from the 'for' and following lines, then inspect the table from
the build logs.
Similarly, you can trace the actual fixups, by searching for def fix_perms(path,
mode, uid, gid, dir):, and removing the comment from the two bb.note entries.
This should give you an idea if this code is replacing your value with it's own.
(I give this a VERY low probability that it's a bug in pseudo.)
--Mark
> Best wishes.
> Mario
>
next prev parent reply other threads:[~2015-03-31 18:23 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-27 17:31 Ownership issue in package contents Mario Domenech Goulart
2015-03-27 17:43 ` Otavio Salvador
2015-03-31 13:50 ` Burton, Ross
2015-03-31 17:20 ` Mario Domenech Goulart
2015-03-31 18:23 ` Mark Hatle [this message]
2015-03-31 20:12 ` Burton, Ross
2015-03-31 20:18 ` Otavio Salvador
2015-03-31 20:33 ` Mario Domenech Goulart
2015-03-31 20:51 ` Mark Hatle
2015-03-31 21:01 ` Mario Domenech Goulart
2015-03-31 21:09 ` Mark Hatle
2015-03-31 21:21 ` Mario Domenech Goulart
2015-03-31 21:47 ` Mark Hatle
2015-04-06 12:59 ` Mario Domenech Goulart
2015-04-06 14:53 ` Mark Hatle
2015-04-06 14:57 ` Otavio Salvador
2015-04-06 16:49 ` Mark Hatle
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=551AE604.6090804@windriver.com \
--to=mark.hatle@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.