| Sailfish OS | |
|---|---|
Sailfish OS version 2.0.2.51 running onIntex Technologies Aqua Fish | |
| Developer | Jolla |
| Written in | Qt/QML,C++ |
| OS family | Linux (Unix-like) |
| Working state | Current |
| Source model | Proprietary, withopen-source components[1][2] |
| Initial release | 16 November 2013[3] |
| Latest release | 5.0[4] |
| Repository | |
| 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[5] |
| Supported platforms | 32-bit and64-bitARM and 64-bitx86 |
| Kernel type | Linux kernel |
| Userland | GNU |
| License | For end-user the EULA defines used open source and other licences components with a component's origin.[1][2] |
| Preceded by | MeeGo by alliance ofNokia &Intel |
| Official website | sailfishos |
Sailfish OS is anoperating system formobile phones developed byJolla. It isLinux-based with a proprietarycompatibility layer forAndroid and customuser interface by Jolla.
The OS first shipped with the originalJolla Phone in 2013; while its sale stopped in 2016, it was supplied with software updates until the end of 2020. It also shipped with Jolla Tablet in 2015[6] and from other vendors licensing the OS.[7] The OS is ported by community enthusiasts to third-party mobile devices includingsmartphones[8] andtablet computers.[9] Sailfish OS can be used for many kinds of devices.
This sectiondoes notcite anysources. Please helpimprove this section byadding citations to reliable sources. Unsourced material may be challenged andremoved.(December 2022) (Learn how and when to remove this message) |
The OS is an evolved continuation of the LinuxMeeGo OS previously developed by alliance ofNokia andIntel which itself relies on combinedMaemo andMoblin. This base is extended by Jolla with a custom user interface and default applications.[10]
The User Interface is very much based on gestures and pulley menus.[11]
TheSailfish OS and the Sailfishsoftware development kit (SDK) are based on theLinux kernel and a standard Linux stack.[12][13][14]Sailfish OS includes a multi-taskinggraphical shell called "Lipstick" built withQt by Jolla on top of theWayland display server protocol.[15]
It uses standard Linux middleware likeSystemd,Pulseaudio and Qt.Glibc is the included C Library.[16] The first Jolla Phone in 2013 usedBtrfs for the filesystem, afterwardsExt4 has been used.RPM is used as a package manager[17] withPackageKit andZypper for dependency resolving.
For connectivityConnMan is used to manage network connections.[18]wpa_supplicant is used for wifi[19] whileBluez is used for Bluetooth.[20]oFono is used for telephone calls[21] withVoLTE available only for the Sony Xperia 10 II and III.[21]
For command-line access, Dash fromBusyBox is installed by default, whileBash is also available. For remote access,SSH can be enabled in the settings, while root access is also possible.
For development, there isGCC[22],LLVM[23],Autotools[24],Make[25] andMeson[26]. Included languages arePython[27],Ruby[28],Perl[29] andRust.[30] For Game development,SDL is available.[31] The default IDE isQt Creator.[32]
Jolla usesfree and open-source graphics device drivers while theHybris library allows use of proprietary drivers forAndroid.[33][34]
Some key components of Sailfish OS have been licensed proprietary by Jolla from the start and ever since (as of Sailfish OS 5.0 in February 2025). Since September 2025 some closed parts of Sailfish OS have been open sourced, with the announcement that more parts are to be followed.[35]
Firejail (Sailjail) is used for security sandboxing of native applications since version 4.0.1 in 2021.[36]
Sailfish OS can run some Android applications through a proprietary compatibility layer.[37] It is running in anLXC container since Sailfish OS 3.0.1 from January 2019.
Sailfish is targeted at mobile devices.[38] Sailfish can be used as a complete general-purpose Linux OS on devices includingin vehicle infotainment (IVI), navigation, smart TV, desktops and notebooks, yachts, automotive, e-commerce, home appliances, measuring and control equipment, smart building equipment, etc. See theDevices section for devices that run theSailfish OS.
TheSailfish OS SDK was announced at theSlush Helsinki conference in 2012, and thealpha was published in February 2013.[39] The SDK, installation and coding tutorials are available for free download from theSailfish OS website despite the overall license not being open source.[1]
Sailfish SDK usesQt withVirtualBox for development, compiling andemulation purposes, in contrast to thesimulation method.[citation needed] This technique allows compilation on theSailfish OS and full testing of developed software in thevirtual machine, emulating – not simulating – the wholeSailfish OS.[citation needed] This also separates development activities and side effects from everything else running on the host computer, leaving it undisturbed by developments and tests.[40] According to Jolla, development with Sailfish SDK is development onSailfish OS itself; there are no differences between developed software appearance and behaviour in the SDK and on a device runningSailfish OS.[citation needed]
The availability of source code to the SDK allows shaping and rebuilding to companies' or developers' specific needs,[citation needed] creating a context-specific environment that is set once and needs no preparation when the device is booted. The SDK runs on the operating systemsAndroid,32- and64-bit versions ofLinux, 64-bit versions ofOS X, andMicrosoft Windows.[41] It can be used for compiling software forSailfish OS devices from Linux sources. Its general console/terminal mode follows a commonly used standard. Compatible binaries or libraries can also be used.[citation needed]
Sailfish OS uses open source Qt APIs (Qt 5, QtQuick 2 etc.) and a proprietary Sailfish Silica for the UI. Standard Linux APIs are provided.[42]
Sailfish Browser is the default web browser based onGecko and using embedlite (also known as IPCLiteAPI), a lite-weight embedding API from Mozilla. Uses proprietary components.[43]
Officially Jolla declares supporting the following 14 languages for the user interface:Danish,German,English (UK),Spanish,French,Italian,Norwegian,Polish,Portuguese,Finnish,Swedish,Russian,Chinese (mainland), andChinese (Hong Kong). For each of them, the OS has a dedicated keyboard. There are a few more languages which are unofficially supported by community freelancers not under control by Jolla, hence more than 20 languages are supported in total. Additional languages can be installed by skilled users due to the Linux architecture.[44]
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 ofSailfish 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 ofSailfish OS.
Basic details about the early access update:
Sailfish OS has three naming conventions: version number, update number and version name.
| Software version[50][51] | Initial release date[52] | Name[53] |
|---|---|---|
| v0.99.5 | 13 November 2013 | Haaganlampi (only for subscribed developers) |
| v0.99.6 | 11 November 2013 | Idörpottarna (only for subscribed developers) |
| v1.0.0 | 16 November 2013 | Kaajanlampi (initial public release) |
| v1.0.1 | 2 December 2013 | Laadunjärvi ("Update 1") |
| v1.0.2 | 27 December 2013 | Maadajärvi ("Update 2") |
| v1.0.3 | 27 January 2014 | Naamankajärvi ("Update 3") |
| v1.0.4 | 11 March 2014 | Ohijärvi ("Update 4") |
| v1.0.5 | 7 April 2014 | Paarlampi ("Update 5") |
| v1.0.6 | Not released | Raatejärvi ("Update 6"), was merged into v1.0.7 |
| v1.0.7 | 3 June 2014 | Saapunki ("Update 7") |
| v1.0.8 | 3 July 2014 | Tahkalampi ("Update 8") |
| v1.1.0 | 16 September 2014 | Uitukka ("Update 9"), was labelled as "opt-in upgrade" |
| v1.1.1 | 14 December 2014 | Vaarainjärvi ("Update 10") |
| v1.1.2 | 1 February 2015 | Yliaavanlampi ("Update 11") |
| v1.1.3 | Not released | Åkanttrasket ("Update 12"), was merged into v1.1.4 |
| v1.1.4 | 24 March 2015 | Äijänpäivänjärvi ("Update 13") |
| v1.1.5 | Not released | Österviken ("Update 14"), was dropped at release candidate stage |
| v1.1.6 | 27 May 2015 | Aaslakkajärvi ("Update 15") |
| v1.1.7 | 24 June 2015 | Björnträsket ("Update 16") |
| v1.1.9 | 18 August 2015 | Eineheminlampi ("Update 17") |
| v2.0.0 | 19 October 2015 | Saimaa ("Update 18") |
| v2.0.1 | 12 January 2016 | Taalojärvi ("Update 19") |
| v2.0.2 | 13 May 2016 | Aurajoki ("Update 20") |
| v2.0.3 | 6 July 2016 | Espoonjoki ("Update 21"), OS version solely for the Turing Phone |
| v2.0.4 | 4 November 2016 | Fiskarsinjoki ("Update 22") |
| v2.0.5 | 14 December 2016 | Haapajoki ("Update 23") |
| v2.1.0 | 3 February 2017 | Iijoki ("Update 24") |
| v2.1.1 | 15 May 2017 | Jämsänjoki |
| v2.1.2 | 20 September 2017 | Kiiminkijoki |
| v2.1.3 | 6 October 2017 | Kymijoki |
| v2.1.4 | 12 February 2018 | Lapuanjoki |
| v2.2.0 | 30 May 2018 | Mouhijoki |
| v2.2.1 | 31 August 2018 | Nurmonjoki |
| v3.0.0 | 29 October 2018 | Lemmenjoki |
| v3.0.1 | 2 January 2019 | Sipoonkorpi |
| v3.0.2 | 13 March 2019 | Oulanka |
| v3.0.3 | 23 April 2019 | Hossa |
| v3.1.0 | 15 July 2019 | Seitseminen |
| v3.2.0 | 24 October 2019 | Torronsuo |
| v3.2.1 | 5 December 2019 | Nuuksio |
| v3.3.0 | 1 April 2020 | Rokua |
| v3.4.0 | 22 September 2020 | Pallas-Yllästunturi (the final release for theJolla Phone)[54] |
| v4.0.1 | 3 February 2021 | Koli |
| v4.1.0 | 10 May 2021 | Kvarken |
| v4.2.0 | 25 August 2021 | Verla |
| v4.3.0 | 28 October 2021 | Suomenlinna |
| v4.4.0 | 15 March 2022 | Vanha Rauma[55] |
| v4.5.0 | 2 February 2023 | Struven Ketju |
| v4.6.0 | 20 May 2024 | Sauna[56] |
| v5.0.0 | 24 February 2025 | Tampella |
When updating an installed Sailfish OS from an earlier release, for example after device factory reset, there are severalstop releases[57] which must not be skipped and have to be installed before continuing on the path to subsequent releases. These releases provide new functionality that is not compatible with previous releases and have to be traversed in order not to put the Sailfish OS installation into an unstable state.
| Software version | Release date | Name |
|---|---|---|
| v1.0.2.5 | 27 December 2013 | Maadajärvi |
| v1.1.2.16 | 25 February 2015 | Yliaavanlampi |
| v1.1.7.28 | 31 August 2015 | Björnträsket |
| v1.1.9.30 | 22 October 2015 | Eineheminlampi |
| v2.0.0.10 | 3 November 2015 | Saimaa |
| v2.0.5.6 | 22 November 2016 | Haapajoki (only a stop release for some devices, e.g., the Jolla C / Intex Aquafish) |
| v2.2.0.29 | 7 June 2018 | Mouhijoki |
| v3.0.0.8 | 11 November 2018 | Lemmenjoki |
| v3.2.0.12 | 5 November 2019 | Torronsuo |
| v3.4.0.24 | 13 October 2020 | Pallas-Yllästunturi |
| v4.0.1.48 | 16 February 2021 | Koli |
| v4.1.0.24 | 27 May 2021 | Kvarken |
| v4.2.0.21 | 16 September 2021 | Verla |
| v4.3.0.15 | 16 February 2022 | Suomenlinna |
| v4.4.0.72 | 30 September 2022 | Vanha Rauma[58] |
| v4.5.0.25 | 29 February 2024 | Struven ketju[59] |
| v4.6.0.15 | 20 September 2024 | Sauna (the final release for Jolla Tablet, Jolla C, Xperia X, and Gemini PDA)[60] |
| v5.0.0.71 | 30 October 2025 | Tampella[61] |
The Sailfish website publishes[62] an online compendium of knowledge, links and instructions on porting issues.
In addition to its native applications, Sailfish can run some Android applications by installing them from an application store[63] or directly through anAPK file. Supported Android version is 4.1.2 on the originalJolla phone while Android 4.4.4 is supported on the Jolla C, Jolla tablet andXperia X. Android 11 is supported on theXperia XA2,Xperia 10,Xperia 10 II andXperia 10 III with Sailfish 5.0.[64] Android 13 is supported on the Jolla C2,Xperia 10 IV andXperia 10 V with Sailfish 5.0.[65]
Sailfish OS usesAlien Dalvik, aproprietary Android compatibility layer. It does notemulate Android, but instead implements its APIs by adapting theAndroid Open Source Project (AOSP) code to run as an application. Android applications can thus run at native speed without any perceivableslow-down. Sailfish can run both native Sailfish and Android software simultaneously, with the user switching between them on the fly.[66]
Starting with Alien Dalvik 8.1 (also called "Android App Support" since then), it usesLXC[67] to improve security by better isolation, in the same way the open source Android compatibility layerAnbox is doing.
Sailfish OS can be used on any hardware with Linux-kernel support and compatible with the middleware. Community enthusiasts have portedSailfish OS to a number of devices this way.[68] Instead of designation to a specific reference hardware platform, aVirtualBox implementation with theSailfish SDK is available for development on Linux, OS X and Windows operating systems. This virtual machine implementation contains the wholeSailfish OS isolated from local resources and the local OS to enable convenient evaluation of the behaviour and performance of coded or ported software before deployment on real devices.[69][70]
Manufacturers can provide mobile equipment with a licensedSailfish OS, or as open source, or combining both and including their own or the operator's modifications and branding for specific markets or purposes.
This section needs to beupdated. Please help update this article to reflect recent events or newly available information.(May 2024) |
Due to the relative ease of porting and the open source license,Sailfish OS has also been unofficially ported[77] to other 3rd-party devices. The Hardware Adaptation Development Kit for porters has been published and is free.[78] These ports are mostly published on theMaemo andXDA Developers forums, and in theMer wiki a list of the ports is compiled.[79] Due to license restrictions, proprietary parts or extensions such as theAlien Dalvik compatibility layer for Android apps are not included. However they can be added, e.g. when a manufacturer or distributor turns it from the community version into an officially supported version for a particular device. From the originally more than 80 ports, there are about 19 ports that are still in active development – as of March 2019 – meaning they have been updated to Sailfish 3:
To display the ease of portingSailfish OS to other devices, Jolla showed created ports and community ports at events like theMobile World Congress,Slush andFOSDEM:
Sailfish OS is promoted by Jolla and supported by the openSailfish Alliance established in 2011, a group established to unite OEM and ODM manufacturers, chipset providers, operators, application developers and retailers.[109] 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".[110]
The next day, Jolla's CEO Marc Dillon wrote onTwitter 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 theUI andSDK during the Slush event inHelsinki, Finland, on 21–22 November 2012. The alpha stage ofSailfish 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.[111] 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.[112]
In August 2015, version 1.1.9 "Eineheminlampi" was released, which added the main elements of the revampedSailfish OS 2.0 user interface.
Sailfish OS 2.0.0 was launched with the Jolla Tablet, and existing devices, both smartphones and tablets, from Jolla's official distribution channels are supported with upgrade toSailfish OS 2.0.0 and following updates.
In May 2016 Jolla announced the Sailfish Community Device Program, supporting developers and members ofSailfish OS community.[113]
Jolla staff met with members of the Russian technology community to break ground on the new software and promoteSailfish OS, as part of Jolla'sBRICS strategy. As a result of those efforts, on 18 May 2015 the Russian minister of communications Nikolai Nikiforov announced plans to replace Apple's iOS and Google's Android platforms with new software based on Sailfish. He intends it to cover 50% of Russian needs in this area during next ten years, in comparison to the 95% currently covered with western technology.[114][115] The Russian version is currently being developed under the brand nameMobile OS "Aurora" (мобильная ОС «Аврора»),[116] before 2019 as "Sailfish Mobile OS RUS".[117][118] The Chinese multinational technology companyHuawei was in talks with the Russian Ministry of Communications to install Aurora OS on tablets for Russia’s population census by August 2020.[119]Jolla has cut business ties with Russia in 2021.[120]
Sailfish Alliance was the open alliance established in 2011 byJolla company to support theMeeGo ecosystem with new products, services and business opportunities around or using Sailfish OS.
The alliance was seen as a competitor to other groups likeAndroid'sOpen Handset Alliance.[121]
The aim of the Alliance was to offer unique differentiation opportunities and sustainable competitive advantage forOEM andODM manufacturers, chipset providers, operators, application developers, retailers and other interested in sides.[122]
Sailfish Secure was announced in 2015 as an open and secure mobile phone platform, based on Sailfish OS. It was introduced publicly in Barcelona, Spain at the Mobile World Congress on 2 March 2015 where plans for Sailfish Secure were presented.
It was based on a security-hardened version of Sailfish OS 2.0 and SSH's communication encryption and key management platform. It was developed byJolla (the Sailfish OS designer and developer) together withSSH Communications Security (the inventor ofSecure Shell SSH protocol).