In this edition...

  1. Front Page
    • First MWKN of the new year
    • Fun with Qt and the open source Media Player
  2. Applications
    • Marble - open source, routing-capable GPS and mapping
    • pwnitter - session sniffing and hijacking demonstration
  3. Development
    • Portable apps with QML
    • FOSDEM wants Maemo developers for conference schedule app
    • Qt Mobility 1.2 technology preview for MeeGo
    • ...and 5 more
  4. Community
    • MeeGo Conference update & survey
    • Diary of starting a MeeGo community
  5. Devices
    • MeeGo port to Archos devices
    • QtMoko user interface in N900 chroot
    • Video demo of progress on Android 2.3 (Gingerbread) on N900
    • Android 2.3 update 1 for N900 brings codec support
    • NITDroid, Android for N900, installation instructions
  6. In the Wild
    • N900 "Best Linux Smartphone", and MeeGo "Best New Open-Source project" awards in LJ Readers' Choice
    • Book - Beginning Nokia Apps Development: Using MeeGo, Mobile Qt & OpenSymbian
    • Amazon.com's top phone given as a gift in 2010 was Nokia N900
    • Qt 4.6 in Palm's WebOS 2
  7. Announcements
    • gPodder 2.11 in fixes YouTube downloads
    • That Rabbit Game for Symbian and Maemo
    • SPB TV - 150+ streaming channels
    • ...and 4 more

Front Page

First MWKN of the new year

