Rahul Sharma (Editor)

Sailfish OS

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer
  
OS family
  
Written in
  
Qt/QML, C++

Working state
  
Current

Sailfish OS If I needed to leave Android I39d use Sailfish OS AndroidPIT

Source model
  
Open source with added closed-source components and/or extensions of third parties which can be of other licences as well.

Latest release
  
2.0.5.6 (Haapajoki) / November 30, 2016; 3 months ago (2016-11-30)

Sailfishos 2 0 ui 1 1 9 28 preview


Sailfish OS (also styled as SailfishOS or abbreviated to SFOS) is a general purpose Linux used commonly as mobile operating system combining the Linux kernel for a particular hardware platform use, the open-source Mer core stack of middleware, a proprietary UI contributed by Jolla or an open source UI, and other third-party components.

Contents

Sailfish OS What is Sailfish OS 5 Things to Know

Sailfish is being developed by Jolla, the Sailfish and Mer project communities, corporate members of the Sailfish Alliance and various open community members. The Sailfish community members makes development requests and decides development priorities by voting. The Mer project receives contributions from the Jolla and its community, and Mer is the source of middleware for Jolla, thereby continuous development and compatibility of all MER based projects is maintained.

Sailfish OS Why Sailfish is better as a modern OS Here is a comparison Jolla

The OS is shipped with the Jolla smartphone and tablet (the latter has been discontinued) and from other vendors licensing the OS. More or less unofficially the OS is being ported by community enthusiasts to third-party mobile devices including smartphones and tablets.

Sailfish OS httpsuploadwikimediaorgwikipediaenthumbd

Sailfish os 2 0


History and development

Sailfish OS Will Sailfish OS Make Sense In This Android Crazy World TechTreecom

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 lead to the MeeGo project's then-unanticipated discontinuation.

The main elements for Sailfish OS 2.0 include:

Sailfish OS Jolla HandsOn A Closer Look at the First Sailfish OS Smartphone

  • 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 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.
  • Software architecture

    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 drivers for Android. Jolla's stated goal is for Sailfish to be open source eventually.

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

    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 ranging from 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 in at Slush Helsinki conference 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 despite the overall license not being open source.

    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. 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. 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.

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

    UI supported 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.

    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.
  • Version history

    Sailfish OS has three naming conventions: version number, update number and version name. Early Sailfish OS versions were named after a Finnish lake. Each new Version is named after a Finnish river.

  • Sailfish 1.0 Ohijärvi - released 17.2.2014
  • Sailfish 2.0 Eineheminlampi - released 24.09.2015 supporting the Jolla Tablet with x86 plattform and full touch based UI.
  • 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. After reaching the last letter it restarts with the letter A for update 15. There are no native Finnish words beginning with C or D, which could explain the jump at update 17, but from update 18 onwards the rule does no longer hold.

    Porting

    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. In support, 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.
  • As Sailfish is a GNU/Linux-based OS, it is also possible to install other GNU/Linux applications on it, be they sources for compilation or direct binaries.

    Using Android software running on Sailfish OS

    In addition to its native applications, Sailfish can run most Android applications. Problems can arise, if these applications were build without following Android standards about controls, which might not display correctly and so become unusable. Built-in 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. 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 GNU/Linux, and this allows running both native Sailfish and Android software simultaneously, while the user can switch between them on the fly.

    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. A number of devices running ported this way has been created by community enthusiasts. 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 behavior and performance of coded or ported software before deployment on real devices.

    Jolla

  • Jolla Tablet
  • Jolla smartphone
  • Jolla C smartphone
  • 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.

  • Aqua Fish
  • Turing Phone
  • mi-Fone (mobile)
  • PuzzlePhone
  • Oysters SF
  • Ermak BMR
  • Ermak 50
  • INOI R7
  • Jala Accione
  • 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 to other 3rd-party devices. The Hardware Adaptation Development Kit for porters has been published and is free. There are about 50 active portings in progress which follow official Mer standards, and they are listed below ordered by the device's retail name. Due to license restrictions, this doesn't include proprietary parts or extensions such as the Alien Dalvik compatibility layer for Android apps. However it 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.

  • Acer Iconia Tab W500
  • Acer T231H notebook
  • ExoPC
  • Fairphone 2
  • Google Nexus One
  • Google Nexus 4
  • Google Nexus 5
  • Google Nexus 7
  • HP Mini
  • HP Touchpad
  • HTC Desire HD
  • HTC Desire Z
  • Nokia N950 and Nokia N9 - during several presentations given by Jolla
  • Nokia N9 - unofficial, ported by community
  • O2 Joggler
  • OnePlus One
  • OnePlus X
  • 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 and above.)
  • PuzzlePhone
  • Samsung Galaxy S3
  • Samsung Galaxy Nexus
  • Sony Ericsson Xperia Pro codename Iyokan
  • Sony Xperia SP
  • ZTE Open C and
  • Sailfish OS can be installed in following variants of this mobile phone by ZTE:
  • ZTE Kis III (Kis 3),
  • ZTE V811,
  • ZTE V811W (but ATM w/o phone calls),
  • ZTE Blade M (but ATM w/o phone calls),
  • Beeline Smart2,
  • Moche Smart A16 (MEO),
  • Optus Hop Smart,
  • Skinny V811.
  • Xiaomi Mi2
  • Xiaomi Redmi 1S
  • 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. 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.

    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.

    Cooperation and OS support

    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, as an open-source mobile operating system, developed by Finnish phone maker Jolla. He intends it to cover 50% of Russian need in this area during next ten years, in comparison to the 95% currently covered with western technology.

    References

    Sailfish OS Wikipedia