| Maemo | |
|---|---|
Screenshot of Maemo 5 | |
| Developer | Nokia |
| Written in | C,C++,Mono C# |
| OS family | Linux (Unix-like) |
| Working state | Terminated in favor ofMeeGo, community support available with Maemo Leste |
| Source model | Largelyopen-source with mandatoryproprietary components[1] |
| Latest release | 5.0 PR 1.3.1 / 1 November 2011; 14 years ago (2011-11-01) |
| Available in | Multilingual |
| Update method | APT andflashing |
| Package manager | dpkg |
| Supported platforms | ARM architecture |
| Kernel type | Linux kernel |
| Userland | GNU |
| Default user interface | Hildon UI |
| License | Mixed unspecified open-source and proprietary[1] |
| Official website | maemo |
Maemo is aLinux-basedsoftware platform originally developed byNokia, now developed by thecommunity, forsmartphones andInternet tablets.[2] The platform comprises both the Maemo operating system andSDK. Maemo played a key role in Nokia's failed[3][4] strategy to compete withApple andAndroid;[5] the only retail devices that shipped with Maemo were theNokia Internet tablet line released in 2005 and theNokia N900 smartphone in 2009.[6]
Maemo is mostly based onopen-source code and has been developed by Maemo Devices within Nokia in collaboration with many open-source projects such as theLinux kernel,Debian, andGNOME. Maemo is based onDebian and draws much of itsGUI,frameworks, andlibraries from theGNOME project. It uses theMatchbox window manager and theGTK-basedHildon framework as its GUI andapplication framework.
Theuser interface in Maemo 4 is similar to many hand-held interfaces and features a "home" screen, from which all applications and settings are accessed. The home screen is divided into areas for launching applications, a menu bar, and a large customizable area that can display information such as anRSS reader,Internet radio player, and Google search box. The Maemo 5 user interface is slightly different; the menu bar and info area are consolidated to the top of the display, and the four desktops can be customized with shortcuts and widgets.
At theMobile World Congress in February 2010, it was announced that the Maemo project would be merging withMoblin to create theMeeGo mobile software platform. Despite that, the Maemo community continued to be active, and in late 2012 Nokia began transferring Maemo ownership to theHildon Foundation, which was replaced by a German associationMaemo Community e.V.Archived 9 July 2023 at theWayback Machine[7][8][9] Since 2017, a new release calledMaemo Leste is in development which is based onDevuan.[10]
Up to Maemo 4 (AKA OS2008), the default screen is the "Home" screen — the central point from which all applications and settings are accessed. The Home Screen is divided into the following areas:
The interface uses either the touch screen, or a directional pad and select button, with separate back, menu, and home buttons. It is capable of receiving text input through handwriting recognition, two different sizes of on-screen keyboard and hardware keyboard input with theN810.[11]
The user interface in Maemo 5 is different from its predecessors. It provides four fully customizable (with the ability to add/remove widgets, move widgets around, change the background and customize shortcuts to applications/contacts) "Home" screens,[12] called Panorama Desktop.[13] Switching from one desktop to the others is done by sliding one's finger horizontally on the background. The dashboard is accessed via the upper left icon and shows all the running applications, in a manner similar to the Exposé feature in Apple'sMac OS X operating system. From the dashboard, running applications can be brought back to full screen by tapping the preview window, and applications can be closed by tapping an X-symbol located in the top right corner of the preview window, similar to the concept of closing applications in other operating systems. The application launcher, where all the installed applications can be launched, can also be accessed from the dashboard.[14][15] If no task or application is running in the background, tapping the top left icon skips the dashboard and directly displays the application launcher.
Maemo provides theMozilla-basedMicroB web-browser with completeAdobe Flash support. It supports an 800×480 display resolution, so some web pages can be viewed without horizontal scrolling. It can automatically connect to known wireless networks, download RSS feeds and email and disconnect automatically without user intervention.[16]
Advanced Packaging Tool with a command-line apt-get client can be used to install applications. Users can subscribe to differentsoftware repositories, which can then be used to automatically keep software up to date. The application manager also provides an overview of everything currently installed on the system. Data can be synchronized with a PC via a USB connection, and the user's files can be accessed using the standard Removable Storage Device protocol.[16]
A new update (Version 21.2011.38-1.002) was released onto the Nokia N900 on 2 November 2011[17] as anOTA update. The new version mostly consists of security updates. This is considered to be the final official update to Maemo 5/Fremantle shipped by Nokia.
Further development of Maemo 5 happens as a community effort in Maemo-CSSU.[18]
Maemo devices can be updated using a simple flashing method with a computer over USB.
Since Diablo (Maemo 4.1), Maemo supports "Seamless Software Update" (SSU), which allows incremental operating system upgrades "over the air" using theAdvanced Packaging Tool, without the need for a full flash with every update.[19]
Flashing remains available as a way to start over from scratch with a clean installation (much like formatting a hard drive and reinstalling an operating system on a PC).[20]
The quick start guide for developers warns that Maemo security concentrates on preventing remote attacks (e.g. bywireless networking andBluetooth). It also warns that Maemo'sroot account has a trivial default password (user: gainroot, password: rootme) which needs to be changed before enabling remote access.[21]
Maemo employs a numeric security code as a way to lock the device's controls and display independently of the root password, to help prevent unauthorised access.[22]
Maemo is a modified version of theDebianLinux distribution, slimmed down for mobile devices.[23] It uses anX Window System-basedgraphical user interface using Xomap and theMatchboxwindow manager. The GUI uses theGTK+ toolkit andHildon user interfacewidgets andAPI.[24]
BusyBox, a software package for embedded and mobile devices, replaces theGNU Core Utilities used inDebian-proper to reduce memory usage and storage requirements (at the expense of some functionality).[25]
ESD is used as the primary sound server, andGStreamer is used by the shipped media player to play back sounds and movies. The formats supported by GStreamer can be extended by compiling GStreamer plugins in scratchbox (Maemo SDK), which was done, for example, to bringOgg support to the platform,[26] as well as experimental features such asWebM andVP8 after they were announced byGoogle.[27] Third-party media players can access GStreamer directly or via "osso-media-server".[citation needed]
Window management is handled by the Matchbox window manager, which limits the screen to showing a single window at a time (Ubuntu Netbook Edition implements a similar system). This is to improve usability on a mobile device with a small screen.
Although Maemo is based onLinux and other open source software, some parts of Maemo remain closed source. These include some user-space software, like certain status bar and taskbar applets (including the display brightness applet) and applications, and some systemdaemons related to connectivity and power management.[28]
Maemo comes with a number of built-in applications, but additional applications can be installed from a number of sources, including various official and communitysoftware repositories, anddeb files through either the built-inpackage manager "Application manager", or the Advanced Packaging Tool anddpkg. Bundled applications include theMozilla-basedMicroB browser,Macromedia Flash player,Gizmo5, andSkype.[29]
Due in part to thefree andopen source nature ofLinux and Maemo,porting applications to Maemo is a straightforward procedure. Because of this, there are many third-partyapplications available for the platform. Some applications are original software written specifically for Maemo, while other applications are straight ports of existing Linux programs. Some notable software includes:

