|This article needs additional citations for verification. (November 2014)|
|OS family||Linux (Unix-like)|
|Source model||Open source with added components of third parties which can be of other licences also.|
|Latest release||188.8.131.52 / November 3, 2015|
|Marketing target||Mobile and general purpose|
|Available in||English for development, SDK & supporting documentation; over 21 national languages versions of UI in user's device|
|Package manager||RPM Package Manager|
|Platforms||32-bit ARM and 64-bit x86|
|Kernel type||Monolithic (Linux)|
|License||For end-user the EULA defines used open source and other licences components with a component's origin.|
|Preceded by||MeeGo by alliance of Nokia & Intel|
Sailfish OS (also styled SailfishOS) is a Linux-based general-purpose operating system, widely known as a mobile operating system combining the Linux kernel for a particular hardware platform use, the open source Mer core middleware, the proprietary UI contributed by Jolla, and other third party components some of which are free software, and others of which are proprietary.
Sailfish is being developed by Jolla in permanent cooperation with the Sailfish community, the Mer project and its community, corporate members of the Sailfish Alliance and various open community members. The Sailfish community makes development requests and decides development priorities by voting. The Mer project receives contributions from the Jolla community, and Mer contributes middleware for Jolla, thereby assuring compatibility of both projects.
- 1 History and development
- 2 Software architecture
- 3 Software overview
- 4 Hardware overview
- 5 OS development status
- 6 See also
- 7 See also links
- 8 References
- 9 External links
History and development
The OS is an evolved continuation of the Linux MeeGo OS previously developed by alliance of Nokia and Intel. The MeeGo legacy is contained in the Mer core in about 80% of its code; the Mer name thus expands to MEego Reconstructed.
Jolla and MERproject.org follow a meritocratic system to avoid the mistakes that lead to the MeeGo project's then-unanticipated discontinuation.
Sailfish 2.0 is currently in development for mobiles and the announced Jolla Tablet. Sailfish OS 2.0 is developed with a continuous integration model, with the aim to provide monthly software updates to all Sailfish OS users and development partners. Customers using Sailfish 1.x with any device can upgrade to Sailfish 2.0.
The main elements for Sailfish OS 2.0 include:
- Technically stronger OS core
- Improved Android application compatibility
- Support for Intel architecture, including the Intel Atom x3 processor
- Design to provide visibility in the UI for digital content providers and to enable OS level integration for mobile commerce
- Strong multitasking (one of the most important advantage of the OS and declared to be the best one at market)
- Strong privacy and personalization features
- Enhanced user interface with new UI/UX features, including simpler swipe access to main functions, enhanced notifications and events views.
The Sailfish OS and the Sailfish software development kit (SDK) are based on the Linux kernel and Mer. Sailfish OS includes a multi-tasking graphical shell called "Lipstick" built by Jolla on top of the Wayland display server protocol. Jolla uses free and open-source graphics device drivers but the Hybris library allows use of proprietary graphics device drivers for Android. Jolla's stated goal is for Sailfish to be open source eventually.[needs update?]
Targeted device classes
Sailfish is commonly known to be targeted at mobile devices, although like MeeGo previously and as part of its legacy because around 80% of Sailfish code is de facto MeeGo code, Sailfish can be used with any device as it is a complete general-purpose Linux OS, for devices such as IVI, navigation, smart TV, desktops and notebooks, yachts, automotive, e-commerce, house goods, measuring and control equipment, intelligent building equipment etc.; See use cases of original MeeGo to compare. See the Devices section for devices that run the Sailfish OS.
Sailfish OS SDK
The Sailfish OS SDK was announced in Helsinki at Slush in 2012, and the alpha was published in February 2013. The SDK, installation and coding tutorials are available for free download from the Sailfish OS website although the overall license is not open source.
Sailfish SDK uses Qt with VirtualBox for development, compiling and emulation purposes, in contrast to simulation method. This technique allows compilation on the Sailfish OS and full testing of developed software in the virtual machine, emulating but not simulating the whole Sailfish OS. The technique also separates development activities and side effects from everything else running on the host particular computer, leaving it undisturbed by developments and tests. According to Jolla, development with Sailfish SDK is development on Sailfish OS itself; there are no differences between developed software appearance and behaviour in the SDK and on a device running Sailfish OS.
The availability of source code to the SDK allows shaping and rebuilding for companies' or developers' specific needs, creating a context-specific environment that is set once and needs no preparation when the device is booted. The SDK runs on the operating systems Android, 32- and 64-bit versions of Linux, 64-bit versions of OS X, and Microsoft Windows. It can be used for compiling software for Sailfish OS devices from Linux sources. Its general console/terminal mode follows a commonly used standard. Compatible binaries or libraries can also be used.
Application programming interfaces
Sailfish OS uses open source Qt APIs (Qt 5, QtQuick 2 etc.) and a closed source Sailfish Silica for the UI. Standard Linux APIs are provided by the Mer Core.
Public "Early access" for beta testers and developers
After positive experiences with pushing early updates to a small group of opt-in users for Sailfish Update 9 and for the connectivity hotfix, Jolla has allowed all interested parties to try a new version of Sailfish OS about 1–2 weeks before official release, in a program called "Early access". It is expected to be useful for developers and technically minded users, and a step towards more community integration into the Sailfish release process, including improvement of quality by identifying critical issues which only show up in certain environments or device setups, before rolling the update out to the wider user audience. As an added bonus, it provides a window for developers to test their applications on new releases of Sailfish OS.
In the long term it will help Jolla to establish a developer program with early release candidate access for registered developers, and to have more community involvement in platform development. The first detail Jolla is hoping to learn from this is how it can gather feedback from a large audience in a reasonable way.
Basic details about the early access update:
- The early release access is meant primarily for advanced users and developers.
- To sign up for the program there is a checkbox in the Jolla accounts profile page.
- Installed early-access release cannot be downgraded. The only way to downgrade from early access releases is to do a factory reset after removing the sign up check from the user's account profile.
- Early access releases should be considered "reasonably stable". Issues found during that period will either be fixed, or added to "known issues" on the release notes.
- Signing up for the early access releases will not void warranty 
Sailfish OS has three naming conventions: version number, update number and version name. Each Sailfish OS version is named after a Finnish lake.
|Software version||Release date||Name|
|27 November 2013||Kaajanlampi|
|v184.108.40.206||9 December 2013||Update 1, Laadunjärvi|
|v220.127.116.11||16 December 2013|
|v18.104.22.168||27 December 2013||Update 2, Maadajävri [sic]|
|v22.214.171.124||31 January 2014||Update 3, Naamankajärvi|
|v126.96.36.199||17 March 2014||Update 4, Ohijärvi|
|v188.8.131.52||11 April 2014||Update 5, Paarlampi|
|v184.108.40.206||24 April 2014|
|v1.0.6.x||N/A||Update 6 was merged into Update7|
|v220.127.116.11||9 June 2014||Update 7, Saapunki|
|v18.104.22.168||14 July 2014||Update 8, Tahkalampi|
|v22.214.171.124||6 October 2014|
|23 October 2014||Update 9, Uitukka|
|24 October 2014|
|v126.96.36.199||18 December 2014||Update 10, Vaarainjärvi|
|v188.8.131.52||19 December 2014|
|v184.108.40.206||19 February 2015||Update 11, Yliaavanlampi|
|v220.127.116.11||25 February 2015|
|v1.1.3.x||N/A||Update 12 was merged into Update 13|
|v18.104.22.168||15 April 2015||Update 13, Äijänpäivänjärvi|
|v22.214.171.124||4 May 2015|
|v1.1.5.x||N/A||Update 14, dropped during Release Candidate phase|
|v126.96.36.199||8 June 2015||Update 15, Aaslakkajärvi|
|v188.8.131.52||15 July 2015||Update 16, Björnträsket|
|v184.108.40.206||31 August 2015|
|v220.127.116.11||24 September 2015||Update 17, Eineheminlampi|
|v18.104.22.168||22 October 2015|
|v22.214.171.124||3 November 2015||Update 18, Saimaa|
For readers not speaking Finnish it might be difficult to remember the Finnish words. It might be helpful to note that the names start in the order of the Finnish alphabet. R, Å, and Ö are skipped with updates 6, 12, and 14.
A number of projects successful on other platforms are migrating to become native Sailfish OS applications. This gives abandoned Harmattan or Symbian projects a new life. Porting Qt-written projects may take only a few hours. This process is supported; for this purpose sailfish.org collects and publishes an online compendium of knowledge, links and instructions on:
- software porting and migration to Sailfish OS
- similarities and differences between Harmattan and Sailfish
- guides how to port MeeGo 1.2 Harmattan applications for the Nokia N9 to the Sailfish OS devices
- porting framework (Qt 4 to Qt 5, SDL 1.2 is SDL 2.0, Debian packaging is RPM packaging)
- application porting tutorials and examples (QtQuick QML applications, the Flickr application Qt 5, SDL / OpenGL ES applications)
- Qt Quick Components map to Sailfish Silica.
It gathers and links development resources of different kinds and origins.
As Sailfish OS is a GNU/Linux-based operating system, it is also possible to install other GNU/Linux applications on it, including many kinds of compatible Linux sources for compilation or directly binaries.
Using Android software running on Sailfish OS
Sailfish in addition to its native applications is able to run most applications for Android. Built in Alien Dalvik plays role of Android Compatibility Layer. It emulates, but not simulates, Android OS, and the environment is recognised as such by Android software. The Android software runs at native speed without any perceivable lag. Sailfish multitasking can be enabled with native Sailfish software on the fly, and vice versa. In collaboration with Myriad Group which has created the Alien Dalvik module, which was subsequently implemented into the Sailfish Operating system, providing the necessary environment to execute native android apps.
Advantages of the Mer standard
Sailfish OS can be used on any hardware with Linux kernel support and compatible with the middleware of the Mer core stock distribution. A list of devices running ported this way has been created by enthusiasts from community. Instead of designation to a specific reference hardware platform, a VirtualBox implementation with the Sailfish OS SDK is available for development on popular operating systems Linux, OS X and Windows. This virtual machine implementation contains the whole Sailfish OS isolated from local resources and the local OS to enable comfortable evaluation of the behaviour and performance of coded or ported software before deployment on real devices.
Devices running Sailfish OS
- Acer Iconia Tab W500
- Google Nexus One
- Google Nexus 4
- Google Nexus 5
- Google Nexus 7
- HP Mini
- HTC Desire HD
- HTC Desire Z
- Nokia N950 and Nokia N9 - during several presentations given by Jolla
- O2 Joggler
- OnePlus One
- PackardBell Butterfly Touch
- Raspberry Pi2 - because it uses the ARM Cortex-A7 CPU. (Raspberry Pi1's ARMv6 CPU has a different architecture, and Sailfish requires ARMv7.)
- Samsung Galaxy S3
- Samsung Galaxy Nexus
- Sony Ericsson Xperia Pro codename Iyokan
- Sony Xperia SP 
- Xiaomi Mi2
Sailfish runs on the following devices as the OS licensed by its manufacturers including:
OS development status
Sailfish OS is promoted and supported by the open Sailfish Alliance established in 2011, a group established to unite OEM and ODM manufacturers, chipset providers, operators, application developers and retailers. On 16 August 2012, the user interface was reported to be ready for release. Jolla's CEO Jussi Hurmola stated in a ZDNet interview, " ... Our UI is ready now, we haven't released it yet, we will save it for the product launch and the platform is getting up now so the project looks pretty nice".
The next day, Jolla's CEO Marc Dillon said on social networking website Twitter that the company had reached the first development target. Sailfish was debuted by the Jolla team, including a worldwide internet stream, as a demo of the OS, and the UI and SDK during the Slush event in Helsinki, Finland, on 21–22 November 2012. The alpha stage of Sailfish OS SDK was published at the end of February 2013 and was made available for free download.
On 16 September 2013, Jolla announced that its OS had been made compatible with Android applications and hardware. The first telephone to use it was launched on 27 November 2013 at a pop-up DNA Kauppa shop in Helsinki. The first 450 telephones were sold at this event, while the rest of the preordered devices were shipped shortly after.
On 18 May 2015, it was announced that the Russian government intends to make it official for use in its country.
In September 2015, version 126.96.36.199 "Eineheminlampi" was released, which added the main elements of the revamped Sailfish OS 2.0 user interface.
Sailfish 2.0 was launched with the Jolla Tablet, and existing devices can receive an update to Sailfish 2.0.
- Jolla Tablet
- Saera (intelligent personal assistant) for Sailfish OS
- Sailfish Alliance
- Nokia N9
- Comparison of mobile operating systems
- Building Sailfish OS packages manually (including porting over existing applications that use a different build system)
- "Sailfish End User License Agreement". Jolla. Retrieved 30 November 2014.
- "Sailfish License Information". Jolla. Archived from the original on 1 January 2015.
- "Packaging Applications for Distribution". SailfishOS.org. SailfishOS.org. Retrieved 24 February 2014.
- Wachter, Bernd (Aard). "[Official announcement] Early access to SailfishOS releases". https://together.jolla.com. https://together.jolla.com. Retrieved 28 August 2015.
- Chief Editor at JollaTides. "Editorial: #Jolla Chairman, Antii Saarnio Is Open To Nokia Collaboration". jollatides.com. JollaTides. Retrieved 22 November 2014.
- "What is Sailfish OS? 5 Things to Know".
- Holwerda, Thom (30 January 2014). "From Providence to Lahaina: the Jolla review". Retrieved 21 April 2014.
- "Jolla Brings Wayland Atop Android GPU Drivers".
- "Jolla OS Will Run Android Apps Says CEO Jussi Hurmola". 2012-08-20.
- "Sailfish OS SDK Alpha released". Tizen Experts. Retrieved 21 February 2015.
- "Developer FAQ". Retrieved 23 March 2015.
- "SDK Installation - sailfishos.org". Retrieved 20 February 2015.
- "Software Development Kit". Sailfish OS. Retrieved 21 February 2015.
- "[Qt-components] QML component APIs and techniques". Retrieved 20 February 2015.
- Suomalainen, Aleksi (28 November 2013). "Jolla system updates will be named after a Finnish lake". The Jolla Blog. Retrieved 24 April 2014.[unreliable source?]
- Wachter, Bernd (9 December 2013). "[SailfishDevel] [Update] Changelog for SailfishOS update 1 (188.8.131.52)". devel (Mailing list). Retrieved 24 April 2014.
- Wachter, Bernd (27 December 2014). "[Release notes] Software version 184.108.40.206, Maadajävri". Jolla. Retrieved 24 April 2014.
- Wachter, Bernd (31 January 2014). "[Release notes] Software version 220.127.116.11, Naamankajärvi". Jolla. Retrieved 24 April 2014.
- bijjal (17 March 2014). "[Release notes] Software version 18.104.22.168, Ohijärvi". Jolla. Retrieved 24 April 2014.
- bijjal (11 April 2014). "[Release notes] Software version 22.214.171.124, Paarlampi". Jolla. Retrieved 24 April 2014.
- Wachter, Bernd (24 April 2014). "[hotfix] MMS changes for Paarlampi (126.96.36.199)". Jolla. Retrieved 24 April 2014.
- Bijjal, Soumya (22 May 2014). "[Official announcement] Next OS update in early June". Jolla. Retrieved 22 May 2014.
- bijjal (9 June 2014). "[Release notes] Software version 188.8.131.52, Saapunki". Jolla. Retrieved 9 June 2014.
- bijjal (14 July 2014). "[Release notes] Software version 184.108.40.206, Tahkalampi". Jolla. Retrieved 14 July 2014.
- bijjal (6 October 2014). "[Release Notes] Security Hotfix for Tahkalampi 220.127.116.11". Jolla. Retrieved 6 October 2014.
- bijjal (23 October 2014). "[Release notes] Software version 18.104.22.168, Uitakka". Jolla. Retrieved 24 October 2014.
- bijjal (24 October 2014). "[Release Notes] Hotfix for opt-in Update9, version 22.214.171.124". Jolla. Retrieved 3 November 2014.
- bijjal (18 December 2014). "[Release notes] Software version 126.96.36.199, Vaarainjärvi". Jolla. Retrieved 18 December 2014.
- Bijjal, Soumya (13 February 2015). "[SailfishDevel] Update on SailfishOS roadmap". Retrieved 13 February 2015.
- Wachter, Bernd (16 April 2015). "[release notes] 1.1.4 / Äijänpäivänjärvi, early access". Jolla. Retrieved 16 April 2015.
- Dillon, Marc (19 March 2015). "Jolla iteration 3: finalizing the first Jolla Tablet demo". Retrieved 19 March 2015.
- "[release notes] 1.1.6 / Aaslakkajärvi, early access". Jolla. 8 June 2015. Retrieved 14 June 2015.
- "[release notes] 1.1.7 / Björnträsket". Jolla. 15 July 2015. Retrieved 15 July 2015.
- "[release notes 1.1.9/Eineheminlampi". Jolla. 24 September 2015. Retrieved 9 October 2015.
- "[release notes 2.0.0 / Saimaa". Jolla. 3 November 2015. Retrieved 3 November 2015.
- "Porting/Hartmattan - SailfishOS". Archived from the original on 6 October 2014. Retrieved 2 May 2015.
- McAllister, Neil (2013-11-15). "Jolla's Android-aping Sailfish OS smartphones to land in November". The Register (Situation Publishing). Retrieved 16 November 2013.
- merproject.org community, Sledge. "Adaptations/libhybris". https://wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015.
- Sfiet_Konstantin. "Sailfish on an Acer Iconia tab W500". vimeo.com. Vimeo.com DMCA. Retrieved 21 April 2013.
- vgrade100. "Sailfish on Exopc #merproject". youtube.com. vgrade100. Retrieved 21 April 2013.
- vgrade100. "SailfishOS for Android on Nexus One". youtube.com. vgrade100. Retrieved 25 May 2014.
- Eilimö, Jonne. "Video: Sailfish OS running on a Google Nexus 4". Retrieved 23 January 2013.
- -, nick: carepack. "[ROM][19Jun][GNU/Linux] Sailfish OS 188.8.131.52 (community port)". http://forum.xda-developers.com. xda-developers.com. Retrieved 28 August 2015.
- vgrade100. "SailfishOS for Android on Nexus 5". youtube.com. vgrade100. Retrieved 25 May 2014.
- merproject.org community, Siteshwar. "Adaptations/libhybris/Install SailfishOS for hammerhead". https://wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015.
- Carlos_Gong （产品观察家）. "Retrieved 15 July 2013". Geekpark.net. Retrieved 7 August 2013.
- Junnuvi, merproject.org community. "Adaptations/libhybris/Install SailfishOS for grouper". https://wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015.
- "Sailfish". Mer Wiki. Retrieved 19 November 2013.
- adampigg (2 September 2014). "#sailfish on the HTC Desire HD! @JollaHQ @lbt_ @vgrade http://t.co/xVWSlquHLA" (Tweet). Retrieved 5 September 2014.
- PiggZ. "Sailfish for the HTC Desire HD". http://forum.xda-developers.com/htc-desire-hd/development/sailfish-htc-desire-hd-t2882123. xda-developers.com. Retrieved 28 August 2015.
- sledgeSim (23 September 2014). "First #hwkbd phone #DesireZ! Fancy porting mobile #Linux? Waiting for #Jolla in your country? http://t.co/GEKuYYFZtV http://t.co/88fBjYTUEb" (Tweet). Retrieved 23 September 2014.
- vgrade100. "Sailfishos running on O2 Joggler. Modesetting xorg driver on gma500_gfx kernal driver with mesa-llvm". youtube.com. vgrade100. Retrieved 21 April 2013.
- vgrade100. "SailfishOS pre-alpha1 on #oneplus one". youtube.com. vgrade100. Retrieved 22 March 2015.
- Locusf. "Installation". SailPi Run Sailfish OS on your Rasberry Pi. Locusf. Retrieved 26 February 2015.
- "Sailfish on a Raspberry Pi". together.jolla.com. Jolla. Retrieved 26 February 2015.
- "Sailfish OS su Nexus 4, Samsung Galaxy S3 e Xiaomi Mi2 - MWC 2014". YouTube. Retrieved 21 March 2014.
- Pegoraro, Ilan. "Sailfish OS Port for Samsung Galaxy S3". http://impegoraro.github.io. http://impegoraro.github.io. Retrieved 28 August 2015.
- beidi. "[August 3rd]SailfishOS for Galaxy Nexus (Alpha)". Retrieved 15 October 2014.
- Deordiev, Igor. "Sailfish OS boot-up on Samsung Galaxy Nexus (i9250)". Retrieved 15 October 2014.
- merproject.org community, Mugna. "Adaptations/libhybris/Install SailfishOS for maguro". https://wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015.
- Ruoho, Simo. "Install Sailfish OS on Sony Ericsson Xperia Pro [How-to] Renew an old Android Phone with a new operating system". http://reviewjolla.blogspot.de. Simo Ruoho. Retrieved 10 August 2015.
- -, merproject.org community. "Adaptations/libhybris/Install SailfishOS for huashan". https://wiki.merproject.org/wiki/Adaptations/libhybris. merproject.org. Retrieved 28 August 2015.
- "Jolla". Retrieved 19 November 2013.
- Tung, Liam. "Jolla's MeeGo UI is ready to go - and it's on the hunt for mobile talent". ZDNet.com. 2012 CBS Interactive. Retrieved 16 August 2012.
- Bhushan, Amarendra. "Jolla Sailfish OS Now Supports Android Hardware And Applications". CEOWORLD Magazine. Retrieved 16 September 2013.
- "First Jolla Phone with Sailfish OS to launch on November 27th".
- Carrillo, Gabriel. "Russia Launches Its Own Phone Operating System". Phone Tips. Gabriel Carrillo. Retrieved May 20, 2015.
- Official website
- Jolla website
- Programming for Sailfish OS with the Sailfish OS SDK - by Leszek Lesner
- FlyingSheep on Sailfish - good reading for developers and porting from MeeGo Harmattan to Sailfish OS