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

Saul Wold
2013-01-23T04:36:18Z

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?

Sau!

> Cheers,
> Chen Qi
>
>
>
>
>
>