Other media types, such as the audio format .OGG, can be added with the use of community plug-ins.
Software can be developed inC using the MaemoSDK,Java (which is supported by the Jalimo JVM),[35]Python,Ruby,Mono, Vala, Perl and Pascal.
The Maemo SDK is based around theDebian-orientedScratchbox Cross Compilation Toolkit, which provides asandbox environment in which development may take place. Scratchbox usesQEMU to emulate an ARM processor orsbrsh to remotely execute instructions. Scratchbox-compatible rootstraps are available for bothx86 andARM, so the majority of development and debugging takes place on x86, with final packaging being for ARM.[36]
As a new feature of the Maemo operating system, Maemo 5 offers theQt library as a community-supported component, alongside the officially supportedGTK+ backend. This will change with the Harmattan release, which will add the Qt library as the default, with GTK+ becoming community-supported.[37] The programming languagesPython,C andC++ will also be supported.
The Nokia Developer Wiki community has articles about Qt development, and includes tutorials and articles about development for the Maemo operating system.
The Maemo operating system is designed forNokia Internet Tablets, which feature very similar specifications to Nokia's high-endN-series andE-series cellphones, withTIOMAPARMSoCs, large screens, and expandable internal storage.[38] Although the highly optimized, hardware-specific nature of Maemo renders its operation on non-Internet tablet hardware very difficult, most of the important non-proprietary parts of the operating system, along with some of the available third-party applications, are actively being packaged for Debian and are available for use on other distributions, which will open up a large range of other hardware options.[39]
Nokia runs the Maemo operating system on theNokia N900 andNokia N9.[citation needed]


Shipped with the770 in November 2005, this is the original Internet tablet OS. It came bundled with theOpera web browser,Flash 6, basicemail andRSS clients,audio andvideo players,PDF and image viewers, a graphical Advanced Packaging Tool, front-end (dubbed simply "Application manager"), and a variety of simple games and utilities.[40]

