Qt on Maemo
Qt on Maemo arrived late and never fully replaced what it was meant to replace: the platform had been built on GTK+ 2 with Nokia’s Hildon widget layer since the 770 in 2005, Qt only became a supported toolkit for Maemo 5 after Nokia bought Trolltech in 2008, and the Qt 4.7 packages that brought the declarative language to the N900 were experimental community builds rather than part of any Nokia firmware.
Why Qt came late to Maemo
Qt came late to Maemo because Maemo already had a toolkit and a considerable amount of software written against it. The platform was assembled from GNOME technologies: GTK+ 2 for widgets, GConf for settings, D-Bus for messaging and GStreamer for media, with Hildon on top as Nokia’s own layer of touch sized widgets, menus and window behaviour. Every release from Maemo 1 on the 770 to Maemo 5 on the N900 in 2009 was built that way, and the N900’s own browser, dialer and media player are GTK+ and Hildon applications. Nokia acquired Trolltech, the Norwegian company behind Qt, in 2008 and from that point had two toolkits. It chose the one it had just bought, and the switching cost fell on a platform that was already shipping.
Qt 4.6 and the Maemo 5 classes
Qt 4.6 was the release that made Maemo a supported target, arriving at the end of 2009 with Symbian support in the same version, and it is the first point at which writing a Qt application for the N900 was an ordinary thing to do rather than a porting exercise. Qt 4.6 did not simply run on the device; it carried platform specific pieces so that a Qt application behaved like a Maemo one, including the stacked window behaviour Maemo 5 used instead of nested dialogs, a portrait orientation request on a device whose shell was landscape, and kinetic scrolling that matched the rest of the system. Nokia later folded Qt into the Maemo 5 firmware itself, so applications could depend on it being present rather than pulling it in as a large dependency, which removed the main practical objection to shipping Qt software for The Nokia N900.
What Qt 4.6 did not do was convert the platform. Maemo 5 stayed a GTK+ and Hildon system with a Qt layer available on it, and the seam showed: a Qt application on the N900 looked close to a native one without looking identical, the usual outcome when a style imitates another toolkit.
The experimental Qt 4.7 packages for the N900
The experimental Qt 4.7 packages for the N900 were the interesting part, and they were exactly what the name says: unsupported builds distributed through the community catalogues for developers to test against, not a Nokia release and not part of any firmware. Qt 4.7, released in 2010, introduced the declarative module that became known as Qt Quick with QML as its language, and that mattered far more to this platform’s future than the version number suggests. Backporting it to Maemo 5 let people write the new style of interface on hardware that already existed, at a moment when the platform it was designed for had not shipped on anything. Those packages came through the same route as everything else worth having on the device, described under What you could actually install.
This page has no measured search demand behind it. It exists because inherited links point at it and the subject genuinely connects Maemo to what followed. Nothing here is downloadable: this site is an independent reference and hosts no firmware, no packages and no repackaged applications.
What Qt Quick changed for developers
Qt Quick changed what building an interface for these devices involved. Before it, a Maemo interface was C or C++ against GTK+ and Hildon, or C++ against Qt widgets, with layout expressed in code and animation something you implemented yourself. QML is a declarative language with JavaScript expressions in it, where the interface is a tree of items with properties, and where animating a property is a line rather than a subsystem. On a device with a 600 MHz processor that was a real bet, because declarative interfaces need hardware acceleration to feel right. The tooling moved with it: Maemo development had run on Scratchbox, a cross compilation environment newcomers found forbidding, and Nokia’s Qt oriented tooling of that period offered Qt Creator with device targets and a simulator instead.
Harmattan on the N9, where Qt was finally native
Harmattan on the N9 is where Qt was finally the native toolkit rather than an option on top of another one. The N9, announced in 2011 and sold from that autumn, ran what Nokia called MeeGo 1.2 Harmattan, a system that inherited its Debian packaging and much of its plumbing directly from Maemo while replacing the interface layer entirely. Its interface components were QML and its swipe based shell was built on Qt Quick, so the awkward Qt layer on a GTK+ platform had become the whole platform one device generation after Qt 4.6 reached the N900. Nokia announced its move to Windows Phone in February 2011, before the N9 shipped, which is why the device running the finished version of this toolkit story was launched by a company that had already decided not to continue it.
Silica, Sailfish OS and the line back to the N900
Silica is where the line from Qt on Maemo ends up, and it is still running. Jolla, founded in 2011 by people who had worked on this platform inside Nokia, built Sailfish OS on the same foundations, and its interface toolkit is a QML component set called Silica sitting on Qt Quick. The first Jolla phone shipped in 2013, Sailfish OS is still developed and licensed, and an application written for it is written in QML with C++ underneath, which is recognisably the arrangement the experimental packages on the N900 were previewing. The chain is short and each link is real: GTK+ and Hildon on Maemo, Qt 4.6 as an option on Maemo 5, Qt Quick on Harmattan, Silica on Sailfish. The toolkit change that looked like a disruption in 2010 is the part of the platform that survived, more completely than the hardware, than the storefront described under The Ovi Store or than the mapping services described under Maps and navigation, both of which depended on servers that were switched off.
Hildon after Nokia
Hildon after Nokia did not disappear either, which is the counterpoint worth keeping. Maemo Leste is an ongoing community project that rebuilds the Maemo experience on a Devuan base, targeting the N900 among other devices, and it keeps the Hildon desktop rather than replacing it with Qt Quick. Two descendants of the same 2009 system therefore exist at once: one that took the toolkit forward and left the hardware behind, and one that kept both and replaced everything underneath. Neither of them is Nokia’s.