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

ChenQi
2013-01-23T03:40:24Z

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?

Cheers,
Chen Qi