Welcome to 2011! The eagle-eyed (rather than the bleary-eyed) will have spotted the lack of an issue last week. This is due to the (now) traditional one week Christmas break for MWKN. Apologies for the lack of notice. Thanks to Ryan Abel, as ever, for helping edit the issue; and special guest editor, Sebastiaan Lauwers, who helped us get over the line (click the "read more" link if you'd like to get involved yourself). This year is going to be an interesting one: a Maemo 5 Community update programme; two official MeeGo Conferences; at leastone MeeGo(ish)/Maemo(ish) device from Nokia; a firming up of the Qt developer story and - hopefully - 51 uninterrupted issues of MWKN.

Fun with Qt and the open source Media Player

As mentioned in a previous issue, Mohammad Abu-Garbeyyeh has been leading the development of an open source, Qt version of the Maemo 5 Media Player as an example of how the closed source applications can be rebuilt without a loss of functionality. Originally motivated by Sebastiaan Lauwers, Timur Kristóf and Tom Swindell are all helping out. Mohammad says, As some of you know, Nokia (well, unofficially) dropped support for Maemo 5 about a month ago. Any requests to open the userspace closed source components (in the UI) and applications were closed and rejected for reasons kept within Nokia, possibly due to business issues (opening sources might cost them money, and they might not gain anything back in return, etc…). This sparked a discussion on IRC, which resulted in the birth of a new project, a rewrite of the stock Maemo 5 Media Player in Qt, with MAFW as the backend so as not to break compatibility. The new application has been designed with portrait mode in mind. It's being developed collaboratively on Gitorious (the source is available, and compilable now) and on #maemo-foss on FreeNode IRC.

Alternatively, if you'd like to form a mini-team to reimplement another of the closed applications, get stuck in.

Why reimplement the closed application, though; rather than design a better one from scratch? There are three excellent reasons: scope, design & usability.

Scope - reimplementing an existing application means you have a defined scope and so know when the first version is finished;

Design - designing a good user interface is, in many ways, the hardest part of building a new application. Whilst Nokia's user interfaces may not be perfect, they provide a good springboard and save having to think too much about it.

Usability - by copying the UI & functionality of an existing application, users don't need to learn a new user interface, the built-in manuals are sufficient and it even increases the possibility that your open version could be included in the Community SSU in future, replacing - transparently to the user - a closed, stagnant version with an open version receiving incremental improvements.

Applications

Marble - open source, routing-capable GPS and mapping

Maemo 5 suffers from a lack of good, offline, routing-capable mapping applications. There are a number of contenders, including Nokia's own Ovi Maps. But, in your editor's opinion, only Sygic may be approaching the capabilities of Navicore's Wayfinder on Maemo 4 (and that was derided at the time); but at too high a cost to justify replacing the N810 currently working as his GPS whilst driving around Europe on holiday. Dennis Nienhüser has announced the release of Marble, a globe-oriented application which may improve the situation. Dennis says, Marble is a Virtual Globe whose mobile version features advanced routing capabilities. Key features: Online and offline routing (worldwide); GPS tracking and route guidance; Many different map themes. Marble does not use accelerated 3D for its globe, but is speedy nonetheless. It's currently available in Extras-testing for those willing to balance risk, early access to software and a commitment to feedback issues and vote accordingly.

pwnitter - session sniffing and hijacking demonstration

Simon L R has a little write-up of Tobias Mueller's pwnitter sidejacking tool for spoofing Twitter users on your network: “Sidejacking” as it’s been called, a method of snarfing and re-using session cookies, is now publicly available for your mobile phone and Twitter. If you didn’t feel like hacking up FireSheep to get it working on your device, chewing over 40MB of space and wreaking havoc on your dependencies – well, look no further than a nice packaged binary called Pwnitter, by Tobias Mueller of GNOME fame. pwnitter is in Extras-devel, so care should be taken if installing it to not upgrade any other packages. As it also operates on a fairly low-level, extra care should be taken. Warnings about complying with your local laws should be taken as read.

Development

Portable apps with QML

Sivan Greenberg points to a cross-platform case study using Qt Quick (that is, QML). From the article: This Qt example application demonstrates Qt Quick as a game platform. QuickHit is in principle a general shooting game, but differentiated from other similar games by its levels. Levels are Qt plug-ins which are loaded during QuickHit startup. Different levels are shown in application’s main menu. Levels can have different sounds, graphics and level QML files. Common for all levels is that your ship is at the bottom of the screen and shoots up. Sivan says, he "thinks it shows how far one might one get with Qt Quick, personally it ignited more of my imagination and gave me a few more ideas and techniques how to harness this."

FOSDEM wants Maemo developers for conference schedule app

FOSDEM, the yearly "free and open source software developers' European meeting", is seeking mobile software developers (including Maemo) for the schedule for the 2011 conference. Last year, there was a FOSDEM schedule application available for almost every phone platform. Following this success we'd like to do a new call-for-development to ask the same thing again for this edition.

Qt Mobility 1.2 technology preview for MeeGo

Qt Mobility is the umbrella term for a set of APIs which make sense when building full-featured applications using Qt. Unfortunately named, it also includes Bluetooth and connectivity APIs; where a distinction of "mobile" is increasingly blurry with modern desktops. A technology preview of the next version of Qt Mobility has been provided in source tarball and, for MeeGo, RPM form: We would like to share our source package of the Qt Mobility 1.2 APIs at a Technology Preview level of maturity and a set of RPM packages for MeeGo compatible devices. As we communicated earlier, the number one mission for Mobility 1.2 was to deliver backend support for MeeGo, so that has been the primary focus in this release. A lot of work is still on-going and there are known issues in this Technology preview. However, we want to obtain your feedback on the design of new APIs early before we mature the APIs to BETA and then ultimately finalize for our delivery to MeeGo 1.2 in early 2011.

Developing QML applications on Symbian

Marko Mattila documents his experiences moving QuickFlickr to run on Symbian, including the meta-data needed to allocate memory correctly in the .pro file: I have never developed anything on Symbian platform and the reason for this is that I couldn’t care less about the Symbian before. I have always been more into about Qt and gadgets that run Linux rather than Symbian. Now the things have changed a bit – it’s possible to develop Qt applications for Symbian platform which makes easier to start app development on Symbian for me as a Qt developer. The other reason is, thanks to Qt Ambassador program, that I happen to own N8, which btw is a pretty good HW. To be honest, I can’t praise much the UX on N8, but still, it’s a good hardware.

QML wrapper generator for building binaries online

The folks at Haltu in Finland have produced an online compiler which wraps up a QML file in a Maemo 5-compatible binary. This binary can be run on an N900 to launch a QML file, rather than launching qmlviewer. They explain the rationale for the service: Big percentage of mobile apps could be implemented by using only QML and javascript. We want to see a world where this is possible. And that is the real reason why we created this technology demo. To proof that there is no need for the developer have compiler installed. Next step is to get this technology here integrated to the mobile platform so we can get rid of this whole service :) Unfortunately, the production of binaries isn't compatible with the source-oriented approach desired for maemo.org Extras and the MeeGo community OBS. Ideally, tools would generate installable packages for testing; but also tarballs, "debian" directories and RPM spec files so that developers could quickly get started and target open source software. There were various comments at the MeeGo Conference that Qt Creator would be getting such a feature in future, which your editor was pleased to here.

Qt Mobility 1.1 for Fremantle

