Sailfish OS

Sailfish OS is a Linux-based operating system based on open source projects such as Mer and including a closed source UI. The project is being developed by the Finnish company Jolla.

Sailfish OS
DeveloperJolla
Written inQt/QML, C++
OS familyUnix-like (Linux)
Working stateCurrent
Source modelOpen source with added closed-source components and extensions of third parties which can be of other licences as well.[1][2]
Latest release3.3.0.16 (Rokua) / 28 April 2020 (2020-04-28)
Latest preview3.3.0.16 (Rokua) / 23 April 2020 (2020-04-23)
Repository
Marketing targetMobile and general purpose
Available inEnglish for development, SDK & supporting documentation; over 21 national languages versions of UI in user's device
Package managerRPM Package Manager[3]
Platforms32-bit ARM and 64-bit x86
Kernel typeMonolithic (Linux)
UserlandGNU
LicenseFor end-user the EULA defines used open source and other licences components with a component's origin.[1][2]
Preceded byMeeGo by alliance of Nokia & Intel
Official websitesailfishos.org
Hackday with Jolla, Mer and Nemo Mobile in September 2012

The OS is shipped with the Jolla smartphone and tablet (the sale stopped in 2016 but devices are still supported with software updates)[4] and from other vendors licensing the OS.[5] The OS is ported by community enthusiasts to third-party mobile devices including smartphones[6] and tablet computers.[7] Sailfish OS can be used for many kinds of devices.

History and development

The OS is an evolved continuation of the Linux MeeGo OS previously developed by alliance of Nokia and Intel which itself relies on combined Maemo and Moblin. The MeeGo legacy is contained in the Mer core in about 80% of its code; the Mer name thus expands to MEego Reconstructed. This base is extended by Jolla with a custom user interface and default applications. Jolla and MERproject.org follow a meritocratic system to avoid the mistakes that led to the MeeGo project's then-unanticipated discontinuation.

The main elements for Sailfish OS 2.0 include:

  • Technically stronger OS core
  • Improved Android application compatibility
  • Support for ARM and Intel architectures, including the Intel Atom x3 processor, or any platform with kernel useable (settle-able) for MER core stack (also called middleware of Sailfish).
  • 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 on the 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.

Software architecture

The Sailfish OS and the Sailfish software development kit (SDK) are based on the Linux kernel and Mer.[8][9][10] Sailfish OS includes a multi-tasking graphical shell called "Lipstick" built by Jolla on top of the Wayland display server protocol.[11] Jolla uses free and open-source graphics device drivers but the Hybris library allows use of proprietary drivers for Android.[12][13] Jolla's stated goal is for Sailfish to be open source eventually.[2]

Sailfish OS can run Android applications through a proprietary compatibility layer.[14]

Targeted device classes

Sailfish is commonly known to be targeted at mobile devices, but since it inherited around 80% of MeeGo code, Sailfish can be used as a complete general-purpose Linux OS on devices including in vehicle infotainment (IVI), navigation, smart TV, desktops and notebooks, yachts, automotive, e-commerce, home appliances, measuring and control equipment, smart building equipment, etc. See use cases of original MeeGo to compare, and the Devices section for devices that run the Sailfish OS.

Sailfish OS SDK

The Sailfish OS SDK was announced at the Slush Helsinki conference in 2012, and the alpha was published in February 2013.[15] The SDK, installation and coding tutorials are available for free download from the Sailfish OS website despite the overall license not being open source.[1]

Sailfish SDK uses Qt with VirtualBox for development, compiling and emulation purposes, in contrast to the simulation method. This technique allows compilation on the Sailfish OS and full testing of developed software in the virtual machine, emulating  not simulating  the whole Sailfish OS. This also separates development activities and side effects from everything else running on the host computer, leaving it undisturbed by developments and tests.[16] 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 to 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.[17] 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.[18]

Sailfish, Ubuntu and Plasma Active have been cooperating to share common APIs. When successful, this will make the platforms compatible on the API level.[19]

Software overview

Sailfish OS version 2.0.2.51 running on Intex Technologies Aqua Fish

