[OE-core] Directory permissions and ownership -- RFC
Mark Hatle
mark.hatle at windriver.com
Tue Jun 21 21:41:08 UTC 2011
On 6/21/11 4:32 PM, Koen Kooi wrote:
>
> Op 21 jun 2011, om 21:12 heeft Mark Hatle het volgende geschreven:
>
>> On 6/21/11 1:57 PM, Phil Blundell wrote:
>>> On Tue, 2011-06-21 at 11:43 -0500, Mark Hatle wrote:
>>>> Adjust the umask to 022. This resolves the problem of dynamically generated
>>>> directories (mkdir -p) and specific files (touch foo) having odd permissions.
>>>>
>>>> http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=mhatle/perms&id=d8470b6a8efdbba04cef5d4dc1ce12720fe83621
>>>
>>> Are you confident that this isn't going to break anything like
>>> group-shared DL_DIRs? I'm not entirely thrilled about forcing the umask
>>> to 022 for everything that bitbake does, although I can see that making
>>> it be so for particular tasks like do_install() might have some merit.
>>> Even in the latter case, though, I wonder whether we should just be
>>> paying more attention to recipe hygiene and using "install -m ..." with
>>> the permissions that we actually want.
>>
>> This is why I bring this up.. I'm a bit concerned that doing it generally will
>> have unintended consequences. So far I am not aware of any. Moving it to a
>> different place in the process may be better. The only issue I've found so far
>> is that just coding int into "do_install" really isn't an option. Between the
>> custom do_install components, various classes, etc.. it's difficult in the
>> current infrastructure to find a centralized location to set the value.
>
> Would something like this work?
>
> myclass.bbclass:
>
> addtask mytask before do_package after do_install
>
> mytask() {
> do stuff
> }
Unfortunately it won't work as the umask would only be set in the "mytask" -
task. It needs to be set in all of the do_install and do_package tasks.
The only way to do this (from what Chris L told me) is to setup an event handler
and set the umask when we get into specific events. I'm not sure if I could
correctly capture do_install and later.. plus if someone did what you are
mentioning, then it would no longer be in the umask 022.
> DISTRO.conf:
>
> # do stuff
> INHERIT += "myclass"
>
> regards,
>
> Koen
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
More information about the Openembedded-core
mailing list