Attila Csipa, Forum Nokia advocate and Maemo Community Council member, announced that Qt Mobility 1.1 is now available for developer's use: We have kickstarted a community 'compatibility program' with a little Forum Nokia help which will focus on bringing the latest Qt and related tech tools/fixes/updates to developers, without having to worry about Nokia release schedules and support status. The first component that is released as part of this effort is QtMobility 1.1 (as 1.0.2 is getting long in the tooth), currently available as libqtm-11-* in extras-devel. Forum Nokia are interested in maintaing Maemo 5 as a viable Qt development platform as it both helps developers get started with Qt for Symbian and MeeGo; and shows Qt's cross-platform deliverables on actual running hardware.

NITDroid, Android for N900, installation instructions

Instructions for installing the latest release of NITDroid are now available on Talk. Talk user "ammyt" was kind enough to compile them for those who need a helping hand. Interested parties should keep in mind that installation process is involved, potentially difficult to recover from if something goes wrong and currently still experimental. It's certainly a cheaper way to investigate your Android compatability, however.

PySide (Python for Qt) second beta released

PySide has been in a bubbly state for a long time. Ever since it was announced and demonstrated at the Amsterdam summit (right before the launch of the N900), a lot of people were very enthusiastic about it. With the few PRs that have been released, the PySide dev team has had to work hard to keep up with the changes. This milestone confirms that the team is still inline with the goals they put forward, just over a year ago. The PySide team is happy to announce the second beta release of PySide: Python for Qt. PySide provides a complete set of LGPL-licensed Qt bindings for Python, including full QML and QtMobility support. Any software written for N900 using PySide will work as-is on the upcoming Harmattan and MeeGo platforms.

Tabular data for maemo.org downloads

For all of you who have always wanted to get more accurate download statistics, Amanda Lam may just have put online the webpage you were looking for: I've created a very rough PHP page that grabs the raw download count figures from the maemo.org Download Statistics [...] Now you can query the daily and monthly download counts of any Diablo and Fremantle package Bear in mind that the information provided by the website hasn't been verified, so take the values it provides with a grain of salt. For example, the download count is the sum of all the downloads across all versions – meaning that a single user who downloads four updates will count as four downloads.

Community

MeeGo Conference update & survey

The organisers of the MeeGo Conference have provided a wrap-up, and would like your feedback: You can help us make the next MeeGo Conference even better! Please take just a few minutes right now to fill out your conference survey before January 7th, 2011. Congratulations to the organisers: everyone your editor spoke to enjoyed it enormously, even those from a staunchly Maemo background with no new shiny mobile gadget to play with. The survey only took a few minutes for your editors to complete, so be sure to visit the site and fill it out.

Diary of starting a MeeGo community

Jarkko Moilanen has recently posted a pretty interesting article regarding the processes involved in building a local antenna of the MeeGo community (yes, in the real world!). My thought was: “The Summit would be an excellent goal for which we all could join our (all local Finnish MeeGo Networks) forces.” In the same process we can build our community. This has worked very well. Having a shared common goal has functioned as a unifying item. Overall, Jarkko's post is pretty humbling, and eye-opening for anyone who wants to help give a physical presence to the open source communities they are involved with.

Devices

MeeGo port to Archos devices

Archos devices have had a fairly long history of Linux hacking, beginning with the PMA400 in the mids 2000s. Lately Archos has become just another Android OEM, which somewhat simplifies the efforts required to run other Linux-based operating systems on their devices. A project to get MeeGo running on the Archos generation 7 devices has been launched on the Xiaoka Wiki. Current status: booting Archos kernel release (2.6.27.10 OpenAOS tree), with backported PVR GPU driver; working image of MeeGo Core and Handset trunk; working USB Eth networking; working WiFi connectivity; working OMAP3 PowerVR EGL 3D acceleration.

QtMoko user interface in N900 chroot

A video demo has been released of QtMoko (the Qt-based OpenMoko distribution) running on an N900 in a chroot environment. While probably not offering a lot of useful functionality day-to-day, it does go to demostrate (once again) how powerful an open platform like Maemo really is. The developer, Radek Polak, says of his video and screenshots: It's not real port. It's just unpacked v31 that runs in chroot with dummy modem device. It took me just 10 minutes and i dont intend to spend more time on it, but i hope it can be good starting point for porting qtmoko to GTA04, i will most like buy one in early adopter program.

Video demo of progress on Android 2.3 (Gingerbread) on N900

Android on the N900 is becoming a realistic option for a number of early adopters. The latest version, 2.3 (codenamed "Gingerbread") is having its first releases by the NITDroid project. A video demoing Android 2.3 on the N900 has been released.

Android 2.3 update 1 for N900 brings codec support

