Helping Nemo Mobile

Nemo Mobile has progressed nicely for the last weeks. We now have most of the needed infrastructure in place for the project and the quality is improving. One of the most important infrastructure improvements was that the project now has a proper bugzilla in place at https://bugs.nemomobile.org/.

We have a small group of very active people contributing to the project. There is also a bigger group of people that is interested about Nemo and perhaps trying out images, but not yet contributing much. Contributions to project have always been welcome, but contributing has not been so easy, because a lot basic things have been missing both in project infrastructure and releases. Since the basics are now in place, I think now the project would be ready to grow. We would really like to see more contributions.

There are many areas where Nemo needs help. One of the easiest things to do is just testing the images and filing bugs to Nemo Bugzilla. It is really important that more people start filing bugs, since the development team is small and cannot test all that needs to be tested. Project is not yet using bugzilla to track all new stuff to be developed, but project is moving to that direction. So if there is an improvement idea or new feature you would like to see, feel free to file it to bugzilla.

Nemo-wiki needs a lot of improving. Currently, wiki just gives minimal information what Nemo Mobile is all about. Wiki should contain a lot more information like detailed documenting how to install Nemo for various devices, how to develop for it, what Nemo images contain, where is upstream projects of various components, how to file bugs, how to contribute code, and a lot more. Even small things like fixing the language helps, since many of the wiki-contributors (like me) do not speak English as our native language. It is a wiki, so anyone can edit. Registration is required, because we have had some problems with spamming.

One way of contributing is building or porting new apps for Nemo. In my opinion, easiest way to develop an application for Nemo is to use Qt SDK and develop an application using Qt Components targeting N9. Harmattan developer documentation is in big parts valid also for Nemo development. In many cases even the same binaries work in both on N9 with Harmattan and N900/N950 with Nemo Mobile. Nemo is so compatible with Harmattan, because both use the same compiler, both target the same ARM instruction set (ARMv7 hard float), and the most relevant libraries of recommended public Harmattan API are also included in Nemo. So if your application uses OpenGL ES, Qt, Qt Mobility, Qt Quick and Nokia MeeGo Qt Components it is quite likely that it runs on both.

Other options for application development is either to use community OBS or to use MeeGo SDK 1.2. The OBS is the way you can use any library that Nemo has and you can be sure that your app is binary compatible, since OBS is what is used for building the packages in Nemo. Only problem is that using it requires quite a lot of learning and it is not really optimized tool for application development. MeeGo SDK would otherwise be good, but it does not include support for Nokia MeeGo Qt Components, which are needed for UI development.

Fixing bugs in Nemo releases can be challenging, but it is also very interesting. You will learn a lot on how Nemo works while fixing bugs. This is a big topic, worthy of its own blog post some day. In short, if you have an idea how to fix a bug, and you have some knowledge of OBS, feel free to assign a bug to yourself and try to fix it. You will need to know how to work with OBS to make and get your fix included in Nemo. Nemo packages are built in community OBS. Project structure is explained in the Nemo-wiki. It would be also good idea to notify people on #nemomobile (@freenode) IRC-channel that you have started working on the bug. They will have good ideas where to start and how to proceed. (I am usually there under nick: veskuh).

There is also plenty of other things where help is needed and all contributions are welcome!

No comments:

Post a Comment