Re: [PATCH V8 5/6] volatile-conf-minimal: add recipe

ChenQi
2013-01-23T05:07:30Z

On 01/23/2013 12:20 PM, Saul Wold wrote:
> On 01/22/2013 07:24 PM, ChenQi wrote:
>> On 01/23/2013 06:57 AM, Saul Wold wrote:
>>> On 01/21/2013 10:36 PM, Qi.Chen@windriver.com wrote:
>>>> From: Chen Qi <Qi.Chen@windriver.com>
>>>>
>>>> This recipe provides a config file for core-image-minimal.
>>>> This config file is used for volatile storage handling in case of a
>>>> readonly rootfs.
>>>>
>>>> Also, let core-image-minimal depend on this recipe.
>>>>
>>>> [YOCTO #3406]
>>>>
>>>> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
>>>> ---
>>>> meta/recipes-core/images/core-image-minimal.bb | 3 +++
>>>> .../files/volatiles-readonly-minimal | 8 ++++++++
>>>> .../volatile-conf-minimal_1.0.bb | 15
>>>> +++++++++++++++
>>>> 3 files changed, 26 insertions(+)
>>>> create mode 100644
>>>> meta/recipes-core/readonly-volatile-conf/files/volatiles-readonly-minimal
>>>>
>>>>
>>>> create mode 100644
>>>> meta/recipes-core/readonly-volatile-conf/volatile-conf-minimal_1.0.bb
>>>>
>>>> diff --git a/meta/recipes-core/images/core-image-minimal.bb
>>>> b/meta/recipes-core/images/core-image-minimal.bb
>>>> index 0d2613e..f6baeae 100644
>>>> --- a/meta/recipes-core/images/core-image-minimal.bb
>>>> +++ b/meta/recipes-core/images/core-image-minimal.bb
>>>> @@ -6,6 +6,9 @@ IMAGE_LINGUAS = " "
>>>>
>>>> LICENSE = "MIT"
>>>>
>>>> +RDEPENDS += "volatile-conf-minimal"
>>> This needs to be RDEPENDS_${PN}
>>>
>>>> +IMAGE_INSTALL += "volatile-conf-minimal"
>>>> +
>>> I am still digging into this idea of having a image specific volatile
>>> package, RP is not wild about it either. What's different now from
>>> before is the minimal version cut down from the orignal version? Is
>>> there any reason we can't use a larger volatile conf?
>>>
>>> Sau!
>>>
>> Hi Saul,
>>
>> I thought about this, but didn't dig deep into it because I thought one
>> conf file for one image would be clearer.
>> On a second thought, maybe we could use a config file like below.
>>
>> <pkg1>
>> readonly specific config items for pkg1
>> </pkg1>
>>
>> <pkg2>
>> readonly specific config items for pkg2
>> </pkg2>
>>
>> ....
>> (Let's denote it as the original config file.)
>>
>> In this way, all config items are centred into one place.
>> And the strategy would be like:
>> 1. get a list of pkgs that are to be installed on target
>> L = [pkg1, pkg2, ..., pkgn]
>> 2. original config file -- [select items according to L] --> final
>> config file
>> The selecting procedure is simply something like:
>> for pkg in $pkgs; do cat origin | sed -ne "/<$pkg>/,/<\/$pkg>/ {
>> /<$pkg>/n; /<\/$pkg>/n; p; }" ; done > final
>> The final config file should look like the ones that we use for now
>> so that we can still use populate-volatile.sh to create the dirs and
>> links.
>> 3. Parse the final config file with populate-volatile.sh to create the
>> proper directories and links.
>>
>> The problem is that I don't know how to get the pkg list.
>> Could somebody help me?
>>
>> What do you think about this strategy?
>>
> Hmm, once you put it this way, another thought came to mind we could
> create a volatile class similar to update-rc.d or useradd where we
> specify the a VOLATILE_PKGS, VOLATILE_DIR, VOLATILE_LINK in the
> appropriate recipes directly and then inherit the volatile class.
>
> Thoughts?
>

Good idea! It's cleaner and more manageable.
I'll investigate this idea more and try it out :)

Thanks,
Chen Qi

> Sau!
>
>> Cheers,
>> Chen Qi
>>
>>
>>
>>
>>
>>
>
>