There has been some confusion on the N900 Community Edition work in relation to the MeeGo project. This page helps to answer some of the questions that occasionally does pop up in order to clear the air.
The Community Edition (CE) is an 'overlay' constructed above the current core MeeGo 1.2. The Community Edition project is working as a draft of a MeeGo handset image, to make possible the MeeGo development on your N900 hardware. Being a draft it will not take into account all features commonly present in a handset OS. Flashed with this edition N900 will be usable as a primary phone device for a developer/hacker person.
Think of the CE effort as a vendor that wants to take MeeGo 1.2 and productize this and put this on a device. How will they do this?
This will typically be stored in a repository and images made by the usage of MeeGo 1.2 repositories + the vendor repository.
When images are made, the vendor's modifications should take priority over the original.
A typical vendor will not and should not have to rebuild entire MeeGo distribution and we do exactly the same as a vendor would, in CE.
We'd love to submit changes back, but there are many factors making this difficult:
When those factors aren't blocking, we submit modifications/improvements and usually get them accepted.
CE is not a MeeGo fork beyond what a typical vendor does to make a MeeGo product. We're an active effort to improve MeeGo and we actively try to submit back our modifications. For those submissions that are not successful, we have to maintain a modified package.
Believe it or not, but we actively try to be compliant. We haven't yet submitted test results, but in our daily work when integrating components or patches, we look to MeeGo compliance. The MeeGo 1.2 compliance document is not yet finalised either.
Compliance brings along the benefit that applications made with MeeGo 1.2 SDK will work on N900 Community Edition and applications made in relation to CE work, will work on MeeGo 1.2 devices, so of course we'd like to be part of that.
We wanted to start out the project in a place where:
In addition to that, we wanted to encourage people to develop for MeeGo and the community OBS was a logical place as anyone with a meego.com account can get access to it.
MeeGo 1.3 is in a invasive changes phase and difficult for any newcomers to get into - it is hard to develop when your underlying system isn't stable.
Community Edition acts like a vendor would in the MeeGo ecosystem. We share same mission as a vendor - we want to productize MeeGo for a device.
The difference is just that we don't have any secret devices to do this for, compared to ordinary vendors. This means that:
MeeGo has a contribution problem. It is often difficult to contribute as:
MeeGo is also a platform and not a end-user product - this means that often, you do not see the immediate result of your contributions in what you use daily. People take the MeeGo platform and build a product using it.
Community Edition lowers the bar of entry for contribution and allows people to come in from the street and start experimenting with the platform and learn how to contribute to MeeGo in a reasonable pace on top of a stable MeeGo release. People can learn everything from release engineering, image creation, packaging to bug triaging, etc. and then go on to use those skills straight in the MeeGo project. They can use the device day to day and see the impact of their changes.
People who are trained within Community Edition can then show their merit when applying for a build.meego.com account and be an immediate skilled contributor to MeeGo.
The future remains to be seen for Community Edition. An idea could be to expand the CE work for multiple devices, even beyond Handset/ARM, think Netbook, Tablet - to encourage MeeGo contributions for all these areas. And to continue with the reference vendor work.
Your thoughts? Please discuss on firstname.lastname@example.org