UI supported human languages

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), and Chinese (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.[20]

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.[21]

Version history

Sailfish OS has three naming conventions: version number, update number and version name.

Stop releases

When updating SFOS from earlier releases, for example after device factory reset, there are several stop releases which cannot be skipped and must be taken before continuing on the path to following releases. These releases provide new functionality that is not compatible with previous releases and have to be traversed in order not to lose data or put the OS into an unstable state.

Software versionRelease dateName
v1.0.2.527 December 2013Maadajärvi
v1.1.2.1625 February 2015Yliaavanlampi
v1.1.7.2831 August 2015Björnträsket
v1.1.9.3022 October 2015Eineheminlampi
v2.0.0.103 November 2015Saimaa
v2.2.0.297 June 2018Mouhijoki
v3.0.0.811 November 2018Lemmenjoki

Porting

The Sailfish website publishes[25] an online compendium of knowledge, links and instructions on porting issues.

Using Android software running on Sailfish OS

In addition to its native applications, Sailfish can run most Android applications by installing them from an application store or directly through an APK file. Supported Android versions are 4.1 "Jelly Bean" on the original Jolla phone; 4.4 "Kit-Kat" on the Jolla C, Jolla tablet and Xperia X; 8.1 "Oreo" on Xperia XA2.[26] Problems can arise if these applications were built without following Android standards about controls, which might not display correctly and so become unusable. Built-in proprietary Alien Dalvik plays the role of an Android compatibility layer. It does not emulate, but instead implements Android OS APIs; an approach comparable to that of Wine but less secure than the open source Anbox which is providing better isolation using LXC. Thus, Android software can perform the function calls they require and run at native speed without any perceivable performance slow-down. Sailfish multitasking is always enabled by the nature of Linux, and this allows running both native Sailfish and Android software simultaneously, while the user can switch between them on the fly.[27]

Hardware overview

Advantages of the Mer standard

Sailfish OS can be used on any hardware with Linux-kernel support and compatible with the middleware utilising the Mer core. Community enthusiasts have ported Sailfish OS to a number of devices this way. Instead of designation to a specific reference hardware platform, a VirtualBox implementation with the Sailfish OS SDK is available for development on Linux, OS X and Windows operating systems. This virtual machine implementation contains the whole Sailfish 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.

Jolla devices

Devices from other vendors licensing Sailfish OS

Manufacturers can provide mobile equipment with a licensed Sailfish OS, or as open source, or combining both and including their own or the operator's modifications and branding for specific markets or purposes.

Planned and announced devices

Several devices have been announced with official support for Sailfish OS for future release.

  • Qtech QMP-M1-N IP68 - listed for porting to Aurora by OMP on their website in late 2019 or early 2020
  • MIG T8 - listed for porting to Aurora by OMP on their website in late 2019 or early 2020
  • Inoi 5i pro - listed for porting to Aurora by OMP on their website in late 2019 or early 2020
  • Вектор - listed for porting to Aurora by OMP on their website in late 2019 or early 2020
  • F(x)tec Pro1 - announced with Sailfish OS support; released 2019; no official Sailfish OS support yet
  • Planet Computers Cosmo Communicator - crowdfunded in December 2018; not yet released
  • INOI T10 - announced in 2018 for B2B, not available in retail
  • Inoi R7 Rugged - publicly shown by Jolla,[28] but never seen available
  • Youyota Tablet - crowdfunding in 2017; cancelled in 2018
  • Oulumo Lumo - announced in 2017; not released
  • PuzzlePhone - announced in 2015 with Sailfish OS support; delayed indefinitely in 2017
  • Oysters SF - announced for 2016; not released
  • Ermak OMP - announced in 2016; not released
  • Ermak 50 - announced for Q3/2016; not released
  • Ermak BMR - announced for Q3/2016; not released
  • mi-Fone - announced in 2016 for Q2/2016; not released

Community enthusiasts' ports to devices from other vendors

Due to the relative ease of porting and the open source license, Sailfish OS has also been unofficially ported[29] to other 3rd-party devices. The Hardware Adaptation Development Kit for porters has been published and is free.[30] These ports are mostly published on the Maemo and XDA Developers forums, and in the Mer wiki a list of the ports is compiled.[31] Due to license restrictions, proprietary parts or extensions such as the Alien 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 porting Sailfish OS to other devices, Jolla showed created ports and community ports at events like the Mobile World Congress, Slush and FOSDEM:

Jolla's russian partner Open Mobile Platform (OMP) showed Aurora OS ported to different devices on their YouTube channel:

  • Aquarius Cmp NS220[56]
  • Qtech QMP-M1-N[56]
  • MIG C55[56]
  • Салют ЗЛ24ПМ[57]
  • Blackview BV6000s[58]
  • Aquarius Cmp NS208[59]

OS development status

Sailfish OS is promoted by Jolla 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.[60] 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".[61]

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.[62] 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.[63]

In September 2015, version 1.1.9.28 "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, both smartphones and tablets, from Jolla's official distribution channels are supported with upgrade to Sailfish 2.0 and following updates.

In May 2016 Jolla announced the Sailfish Community Device Program, supporting developers and members of Sailfish OS community.[64]

Aurora OS

Jolla staff met with members of the Russian technology community to break ground on the new software and promote Sailfish OS, as part of Jolla's BRICS 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.[65][66] The Russian version is currently being developed under the brand name Aurora (Avrora) OS.[67][68] The Chinese multinational technology company Huawei may start using Aurora OS as Android’s replacement.[69]

Sailfish Alliance

Sailfish Alliance is the open alliance established in 2011 by Jolla company to support the MeeGo ecosystem with new products, services and business opportunities around or using Sailfish OS, a Linux operating system combining mer with proprietary components from Jolla and other parties, for various purposes and mobile devices. And to continue the development of the Linux MeeGo ecosystem, which the Sailfish OS is a part of.

The alliance is seen as a competitor to other groups like Android's Open Handset Alliance.[70]

In 2011 some of the MeeGo team working at Nokia left, and were funded by Nokia though their "Bridge" program to fund spin-out projects by ex-employees.[71][72][73] The Sailfish Alliance has sought to collaborate between the Finnish software developers, and overseas handset manufacturers, some of which are in China.[74][75] The news media reports that a number of manufacturers in China and India want an alternative to Android.[70][76][77]

The Alliance aims to "unite OEM and ODM manufacturers, chipset providers, operators, application developers and retailers." [78]

Business strategy

The aim of the Alliance is to offer unique differentiation opportunities and sustainable competitive advantage for OEM and ODM manufacturers, chipset providers, operators, application developers, retailers and other interested in sides.[79]

See also

References

  1. "Sailfish End User License Agreement". Jolla. Retrieved 30 November 2014.
  2. "Sailfish License Information". Jolla. Archived from the original on 1 January 2015.
  3. "Packaging Applications for Distribution". SailfishOS.org. SailfishOS.org. Retrieved 24 February 2014.
  4. "Jolla Tablet: Aiming for Closure". Official Jolla Blog. Retrieved 10 February 2016.
  5. "Jolla signs up India's Intex as first Sailfish OS licensee". PCWorld. Retrieved 26 February 2016.
  6. "Sailfish OS on Fairphone 2 - a community driven project". Retrieved 10 February 2016.
  7. "Adaptations/libhybris". mer project wiki. Retrieved 8 September 2016.
  8. "SailfishOS.org". Sailfishos.org.
  9. "What is Sailfish OS? 5 Things to Know". Blog.laptopmag.com.
  10. "SailfishOS.org". Archived from the original on 2 October 2013.
  11. Holwerda, Thom (30 January 2014). "From Providence to Lahaina: the Jolla review". Retrieved 21 April 2014.
  12. "Jolla Brings Wayland Atop Android GPU Drivers". Phoronix.com.
  13. "SailfishOS.org". Archived from the original on 2 November 2013.
  14. "Jolla OS Will Run Android Apps Says CEO Jussi Hurmola". 20 August 2012. Archived from the original on 25 August 2012.
  15. "Sailfish OS SDK Alpha released". Tizen Experts. Retrieved 21 February 2015.
  16. "Developer FAQ". Sailfishos.org. Retrieved 23 March 2015.
  17. "SDK Installation". Sailfishos.org. Retrieved 20 February 2015.
  18. "Software Development Kit". Sailfish OS. Retrieved 21 February 2015.
  19. "[Qt-components] QML component APIs and techniques". Archived from the original on 3 September 2014. Retrieved 20 February 2015.
  20. "Language Settings". Jolla com. Jolla ltd. Retrieved 14 June 2016.
  21. Wachter, Bernd (Aard). "[Official announcement] Early access to SailfishOS releases [released]". together.jolla.com. Retrieved 11 May 2017.
  22. Suomalainen, Aleksi (28 November 2013). "Jolla system updates will be named after a Finnish lake". The Jolla Blog. Retrieved 24 April 2014.
  23. "release notes 2.0.2/Aurajoki". 28 July 2016. Retrieved 5 October 2016.
  24. "Sailfish 3 is here!". 31 October 2018. Retrieved 2 February 2019.
  25. "Porting/Hartmattan - SailfishOS". Archived from the original on 6 October 2014. Retrieved 2 May 2015.
  26. "What Android apps does Sailfish OS support and how do I get them?".
  27. McAllister, Neil (15 November 2013). "Jolla's Android-aping Sailfish OS smartphones to land in November". The Register. Situation Publishing. Retrieved 16 November 2013.
  28. "Sailfish OS at MWC 2018: A Wrap-up!". blog.jolla.com. Retrieved 23 July 2019.
  29. "Devices". reviewjolla.blogspot.it. Retrieved 2 November 2017.
  30. "Hardware Adaptation Development Kit". Hardware Adaptation Development Kit. sailfishos.org. Retrieved 14 April 2016.
  31. merproject.org community, Sledge. "Adaptations/libhybris". wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015.
  32. "Install SailfishOS for idol3". wiki.merproject.org. Retrieved 11 March 2019.
  33. "Install SailfishOS for fp2". wiki.merproject.org. Retrieved 11 March 2019.
  34. https://twitter.com/chenliangchen/status/1114494724264595457. Missing or empty |title= (help)
  35. https://twitter.com/adampigg/status/1144341358028763143. Missing or empty |title= (help)
  36. https://twitter.com/Mister1Magister/status/1143806462528905216. Missing or empty |title= (help)
  37. "Sailfish OS for Moto Z Play". talk.maemo.org. Retrieved 11 March 2019.
  38. "Install SailfishOS for onyx". wiki.merproject.org. Retrieved 11 March 2019.
  39. "Bacon Info". wiki.merproject.org. Retrieved 11 March 2019.
  40. "Install SailfishOS for cheeseburger/dumpling". wiki.merproject.org. Retrieved 17 November 2019.
  41. "sailfishos releases for galaxy a5". github.com. Retrieved 11 March 2019.
  42. "Patcher script that applies the f5321 (Xperia X Compact) compatibility layer on top of official Sailfish X f5121 images". github.com. Retrieved 11 March 2019.
  43. "Install SailfishOS for kenzo". wiki.merproject.org. Retrieved 11 March 2019.
  44. "Install SailfishOS for Vince". wiki.merproject.org. Retrieved 11 March 2019.
  45. "SailfishOS for Redmi 4X". SourceForge. Retrieved 5 August 2019.
  46. "Jolla Sailfish OS: Software Tour". youtube.com. Retrieved 11 March 2019.
  47. "Sailfish OS su Nexus 7". youtube.com. Retrieved 11 March 2019.
  48. "Sailfish OS Running On Nexus 4". youtube.com. Retrieved 11 March 2019.
  49. "Sailfish OS su Nexus 4, Samsung Galaxy S3 e Xiaomi Mi2". youtube.com. Retrieved 11 March 2019.
  50. "Photos and videos, Jolla Phone at MWC2014, day1". reviewjolla.blogspot.com. Retrieved 11 March 2019.
  51. "Sailfish OS 2.0 on LG Google Nexus 5". youtube.com. Retrieved 11 March 2019.
  52. "Hands On: Sailfish 2.0 on the Fairphone 2". youtube.com. Retrieved 11 March 2019.
  53. "Jolla at MWC 2017: wrap up". blog.jolla.com. Retrieved 11 March 2019.
  54. "Sailfish OS at MWC 2018: A Wrap-up!". blog.jolla.com. Retrieved 11 March 2019.
  55. "A call to port Sailfish OS on the "pseudo 3310"". jolla-devices.com. Retrieved 10 October 2019.
  56. "Корпоративная мобильность - средство, а не угроза. Вебинар 20.05.2020". youtube.com. Retrieved 21 May 2020.
  57. "Прототип планшета на SoC Мультикор 1892ВМ14Я под управлением Sailfish Mobile OS RUS". youtube.com. Retrieved 14 November 2019.
  58. "Смартфон Blackview BV6000s под управлением Sailfish Mobile OS RUS". youtube.com. Retrieved 14 November 2019.
  59. "Планшет Aquarius Cmp NS208, под управлением Sailfish Mobile OS RUS (Аврора)". youtube.com. Retrieved 14 November 2019.
  60. "Jolla". Retrieved 19 November 2013.
  61. 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.
  62. Bhushan, Amarendra. "Jolla Sailfish OS Now Supports Android Hardware And Applications". CEOWORLD Magazine. Retrieved 16 September 2013.
  63. "First Jolla Phone with Sailfish OS to launch on 27 November".
  64. "Jolla looks to boost ecosystem with developer initiative - Mobile World Live". mobileworldlive.com. 30 May 2016.
  65. Carrillo, Gabriel. "Russia Launches Its Own Phone Operating System". Phone Tips. Gabriel Carrillo. Archived from the original on 30 May 2015. Retrieved 20 May 2015.
  66. Price, Rob (19 May 2015). "The Russian government is launching its own mobile operating system to take on Apple and Google". Business Insider. Retrieved 29 December 2015.
  67. Russian mobile operating system begins a new stage of development under the brand name 'Avrora'. Rostelekom, 7 Feb. 2019 (in Russ.).
  68. "Rostelecom rebrands local Sailfish OS as Aurora". Telecompaper. 13 February 2019. Retrieved 27 August 2019.
  69. "Huawei in talks to install Russian operating system on tablets for country's population census". 26 August 2019. Retrieved 27 August 2019.
  70. "Jolla signs first Sailfish Alliance partner, as it seeks device OEMs". FierceWirelessEurope.
  71. "Many former Nokia employees start businesses of their own", Helsingin Sanomat
  72. Lunden, Ingrid. "Nokia Bridge: Nokia's Incubator Gives Departing Employees €25k And More To Pursue Ideas That Nokia Has Not". techcrunch.com. techcrunch.com. Retrieved 7 June 2013.
  73. Tung, Liam. "Inside Nokia Bridge: How Nokia funds ex-employees' new start-ups". zdnet.com. 2013 CBS Interactive. Retrieved 7 June 2013.
  74. David Meyer. "Gigaom Jolla's MeeGo revival plans shape up with $260m ecosystem alliance".
  75. Liam Tung. "Jolla: All eyes are on the hardware — but what about the ecosystem?". ZDNet.
  76. Liam Tung. "Jolla gives first look at Sailfish OS as it plans assault on Google, Apple app stores". ZDNet.
  77. Akolawala, Tasneem (4 March 2015). "Jolla, Snapdeal form alliance to promote Sailfish OS among Indian smartphone manufacturers". BGR India. Retrieved 17 December 2018.
  78. "Jolla's Sailfish OS promises multitasking, personalization and 'effortless interaction'". engadget.com. 21 November 2012. Retrieved 26 November 2012.
  79. SailfishOS.org community. "Sailfish Alliance". Sailfish OS Wiki. sailfishos.org. Archived from the original on 2 November 2013. Retrieved 3 April 2013.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.