On 16 May 2006, Nokia announced a new version ofInternet Tablet OS,[41] which was subsequently released as abeta version for the770 on 9 June 2006 and as a production version on 20 June 2006.[42] The update featured improved performance and stability, a built-in Google Talk client, a refreshed look, and a new full-screen finger keyboard. Because of significant API and architecture changes, existing applications required recompiling. It is the last officially supported Internet Tablet OS release for the 770.
Also included was the ability to support 2 GB RS-MMC cards (FAT formatted). TheLinux kernel was upgraded to 2.6.16, with the associated patches for the OMAP platform included. This new version useskernel preemption for improved interactivity.

OS2007 was released and bundled with theN800 on 8 January 2007, after its unveiling at theLas VegasCES 2007 summit. It featured significant bug fixes and performance improvements in almost all areas of the OS, bringing updated versions of the Opera web browser andAdobe Flash Player 7, an updated interface and various API and library updates.

OS2008 was released with theN810 in November 2007, based on Linux 2.6.21, and featuringMicroB, a newMozilla-based web browser that replaces Opera. It also features integratedSamba file sharing and additional support for Windows Media Player Formats andH.264 and improved support for USB devices,[43][44] among other incremental UI improvements (particularly in the direction of finger-friendliness).[45]Dynamic frequency scaling (between 165 MHz and 400 MHz) was also implemented, which gave the N800 a 70 MHz speed increase.[46]
Diablo is the codename for the OS2008 Feature Upgrade (corresponding to Maemo 4.1),[47] released in June 2008.[48] Major features include significant improvements to the built-in Application manager, incremental operating system upgrades without reflashing ("Seamless Software Update", SSU),Modest as the default mail client, and a new version of theMicroB browser with better performance and some interface improvements (though still based on the sameGecko release as Chinook's MicroB).[49][50] Diablo also included an implementation of the WiMAX stack for the short-lived N810 variation calledN810 WiMAX edition.
SSU, in particular, is one of the most significant parts of the Diablo release, as it eliminates the flash-based upgrade system of previous Maemo releases which required the user to completely wipe their device with each upgrade. With SSU, the user can receive "over-the-air" updates. This also decouples bundled software updates from the major system updates, as was required with the flash-based method, so Nokia can release more frequent updates to individual packages than before.[51]
The first SSU update was pushed on 11 August 2008, and brought Diablo up to version 4.2008.30-2. The update primarily features MicroB, Modest, and connectivity framework updates as well as a number of other minor bugfixes.

Maemo 5, also known as Fremantle,[47] is the default operating system on theNokia N900. The release features a much more finger-friendly and consistent user interface, and anX-server based onXorg rather thanKDrive.[52][53] It also features several new technologies, including theTracker search system,PulseAudio (replacingESD), the OHM hardware management daemon, the gUPnPUPnP framework, enhanced location framework, andUpstart. Several existing technologies have also been updated, includingGecko,BlueZ,gstreamer (will includeOpenMAX),GTK+, andTelepathy.[54][55]
Maemo 5 comes with new hardware, theNokia N900 featuring aTexas InstrumentsOMAP3SoC, with anHSPA modem and HD camera, which provides significant improvements in speed,3D acceleration, and media playback. Nokia decided that the commercial Maemo 5 platform releases will not be available on N800/N810 hardware, for compatibility reasons.[56] An open source Linux project calledMer, a variant of Maemo, has been formed to provide an alternative, fully open operating system for mobile devices including the Nokia N800 and N810.[57]
Unlike most smartphones, the end-user is able to gainroot access by installing an application, such as the "rootsh",[58] and then issuing the appropriate command in the terminal in Maemo 5.[59] The device does not need to be unlocked or "jailbroken" in order to install an unsupported application. The UK cellular operator Vodafone has its own branded, somewhat more restricted version of the Maemo 5 operating system. Users can flash (change) to the global variant of the operating system if they wish.
The Maemo 5 operating system comes preloaded with a variety of applications such as:
Nokia expects the open source community to play a large part in the development of applications for Maemo 5.[63] For example, Nokia has launched a contest at the onedotzero festival in London called PUSH N900 aimed at designers, artists, hackers and modders. The contest invites participants "to connect the N900 to something you love."[64]
More than 1500 additional applications (mostly free to download and use) have been created by third-party developers.[65]
This section needs to beupdated. Please help update this article to reflect recent events or newly available information.(January 2020) |
| Maemo Leste (Maemo 7) | |
|---|---|
| Developer | Maemo Leste open-source community |
| OS family | Unix-like |
| Working state | Active |
| Source model | Open source |
| Marketing target | Operating system for smartphones |
| Update method | ROM flashing or dpkg (package manager) |
| Package manager | dpkg |
| Supported platforms | ARM, ARM64,x86-64 |
| Kernel type | Monolithic (Linux) |
| Default user interface | Hildon |
| Official website | maemo-leste |
Maemo Leste is an operating system currently in development. It is a modernised and liberated version of Maemo 5, rebased on top ofDevuan with a mainlineLinux kernel. It aims to develop "An independent mobile operating system focused on trustworthiness."[66] The first operating system images were released in February 2018.[67] The latest release supports phone calls and SMS messages on a number of devices, including theNokia N900 (some integration and bug fixes remain) and theMotorola Droid 4, as announced in the project's Five-year anniversary blog post.[68]
It is currently in a usable state with support for various targets such as the N900,Motorola Droid 4 and thePinePhone. Unlike other distributions, Maemo Leste targets devices where it can be used with upstream Linux kernels - to offer proper updates to both functionality and security. The operating system aims to be entirely open source, and even re-implements certain closed components that were present in Maemo Fremantle.
Maemo Leste is entirely community-developed, and its developers are active on#maemo-lesteconnect on theLibera Chat IRC network.
Nokia's release of theN800 in January 2007 included Internet Tablet OS 2007. OS2007 ran only on the N800 and Nokia had no plans to release it for the770; however feedback from disgruntled 770 owners[69] led Nokia to release an unsupported hybrid of OS2006 and OS2007, dubbed Internet Tablet OS 2007 Hacker Edition, in February 2007.[70] OS2007HE combined the binary parts of OS2006 with most of the updated libraries and user-space applications of OS2007.
Nokia followed the release of the N810 and OS2008 in November 2007 with the OS2008 Hacker Edition for the 770 on 14 February 2008, employing a similar method to the OS2007HE release to create a hybrid between OS2006 and OS2007. The Hacker Editions allow 770 users to access the latest Internet Tablet OS releases and third-party software, although due to the 770's hardware limitations and the increased CPU requirements of OS2008, performance is inferior to that of OS2007 HE in most areas.[71]
In addition to the officially supported Hildon environment that comes standard on the tablets, several alternate desktop systems are available. Penguinbait, a member of the Internet Tablet Talk community, has successfully portedKDE 3,[72]Openbox,[73] andXfce[74] to the N800 and N810 (the N770 is able to run an early version of the KDE port). A port ofKDE Plasma Workspaces were developed.[75]LXDE is the default desktop for theEasy Debian distribution, which is installed as a single application under Maemo but provides access to the full range of software in the ARMDebian distribution (including GIMP, Iceweasel/Firefox and OpenOffice)[33] via achroot environment.

In the wake of the release of the MeeGo code base, there are two main community efforts to bring MeeGo to the current Maemo devices (N800, N810, and N900), as Nokia has launched the N9, which is powered by MeeGo. These efforts are the MeeGo adaptation for the N800 and N810 devices,[76][77] and the MeeGo to N900 project.[78]
Harmattan was originally planned as a transitional operating system developed by Nokia, meant to be a bridge between Nokia's Maemo and the MeeGo project. It is still using the APT package manager for applications, but the graphical user interface and major parts of the system were improved, rewritten from scratch or rebased on top of Meego frameworks. It is heavily using theQt libraries instead ofGTK+/Hildon, and introduced a new UI paradigm based on Swipe gestures, done from the edge of the screen.[79][80] After problems with the original Meego project, Nokia decided to rename Harmattan to Meego/Harmattan and shipped their N9 with this OS.
Mer is a completelyfree and open-source software distribution targeting mobile and embedded systems, first developed for reimplementing Maemo in the open, and then rebased on top of the MeeGo tools.
In January 2008, Nokia began the process of acquiringTrolltech, the developer of theQt application framework. Nokia has since announced plans for the Qt libraries to be bundled with Maemo byQ4 2008, though without a platform-specific "hildonized" user interface as is offered withGTK (meaning Qt applications will look different from hildonized GTK applications).[81][82] This will make porting of Qt applications to the platform easier for developers, and make new applications available to users. Qt support onS60 devices will likely lead to cross-platform application sharing between the two platforms.[83][84] The announcement has been met with mixed reactions in the developer community.[85][86]
Maemo codenames are named for winds. For example, the latest release, codenamed "Fremantle", is a reference to theFremantle Doctor, the Western Australian vernacular term for the cooling afternoon sea breeze which occurs during summer months in south west coastal areas of Western Australia.
| Version | Codename | Build identifier | Release date | First device shipped with | Notes | Devices Supported | |
|---|---|---|---|---|---|---|---|
| OS2005 | 1.1 | - | 2.2005.45-1 | November 2005 | 770 | 770 | |
| 3.2005.51-13 | December 2005 | 770 | |||||
| 5.2006.13-7 | April 2006 | 770 | |||||
| OS2006 | 2.0 | Mistral | 0.2006.22-21 | May 2006 | Beta release | 770 | |
| 1.2006.26-8 | May 2006 | 770 | |||||
| 2.1 | Scirocco | 2.2006.39-14 | November 2006 | 770 | |||
| 2.2 | Gregale | 3.2006.49-2 | January 2007 | 770 | 770 | ||
| OS2007 | 3.0 | Bora | 2.2006.51-6 | January 2007 | N800 | 770*, N800 | |
| 3.1 | 3.2007.10-7 | March 2007 | 770*, N800 | ||||
| 3.2 | 4.2007.26-8 | July 2007 | 770*, N800 | ||||
| 4.2007.38-2 | October 2007 | SDHC corruption fix | 770*, N800 | ||||
| OS2008 | 4.0 | Chinook | 1.2007.42-18 | November 2007 | N810 | (N810 only) | N810 |
| 1.2007.42-19 | November 2007 | Kernel upgrade only (N810 only) | N810 | ||||
| 1.2007.44-4 | November 2007 | Beta release (N800 only) | N800 | ||||
| 2.2007.50-2 | November 2007 | 770*, N800, N810 | |||||
| 2.2007.51-3 | January 2008 | NOLO (Nokia bootloader) upgrade only | 770*, N800, N810 | ||||
| 4.1 | Diablo | 4.2008.23-14 | June 2008 | Adds SSU (Seamless Software Update) support | N800, N810 | ||
| 4.2008.30-2 | August 2008 | First SSU update | N800, N810 | ||||
| 4.2008.36-5 | September 2008 | N800, N810 | |||||
| 5.2008.43-7 | December 2008 | N800, N810 | |||||
| Maemo 5 | 5.0 | Fremantle | 1.2009.42-11 | November 2009 | N900 | Bundled officially supported Qt libraries (PR1.2), emphasis on finger use rather than stylus use | N900 |
| 1.2009.44-1 | January 2010 | Preparatory release for the 2.2009.51-1 firmware, released only OTA (Over-the-air) to 1.2009.42-11 users | N900 | ||||
| 2.2009.51-1 | January 2010 | Also known as PR1.1.[87] | N900 | ||||
| 3.2010.02-8 | February 2010 | Preparatory release for the PR1.2 firmware. Also known as PR1.1.1.[88] | N900 | ||||
| 10.2010.12-9 | May 2010 | PR1.2, Hong Kong only, with Chinese input methods,[89] with Chinese input support.[90] | N900 | ||||
| 10.2010.19-1 | May 2010 | PR1.2, Skype and Google video calls, Facebook IM chat, improved Maps, portrait browsing, improved email, Qt 4.6 enabling new applications[90] | N900 | ||||
| 20.2010.36-2 | 25 October 2010 | PR1.3, Qt 4.7.0, full OVI-Suite support, updated kernel with kexec patches for MeeGo, bug fixes. | N900 | ||||
| 21.2011.38-1 | 26 October 2011 | PR1.3.1, Fixes DigiNotar issue and control panel applet security issue | N900 | ||||
| MeeGo | 1.0 | Arlington | 1.0 | 26 May 2010 | Primarily a Netbook release; only a code drop was released for mobile devices (the Nokia N900). | N900, etc. | |
| 1.1 | Irvine | 1.1 | 28 October 2010 | Touch-based devices support proposed with the Handset UX[91] | Aava and Nokia N900 | ||
| 1.2 | Harmattan | 1.2011.34-2 | 19 May 2011 | N950 | Bundled officially supported Qt libraries, begins the transition to MeeGo, includes MeeGo libraries but core system is Maemo. | N9, N950 |
*:Hacker Editions, Nokia-released, but community-maintained. Primarily used by developers to continue developing programs while using older hardware.
In 2008 and 2009, Maemo developers and users gathered at the Maemo Summit, the registration for which was free. Each participant got a badge and a Maemo T-shirt.
The 2009 Maemo Summit was held inAmsterdam on 9 October.[92] The first day was the Nokia day, with the other two days dedicated to community contributions. Nearly 400 developers attended the summit. Nokia gave out 300N900 devices to independent developers during the summit.
The 2009 Maemo Summit was also the last Maemo Summit since MeeGo was launched. The event was replaced by the MeeGo Conference.