The first update for the new, Android 2.3-based, release of NITDroid now includes working codec support, which brings working audio playback to the platform. "e-yes" describes the features of the release: What is working: 3D; GApps; accelerometer && orientation policies; lights HAL; hardware keyboard%); sound; charging, battery status indication; modem/data, SMS receiving, USSD, calls/signaling;A2SD; wi-fi connectivity; bluetooth; codecs. Voice calls are not yet working in this version of NITDroid.

NITDroid, Android for N900, installation instructions

Instructions for installing the latest release of NITDroid are now available on Talk. Talk user "ammyt" was kind enough to compile them for those who need a helping hand. Interested parties should keep in mind that installation process is involved, potentially difficult to recover from if something goes wrong and currently still experimental. It's certainly a cheaper way to investigate your Android compatability, however.

In the Wild

N900 "Best Linux Smartphone", and MeeGo "Best New Open-Source project" awards in LJ Readers' Choice

With many publications wrapping up their coverage of the year, Linux Journal shares the results of its Readers' Choice Awards; with the N900 winning "best Linux smartphone": No Linux Journal award show would be complete without a Nokia N-series device, and the 2010 Readers' Choice Awards is no exception. The Nokia N900 takes the award for Best Linux Smartphone. We're not too surprised that you chose the N900 given that it's the most early-adopter phone out there. That's us. The honorable mention in this category is an Android: HTC Nexus One. MeeGo won "best new open-source project".

The Nokia N810 (running Maemo 4) came third in the "best Linux-based gadget" category.

MeeGo got "honourable mention/runner-up" as "best mobile OS"; with Maemo at number four and Moblin at number five.

MeeGo also got third place in the "best distribution for netbooks/limited hardware" category - a fact that owes more, in your editor's opinion, to the limited offerings in this area rather than the strength of MeeGo Netbook. However, things can only get better.

Book - Beginning Nokia Apps Development: Using MeeGo, Mobile Qt & OpenSymbian

A sign of how seriously Nokia is touting MeeGo and Qt to journalists, publishers, analysts and professionals can be seen in the release of Apress' new book, "Beginning Nokia Apps Development". From the catalogue blurb: While buzz often circulates around iPhone and Android, Nokia still leads the pack in terms of world market share. Symbian, for instance, remains the most widely used mobile operating system. With the emergence of Nokia's open development platforms, the opportunities available for mobile developers to target these vastly popular operating systems are clear. Beginning Nokia Apps Development is step-by-step guide that introduces mobile development using Nokia's variety of open platforms like Mobile Qt, OpenSymbian, and MeeGo. This book brings beginners up to speed and shows experienced developers how to work on a mobile platform. A brief sample seen by your editor seems to suggest that this is well written and deals with both the fundamentals of Qt & C++ and also the strategic approach of Qt Quick and/or HTML 5.

Amazon.com's top phone given as a gift in 2010 was Nokia N900

Interestingly, the N900 has ended up on the top of Amazon's "Most Popular Gift Products of 2010 - Wireless", making it the most gifted device in Amazon's inventory in the category. Of course, given that most consumers (at least in the US) tend to buy cellular devices direct from carriers and that Amazon is one of the few places where the N900 was actually available, well... you can draw your own conclusions. Mark Guim says, Amazon.com today released its “Best of 2010″ lists, which include the bestselling, most-wished-for and favorite gift products as determined by Amazon.com customers in 2010. The Nokia N900 was the most frequently purchased as gifts in the wireless category! Yay for Nokia and Maemo! The Nokia N900 started shipping in the US last November. The data from these lists came from January 1st, 2010 to December 15th, 2010.

Qt 4.6 in Palm's WebOS 2

Many of you will remember that Ari Jaaksi moved from heading up Nokia's MeeGo Devices to Palm's WebOS division. Whether or not the inclusion of Qt 4.6 in Palm's own next-generation mobile OS has anything to do with this is completely unknown, but - according to Ryan Paul of Ars Technica - it wasn't there in the previous beta. If this ultimately led to Qt Quick, we may really see Qt win as the next-generation mobile platform of choice, rather than aiming at the OS level. This is, ultimately, Nokia's strategy: abstract the OS with the Qt platform.

Announcements

gPodder 2.11 in fixes YouTube downloads

Thomas Perl has announced that a new version of gPodder is out. If you are having problems with YouTube downloads recently, this release is for you. There are also some other minor changes and fixes (detailed changelog for gPodder 2.11). No translation updates or major new features, though. The version has made it through the Extras-testing QA process and is now available for download by end-users in maemo.org Extras.

That Rabbit Game for Symbian and Maemo

