On 04/21/2011 06:11 AM, Marko Saukko wrote:
On 04/21/2011 01:16 PM, Luis Araujo wrote:
On 04/21/2011 02:16 AM, Marko Saukko wrote:

OBS doesn't provide means to apply a separate patch for a specific
platform such as N900 only. Only thing you can do is to make
conditions with %ifarch, however in this case this should not be done
because this patch might not work on other ARM based devices well, right?
Yes, that is my main concern, it might not work fine with other armv7l
devices, though we are seriously considering this solution for Meego
Core 1.2 if we don't have time to get independent style packages.


I can think of two separate things for this, first is to create
separate VKB style package for N900. Note: With separate package you
would need also to add this package to "Nokia N900 Support" pattern to
get it to the N900 images. Also it might conflict with the existing
packages.
How exactly do we go adding this package to that pattern?

Thanks for the detailed explanation Marko, .... now to clear up a few doubts ...

Adding package to the group is quite easy. You need to submit patch to package-groups git tree and to "nokia-n900-support" pattern.

https://meego.gitorious.org/meego-os-base/package-groups/blobs/master/patterns/meego-nokia-n900-support.xml

However, it is not so simple if the packages conflict between the default style and n900 style. Lets assume for this example that we have vkb-style-default and vkb-style-n900 packages. By default the vkb-style-default is installed in package group X or by dependency of some package in package group Y, now when mic sees that it puts the package vkb-style-default to the installed packages list. After it gets to the nokia-n900-support group it sees the vkb-style-n900 package which is also put to the installation list which now causes conflict with the packages and image creation fails.

When you say "conflict with the packages", you mean a file collision problem? ...

The thing is, the meegotouch themes kind of work in a incremental way, if it finds a theme other than the default style, it will use that one; we can actually have vkb-style-default and vkb-style-n900 installed in the same system without any problem, both style files would be installed in different locations, in fact, this would probably be the right way to do it.

If vkb package would require vkb-style package for example and there would be vkb-style-default and vkb-style-n900 package that both provide the vkb-style the image creation could not decide if neither one of these are implicitly defined to be installed.
Right, as I stated above, we could have both style packages installed in the same system.


What I mean with this if we would have vkb-style-n900 and vkb-style-default packages in the MeeGo core repository we would also need to define which style to use in every image configuration not only N900, which requires change to multiple package groups instead of the n900 one only. So you might need to change "meego-moorestown-support", "meego-oaktrail-support" etc groups as well so that they would prefer the default.

So if I get this right, could we just add vkb-default-style to the MeeGo core repository, and if we need to add any custom style, just add that package to the specific pattern? .... In this case vkb-style-n900 will be installed along the vkb-style-default package in the N900 image, and the rest of the images can just keep using vkb-style-default?

By the way, we could also keep the default CSS style file in the VKB package, so all platforms will get the default style, and we just overwrite this style with the different pattern style packages when needed ... would this be simpler?



And second is using the boardname functionality. With boardname you
can know what device this is and you could configure the theme based
on that information.

[root@localhost ~]# cat /etc/boardname
arm_nokia_rx_51_board_0020
[root@localhost ~]#

For the second one the question is that can you change the theme based
on the boardname value?

I have considered this option too, though this would be a runtime
configuration right?

Yes, this would require pretty much run time configuration. In theory it is possible to do the decision during package installation time as well, however the boardname isn't set during the image creation but only after the first boot so this would not work during package installation time at the moment at least.

Regards,
Marko

_______________________________________________
MeeGo-packaging mailing list
[email protected]
http://lists.meego.com/listinfo/meego-packaging

Reply via email to