We previously covered Thomas Perl's exploits in Qt's "write once, run everywhere" utopia. Now he is releasing the fruit of those exploits, That Rabbit Game, to Ovi for Maemo 5 and Symbian: I've blogged about it already, and even showed some code during an Interview at Nokia World, but there have not been any releases of That Rabbit Game so far, mostly due to Ovi Store QA not understanding what Optification means and requesting that the version number of the application appears somewhere in the app UI (after 15 days in QA). I've made the requested changes, added scoring and pushed new releases (of version 1.2) for both Symbian and Maemo 5 to Ovi QA. Until the game gets published on Ovi, I decided to release packages on the website so you can download and enjoy the game right away - and maybe even provide some feedback. Please don't mirror/redistribute the packages, but link directly to the website. Download That Rabbit Game for Maemo 5! Users should, of course, always be wary of random debs from websites on the internet. However, given that this is thp we're talking about, likely it wont attempt anything nefarious.

SPB TV - 150+ streaming channels

Symbian Tweet covers SPB Software's streaming TV channel application, which is now available for free in Ovi Store. SPB say, The application is remarkable due to its TV-like usability that allows users to watch TV on their mobile devices as if it was their TV at home. Alongside with quick and easy access to more than 150 channels from over 20 countries it also provides users with such features as channel preview, picture-in-picture mode, watching TV with low speed mobile network connections, TV-guide with the option to set the reminder in the calendar and more. Your editor gave it a quick go, and there are some high profile channels in there such as the French NRJ 12 (which was showing a Stargate SG1 marathon). However, many of the channels were stuttery even on a good broadband connection, suggesting that either very high bandwidth streams were being used (the quality does not confirm this) or the playback is not optimised for the content.

qw game now available for Maemo 5

Thomas Perl released his second new game at the end of December, qw, in the form of a tech demo. The gameplay seems fairly similar to Jezzball on Windows and Barrack on Mac from the 1990s: My second new game this year - qw - has been released for Maemo 5 today. Version 0.1 (a tech demo, not a proper final release) gives you a sneak peek on the gameplay with 9 different levels and four-player support (if you hook up an external USB keyboard or get together really close for some N900 keyboard multiplayer action). The gameplay is simple: You need to control your player cursor (either via touchscreen gestures or keyboard) and enclose areas of the game with lines in order to fill them with a colored image. Beware of the enemies, as they will destroy your lines and split your points in half. If you enclose one or more small enemies, your points are multiplied. Thomas has made a .deb available from his website.

wl1251 wifi driver

In what would appear to be the final episode of a very long-running GNU-drama, David Gnedt has finally decided to release the source code that was powering NeoPwn's injection-capable wifi drivers for the N900. It is based on the upstream bleeding-edge wireless-testing tree and incorporates nearly all features found in the stock wl12xx driver used in Maemo Fremantle, adds some bugfixes and also provides some unique features like packet injection. In fact it should be a "super" driver for the wl1251 chip on Maemo and if accepted upstream (the Linux kernel) it should bring this large featureset also to other distributions, which run on the Nokia N900. David is asking for donations before giving people the source and binaries. Of course, under the terms of the GPL, anyone who receives the binary is entitled to receive the source; and pass it on to whomever they wish. The files appear to have been uploaded to RapidShare, however your editor has not verified the contents of that download. The thread itself is not uninteresting and provides an entertaining GPL discussion.

SMS & IM-chat notification blocker

Message blocking has long been a community-provided feature on Nokia platforms. Unfortunately, until now, Maemo has lacked software to fill that gap. Nicolai Hess has finally delivered an answer with Message Blocker, which provides per-account configurable block lists for both SMS and IM. Nicolai's application prevents the notifications from disturbing you, say if you are asleep: After many users asked for an SMS blocker application, I thought it can not be that hard to make one. But it was hard! Lack of documentation, few tutorials and examples scattered over different versions, it took me two dozens of test sms-message just to find out how incoming messages are handled by Maemo 5. But finally: Message Blocker is currently available from Extras-devel, so the faint of heart should stay tuned and those of you who like testing should hop to it.

Omnom (Pacman-like game) for N900

A new PyGame-based Pacman-like game called Omnom is under development for Maemo by Talk user "FRuMMaGe": The aim of the game is to collect all the pellets in the level. The larger pellets put the enemies in to a state where they can be attacked, however attacking may not always be the best idea. When the enemy is attacked it returns to it's original location and can not be attacked again. Omnom is available from Extras-devel, but the usual disclaimers apply. Ed Page helped FRuMMaGe to package the application.